sambamba a runtime system for online adaptive
play

Sambamba : A Runtime System for Online Adaptive Parallelization - PowerPoint PPT Presentation

Sambamba : A Runtime System for Online Adaptive Parallelization Clemens Hammacher Kevin Streit Sebastian Hack Andreas Zeller A well-known challenge Modern Legacy Code Hardware The Problem ... The Problem ... Thread 1 Thread 2 Thread 3


  1. Sambamba : A Runtime System for Online Adaptive Parallelization Clemens Hammacher Kevin Streit Sebastian Hack Andreas Zeller

  2. A well-known challenge Modern Legacy Code Hardware

  3. The Problem ...

  4. The Problem ... Thread 1 Thread 2 Thread 3 Thread 4 Thread 5

  5. The Problem ... Thread 1 Thread 2 Thread 3 Thread 4 Thread 5 ...

  6. The Problem ... Thread 1 Thread 2 Thread 3 Thread 4 Thread 5 Thread 1 Thread 2 ... Thread 3 Thread 4

  7. The Problem ... Thread 1 Thread 2 Thread 3 Thread 4 Thread 5 Thread 1 Thread 2 ... Thread 3 Thread 4 • input dependent • machine dependent

  8. Compile-time Analyses Adaptation Parallelization Execution Profiling • Compute data dependences (using DSA) • Generate program dependence graph • Precompute parallelization candidates

  9. Compile-time Analyses Adaptation Parallelization Execution Profiling • Combine local parallel schedules

  10. Compile-time Analyses Adaptation Parallelization Execution Profiling • JIT -compile code and inject into application • Decide which code variant to execute

  11. Compile-time Analyses Adaptation Parallelization Execution Profiling • Profile execution times • Profile branch probabilities

  12. Compile-time Analyses Adaptation Parallelization Execution Profiling • Analyze gathered profiles • Trigger reassessing parallelization decisions

  13. Compile-time Analyses Adaptation Parallelization Execution Profiling • Analyze gathered profiles • Trigger reassessing parallelization decisions

  14. Compile-time Analyses Adaptation Parallelization Execution Profiling • Analyze gathered profiles • Trigger reassessing parallelization decisions

  15. Speedup on CILK example programs 5X 4X 3X 2X 1X 0X All experiments run on an i7 quad-core with HT.

  16. Clemens Hammacher Kevin Streit Sebastian Hack Compile-time Andreas Zeller Analyses Adaptation Parallelization Sambamba Execution Profiling

Recommend


More recommend