ABSTRACT
Context switching imposes a performance penalty on threads in a multitasking environment. The source of this penalty is both direct overhead due to running the context switch code and indirect overhead due to perturbation of caches. We calculate indirect overhead by measuring the running time of tasks that use context switching and subtracting the direct overhead. We also measure the indirect overhead impact on the running time of tasks due to processor interrupt servicing. Experiment results are presented for the Linux kernel running on an ARM processor based mobile device platform.
- D. Brash. The ARM Architecture Version 6. ARM White Paper, Jan 2002.Google Scholar
- M. Co and K. Skadron. The Effects of Context Switching on Branch Predictor Performance. In 2001 IEEE International Symposium on Performance Analysis of Systems and Software, pages 77--84, Nov 2001.Google Scholar
- L4 Performance, http://ertos.nicta.com.au/research/14/performance.pm1.Google Scholar
- L. W. McVoy and C. Staelin. Imbench: Portable Tools for Performance Analysis. In USENIX Annual Technical Conference, pages 279--294, 1996. Google ScholarDigital Library
- J. C. Mogul and A. Borg. The Effect of Context Switches on Cache Performance. In Proceedings of the fourth International Conference on Architectural Support for Programming Languages and Operating Systems, pages 75--84, New York, NY, USA, 1991. ACM Press. Google ScholarDigital Library
- J. K. Ousterhout. Why Aren't Operating Systems Getting Faster As Fast as Hardware? In USENIX Summer, pages 247--256, 1990.Google Scholar
- J. Stärner and L. Asplund. Measuring the Cache Interference Cost in Preemptive Real-Time Systems. In Proceedings of the 2004 ACM SIGPLAN/SIGBED Conference on Languages, Compilers, and Tools for Embedded Systems, pages 146--154, New York, NY, USA, 2004. ACM Press. Google ScholarDigital Library
- Texas Instruments OMAP Platform, http://focus.ti.com/omap/docs/omaphomepage.tsp.Google Scholar
- A. Wiggins, H. Tuch, V. Uhlig, and G. Heiser. Implementation of Fast Address-Space Switching and TLB Sharing on the Strong ARM Processor. In 8th Asia-Pacific Computer Systems Architecture Conference, Sep 2003.Google Scholar
Index Terms
- Context switch overheads for Linux on ARM platforms
Recommendations
Context switch overheads on mobile device platforms
ecs'07: Experimental computer science on Experimental computer scienceWhen threads use context switching, they incur an overhead in addition to the minimum required running time. The source of this overhead is both direct overhead due to running the context switch code and indirect overhead due to perturbation of caches. ...
Adapting Linux for mobile platforms: An empirical study of Android
ICSM '12: Proceedings of the 2012 IEEE International Conference on Software Maintenance (ICSM)To deliver a high quality software system in a short release cycle time, many software organizations chose to reuse existing mature software systems. Google has adapted one of the most reused computer operating systems (i.e., Linux) into an operating ...
Hotswapping Linux kernel modules
Contemporary operating system kernels are able to improve their functionality by installing kernel extensions at runtime. However, when an existing kernel extension needs to be upgraded, it must be completely removed before the new kernel extension is ...
Comments