1 / 8

System Software for Parallel Computing

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.

bern
Download Presentation

System Software for Parallel Computing

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. System Software for Parallel Computing

  2. Two System Software Components • Hard to do the innovation • Replacement for Tradition Optimizing Compilers • Replacement for conventional large monolithic OS

  3. Quick View of Optimizing Compiler

  4. Autotunersvs Traditional Compilers • Quality of Generated Code • Which Optimizations to perform • Choosing parameters for the optimizations • Selecting from among alternative implementations • Resulting Optimizing Space

  5. 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

  6. 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

  7. 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

  8. 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

More Related