1 / 28

Scalability-Based Manycore Partitioning

Scalability-Based Manycore Partitioning. PACT 2012. Hiroshi Sasaki Kyushu University Koji Inoue Kyushu University. Teruo Tanimoto The University of Tokyo Hiroshi Nakamura The University of Tokyo. Presented by Kim, Jong- yul 2013. 7. 31. Contents. Motivation SBMP Scheduler

prem
Télécharger la présentation

Scalability-Based Manycore Partitioning

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. Scalability-BasedManycore Partitioning PACT 2012 Hiroshi Sasaki Kyushu University Koji Inoue Kyushu University TeruoTanimoto The University of Tokyo Hiroshi Nakamura The University of Tokyo Presented by Kim, Jong-yul 2013. 7. 31

  2. Contents • Motivation • SBMP Scheduler • Scalability Prediction • Core Partition • Core Donation • Phase Change Detection • Evaluation Results • Conclusions

  3. Prospects APP2 APP3 • Limitation of increasing F • ILP, power wall, transistor scaling • Multi-core, many-core system System APP1 … Multi-threaded multiprogramming

  4. Problem • Traditional OS Assign equal CPU to all running apps • Programs have different Scalability Linux: 2.04 Best Partitioning: 1.38 Performance Average Workloads Workloads Average Clock cycles when multiprogrammed with others NormalizedTurnaroundTime Clock cycles when solo-run

  5. Experimental System allocation unit

  6. SBMP Scheduler Scalability Prediction Core Partitioning Core Donation Phase Change Detection

  7. Overview • Assign cores considering scalability of applications • SBMP: Scalability-Based ManycorePartitioning scheduler Detect Scalability Prediction Core Partitioning Core Donation Steady Partitioning

  8. Detect Scalability Prediction Core Partitioning Core Donation Steady

  9. Scalability Prediction (1/2) • Cumulative retired instructions per second (IPS) Little effect from # of cores Total # of instructions Workloads 8% Total # of instructions

  10. Scalability Prediction (2/2) • If obtained directly… • Warm up branch prediction & cache system • Need 8 allocations (6, 12, 18, …, 48) • Simple model • 3 coefficients (α,β, γ) • 3 Samplings: 1 single core + 2 different configurations Over 3 seconds Performance Amdahl’s law Overhead caused by additional core

  11. Detect Scalability Prediction Core Partitioning Core Donation Steady

  12. Core Partitioning (1/2) High Relative performance Medium # of cores Relative performance Low # of cores

  13. Core Partitioning (2/2) • Scalability-tablefor each program • Key -value • Key : # of cores • Value : performance with [key] cores • Goal • Hill climbing algorithm Near optimal assignment Multiprogrammed Single-run

  14. Detect Scalability Prediction Core Partitioning Core Donation Steady

  15. Core Donation • 1 program for each processor die • CPU utilization CPU utilization ratio < Threshold (70%) Donor Core1 Program1 Donee Core2 Program2 Program2 time • Donee: most beneficial one • Utilization, scalability • Priority: Donee < Donor • Finer granularity • Processor die (6 cores)

  16. Detect Scalability Prediction Core Partitioning Core Donation Steady

  17. Detect Scalability Prediction Core Partitioning Core Donation Steady

  18. Detection (1/2) • Creation or termination of program • Phase transition detected in any of the programs Performance

  19. Detection (2/2) – Phase Prediction • SBMP scheduler monitors performanceevery epoch (2.5s) • Threshold ( > or < Scalability Prediction Detect Core Partitioning Core Donation Steady

  20. Evaluation Core Partitioning Phase Prediction Core Donation Overall Performance

  21. Experimental System • PARSEC benchmark suite 2.1

  22. Core Partitioning • SBMP-base • Scalability Prediction + Core Partitioning • Single-phase application (2 Medium + 2 Low) Linux: 1.88 SBMP-base: 1.54 Performance Average Workloads Workloads

  23. Phase Prediction • SBMP-PP (Phase Prediction) • SBMP-base + Phase Prediction • Multiple-phase application Linux: 1.89 SBMP-base: 2.09 SBMP-PP: 1.77 Workloads

  24. Core Donation • SBMP-CD (Core Donation) • SBMP-PP + Core Donation • 2 low CPU utilization + 2 normal Linux: 2.06 SBMP-PP: 1.68 SBMP-CD: 1.60 Workloads

  25. Overall Results Linux: 1.83 SBMP-base: 1.99 SBMP-PP: 1.70 (8%) SBMP-CD: 1.65 (11%) • All programs 72 Workloads

  26. Conclusions • OS scheduling on many core system • Multiple Multi-threaded applications • SBMP Scheduler • Dynamic scalability prediction + Core partitioning • Phase recognition • Core Donation • 11% over Linux

  27. QnA

  28. Hill Climbing Algorithm • Find near optimal solution • Start with arbitrary solution • Incrementally changing a single element

More Related