Ocelot: A Dynamic Optimization Framework for Bulk-Synchronous Applications in Heterogeneous Systems

被引:87
|
作者
Diamos, Gregory [1 ]
Kerr, Andrew [1 ]
Yalamanchili, Sudhakar [1 ]
Clark, Nathan
机构
[1] Georgia Inst Technol, Sch Elect & Comp Engn, Atlanta, GA 30332 USA
基金
美国国家科学基金会;
关键词
D O I
10.1145/1854273.1854318
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Ocelot is a dynamic compilation framework designed to map the explicitly data parallel execution model used by NVIDIA CUDA applications onto diverse multithreaded platforms. Ocelot includes a dynamic binary translator from Parallel Thread eXecution ISA (PTX) to many-core processors that leverages the Low Level Virtual Machine (LLVM) code generator to target x86 and other ISAs. The dynamic compiler is able to execute existing CUDA binaries without recompilation from source and supports switching between execution on an NVIDIA GPU and a many-core CPU at runtime. It has been validated against over 130 applications taken from the CUDA SDK, the UIUC Parboil benchmarks [1], the Virginia Rodinia benchmarks [2], the GPU-VSIPL signal and image processing library [3], the Thrust library [4], and several domain specific applications. This paper presents a high level overview of the implementation of the Ocelot dynamic compiler highlighting design decisions and trade-offs, and showcasing their effect on application performance. Several novel code transformations are explored that are applicable only when compiling explicitly parallel applications and traditional dynamic compiler optimizations are revisited for this new class of applications. This study is expected to inform the design of compilation tools for explicitly parallel programming models (such as OpenCL) as well as future CPU and CPU architectures.
引用
收藏
页码:353 / 364
页数:12
相关论文
共 50 条
  • [31] Dynamic-SED for load balancing of parallel applications in heterogeneous systems
    Schnor, B
    Gehrke, M
    [J]. INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED PROCESSING TECHNIQUES AND APPLICATIONS, VOLS I-III, PROCEEDINGS, 1997, : 442 - 449
  • [32] Performance and Optimization Abstractions for Large Scale Heterogeneous Systems in the Cactus/Chemora Framework
    Schnetter, Erik
    [J]. 2013 EXTREME SCALING WORKSHOP (XSW 2013), 2014, : 33 - 42
  • [33] A Dynamic Multi-Objective Optimization Framework for Selecting Distributed Deployments in a Heterogeneous Environment
    Vinek, Elisabeth
    Beran, Peter Paul
    Schikuta, Erich
    [J]. PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON COMPUTATIONAL SCIENCE (ICCS), 2011, 4 : 166 - 175
  • [34] Dynamic Grover search: applications in recommendation systems and optimization problems
    Chakrabarty, Indranil
    Khan, Shahzor
    Singh, Vanshdeep
    [J]. QUANTUM INFORMATION PROCESSING, 2017, 16 (06)
  • [35] Dynamic Grover search: applications in recommendation systems and optimization problems
    Indranil Chakrabarty
    Shahzor Khan
    Vanshdeep Singh
    [J]. Quantum Information Processing, 2017, 16
  • [36] Neural dynamic optimization for control systems - Part III: Applications
    Seong, CY
    Widrow, B
    [J]. IEEE TRANSACTIONS ON SYSTEMS MAN AND CYBERNETICS PART B-CYBERNETICS, 2001, 31 (04): : 502 - 513
  • [37] Adaptive reconfigurable distributed dynamic systems in the control-optimization framework
    Burmakin, EM
    Krassi, BA
    Tuominen, JO
    [J]. PROCEEDINGS OF THE IASTED INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 2004, : 685 - 691
  • [38] Multi-Objective Framework for Dynamic Optimization of OFDMA Cellular Systems
    Chandhar, Prabhu
    Das, Suvra Sekhar
    [J]. IEEE ACCESS, 2016, 4 : 1889 - 1914
  • [39] OpenCV Optimization on Heterogeneous Multi-Core Systems for Gesture Recognition Applications
    Sung, Hsiang-Wei
    Chang, Yuan-Ming
    Wang, Shao-Chung
    Lee, Jenq-Kuen
    [J]. PROCEEDINGS OF 45TH INTERNATIONAL CONFERENCE ON PARALLEL PROCESSING WORKSHOPS (ICPPW 2016), 2016, : 59 - 65
  • [40] A hybrid genetic algorithm for optimization of scheduling workflow applications in heterogeneous computing systems
    Ahmad, Saima Gulzar
    Liew, Chee Sun
    Munir, Ehsan Ullah
    Fong, Ang Tan
    Khan, Samee U.
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2016, 87 : 80 - 90