1 / 23

Soft Real-Time Scheduling on Simultaneous Multithreaded Processors

Soft Real-Time Scheduling on Simultaneous Multithreaded Processors. Outline. Introduction Resource Sharing Algorithms Co-Scheduling Algorithms Experimental Results Conclusions. What is SMT?. Simultaneous multithreading (SMT) combines wide issue superscalar with multithreading,

kaori
Download Presentation

Soft Real-Time Scheduling on Simultaneous Multithreaded Processors

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Soft Real-Time Scheduling on Simultaneous Multithreaded Processors

  2. Outline • Introduction • Resource Sharing Algorithms • Co-Scheduling Algorithms • Experimental Results • Conclusions

  3. What is SMT? • Simultaneous multithreading (SMT) • combines wide issue superscalar with multithreading, • issues instructions from several threads simultaneously.

  4. SMT vs. CMP SMT CMP

  5. Introduction • SMT (Simultaneous Multithreading) improves processor throughput by processing instructions form multiple threads each cycle. • This paper concerns the use of SMT processors for soft real-time multimedia applications. • On Scheduling: • 1. determine which tasks to co-schedule • 2. how to partition processor resources among co-scheduled tasks

  6. Resource Sharing Algorithms • Two classes: • Maximize overall throughput • Guarantee a level of performance for all threads

  7. Resource Sharing Algorithms • Throughput-driven resource sharing • Resource sharing with performance guarantees • Resources controlled by threaded-specific resource sharing algorithms

  8. Co-Scheduling Algorithms • Design space • Prediction • Partition algorithms • Global scheduling algorithms

  9. Design space for co-scheduling algorithms • Partition vs. global scheduling algorithms • Partitioning approach provides for admission control • Symbiosis-aware vs. symbiosis-oblivious algorithms • Symbiosis factor = ∑ (realized IPC of jobi / single threaded IPC of jobi) N i=1

  10. Benefit of symbiosis-aware scheduling

  11. τ1 & τ3 τ2 & τ4 • EDF schedule • Symbiosis-aware schedule 0 50 100 150 200 τ1 & τ2 τ3 & τ4 0 50 100 150 200

  12. Predicting execution time, utilization, and symbiosis • To predict execution time/utilization, we need to predict both the IPC and the number of instructions • Take average job IPC and average instruction count as the prediction • To predict symbiosis, task IPCs in single-threaded mode is also required.

  13. Partitioning algorithms partitioning (PART) Symbiosis oblivious (NOSYM) Symbiosis aware (SYM) Dynamic (DYN) Static (STAT) Dynamic (DYN) 3 Base (b) Enhanced (e) Base (b) Enhanced (e) 5 1 2 4

  14. PART-NOSYM-DYN-b • First-fit-decreasing-utilization & EDF admission test • PART-NOSYM-DYN-e • Modifies the admission test • Simulates the schedule for a hyperperiod • PART-NOSYM-STAT • FFDU & EDF admission test • It does not need additional approximations for predicting execution time

  15. PART-SYM-DYN-b • Maximizes average symbiosis among tasks in different partition • PART-SYM-DYN-e • Corrects for the utilization approximation in PART-SYM-DYN-b

  16. Global scheduling algorithms Global scheduling (GLOB) Symbiosis oblivious (NOSYM) Symbiosis aware (SYM) PAIIN (dynamic) US (dynamic) PAIIN (dynamic) US (dynamic) 6 7 8 9

  17. GLOB-NOSYM-PLAIN • EDF • GLOB-NOSYM-US • Giving the highest priority to high utilization tasks in the task set • GLOB-SYM-PLAIN • Slightly more complex than EDF • GLOB-SYM-US • Defaults to GLOB-NOSYM-US, if Ui>N/(2N-1) for Ti • Defaults to GLOB-SYM-PLAIN, otherwise

  18. Experimental Results - synthetic • metric : success ratio = the percentage of all generated task-sets successfully scheduled by an algorithm • Best algorithm : GLOB-SYM-US

  19. Experimental Results - real • metric : critical serial utilization (CSU) • Serial utilization (S) = ΣCi/Pi • Ci = computation time of τi in single-threaded mode • Pi = period of τi • Best algorithm : GLOB-SYM-US

  20. Conclusions • In terms of schedulability, the best algorithm uses global scheduling, exploits symbiosis, prioritizes high utilization tasks, and uses dynamic resource sharing. • Partitioning algorithm that utilizes static resource sharing • provides a strict admission control • Requires less profiling

  21. Conclusions • Earliest deadline first global algorithm • Does not provide a strict admission control • Requires no profiling • individual design decision • Dynamic resource sharing • Partitioning algorithm • Symbiosis-awareness

More Related