2010Unpublished venueRequires access

Using SMT to Hide Context Switch Times of Large Real-Time Tasksets

Jörg Mische, Sascha Uhrig, Florian Kluge, Theo Ungerer

Open publisher page 6 citations

Abstract

Theoretical real-time research generally neglects context switch times. But in recent embedded applications which consist of dozens of threads with very short execution times, their impact is too serious to be ignored. We present a hard real-time scheduling algorithm that perfectly hides the context switch times of an arbitrary number of threads. It requires a Simultaneous Multithreaded (SMT) processor with at least two hardware thread slots and achieves a utilisation of 100%. The schedulability test is the same as for Earliest Deadline First (EDF) with a context switch time of zero. The hard real-time threads are executed alternately in the two slots of the processor. The inactive slot is used to unload the preceding thread context to memory and to load the subsequent thread context from memory. By hardware the active slot is completely isolated, in order to avoid any influence of the context switch on the execution of the active thread. This isolation is extensive, hence if further SMT thread slots are available, they can be used to execute threads with lower real-time demands. Even the context switch hardware can be re-used for them, enabling a very high throughput of mixed real-time tasksets.

About this research paper

What this paper is about

Theoretical real-time research generally neglects context switch times. But in recent embedded applications which consist of dozens of threads with very short execution times, their impact is too serious to be ignored. We present a hard real-time scheduling algorithm that perfectly hides the context switch times of an arbitrary number of threads. It requires a Simultaneous Multithreaded (SMT) processor with at least two hardware thread slots and achieves a utilisation of 100%. The schedulability test is the same as for Earliest Deadline First (EDF) with a context switch time of zero. The hard real-time threads are executed alternately in the two slots of the processor. The inactive slot is used to unload the preceding thread context to memory and to load the subsequent thread context from memory. By hardware the active slot is completely isolated, in order to avoid any influence of the context switch on the execution of the active thread. This isolation is extensive, hence if further SMT thread slots are available, they can be used to execute threads with lower real-time demands. Even the context switch hardware can be re-used for them, enabling a very high throughput of mixed real-time tasksets.

Why it matters

OpenAlex reports 6 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Theoretical real-time research generally neglects context switch times. But in recent embedded applications which consist of dozens of threads with very short execution times, their impact is too serious to be ignored. We present a hard real-time scheduling algorithm that perfectly hides the context switch times of an arbitrary number of threads. It requires a Simultaneous Multithreaded (SMT) processor with at least two hardware thread slots and achieves a utilisation of 100%. The schedulability test is the same as for Earliest Deadline First (EDF) with a context switch time of zero. The hard real-time threads are executed alternately in the two slots of the processor. The inactive slot is used to unload the preceding thread context to memory and to load the subsequent thread context from memory. By hardware the active slot is completely isolated, in order to avoid any influence of the context switch on the execution of the active thread. This isolation is extensive, hence if further SMT thread slots are available, they can be used to execute threads with lower real-time demands. Even the context switch hardware can be re-used for them, enabling a very high throughput of mixed real-time tasksets.

Key concepts: Thread (computing), Context switch, Computer science, Parallel computing, Scheduling (production processes), Execution time, Yarn, Multithreading

Related papers

Back to paper searchBrowse research topicsOriginal source
Using SMT to Hide Context Switch Times of Large Real-Time Tasksets — Research Paper | ScholarLens