System software for parallel computing
Download
1 / 8

System Software for Parallel Computing - PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on

System Software for Parallel Computing. Two System Software Components Hard to do the innovation Replacement for Tradition Optimizing Compilers Replacement for conventional large monolithic OS. Quick View of Optimizing Compiler. Autotuners vs Traditional Compilers.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' System Software for Parallel Computing' - bern


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  • Two System Software Components

  • Hard to do the innovation

  • Replacement for Tradition Optimizing Compilers

  • Replacement for conventional large monolithic OS



Autotuners vs traditional compilers
Autotunersvs Traditional Compilers

  • Quality of Generated Code

  • Which Optimizations to perform

  • Choosing parameters for the optimizations

  • Selecting from among alternative implementations

  • Resulting Optimizing Space


Difficulty of enhancing modern compilers
Difficulty of Enhancing Modern Compilers

  • Constraints of Modern Compilers

  • Million lines of code

  • New optimizations are difficult to add

  • Large investment

  • Functional Correctness is more imp than output code quality

  • Hence peak performance may still require handcrafting of the program


Promise of search based autotuners
Promise of Search Based Autotuners

  • Search based technique used in several areas of code generation

  • Generates many variants of a given kernel

  • Benchmarks each variant by running on the target platform

  • Time to complete on the target platform ( tries many or all optimization switches )

  • Often find non-intuitive loop unrolling or register blocking factors that lead to better performance


Recent autotuners
Recent Autotuners

Earlier Auto -Tuners were used concentrate on non-intuitive loop unrolling

Recent Auto-Tuners are applicable for general-purpose parallel programs

Auto-Tuning Cycle

Auto-Tuners as Libraries

Auto-Tuners as Stand-Alone Application

Integrating Auto-Tuners as part of Operating System

Compiler Extensions for Auto-Tuning

Note: Taken from More recent paper " Auto-Tuning Support for Manycore applications - Perspectives for Operating Systems and Compilers


References
References

  • High-Performance Compilers for Parallel Computing by Michael Wolfe

  • Optimizing Compilers for Modern Architectures: A Dependence-based Approach by Randy Allen

  • C.A. Schaefer, V.Pankratius and W.F.Ticy. Atune-IL: An instrumentation language for autotuning parallel applications. Technical Report, University of Karlsruhe, 2009


ad