skip to main content
DOE PAGES title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: From Physics Model to Results: An Optimizing Framework for Cross-Architecture Code Generation

Abstract

Starting from a high-level problem description in terms of partial differential equations using abstract tensor notation, the Chemora framework discretizes, optimizes, and generates complete high performance codes for a wide range of compute architectures. Chemora extends the capabilities of Cactus, facilitating the usage of large-scale CPU/GPU systems in an efficient manner for complex applications, without low-level code tuning. Chemora achieves parallelism through MPI and multi-threading, combining OpenMP and CUDA. Optimizations include high-level code transformations, efficient loop traversal strategies, dynamically selected data and instruction cache usage strategies, and JIT compilation of GPU code tailored to the problem characteristics. The discretization is based on higher-order finite differences on multi-block domains. Chemora's capabilities are demonstrated by simulations of black hole collisions. This problem provides an acid test of the framework, as the Einstein equations contain hundreds of variables and thousands of terms.

Authors:
 [1];  [2];  [3];  [4];  [5];  [1];  [6];  [7];  [6]
  1. Applications Department, Poznań Supercomputing & Networking Center, Poznań, Poland, Poznań University of Technology, Poznań, Poland
  2. Max-Planck-Institut für Gravitationsphysik, Albert-Einstein-Institut, Potsdam, Germany
  3. Center for Computation & Technology, Louisiana State University, Baton Rouge, LA, USA, Division of Electrical & Computer Engineering, Louisiana State University, Baton Rouge, LA, USA
  4. Center for Computation & Technology, Louisiana State University, Baton Rouge, LA, USA, Division of Computer Science, Louisiana State University, Baton Rouge, LA, USA
  5. Applications Department, Poznań Supercomputing & Networking Center, Poznań, Poland
  6. Center for Computation & Technology, Louisiana State University, Baton Rouge, LA, USA
  7. Center for Computation & Technology, Louisiana State University, Baton Rouge, LA, USA, Perimeter Institute for Theoretical Physics, Waterloo, ON, Canada, Department of Physics, University of Guelph, Guelph, ON, Canada
Publication Date:
Sponsoring Org.:
USDOE
OSTI Identifier:
1197890
Grant/Contract Number:  
FG02-04ER46136
Resource Type:
Published Article
Journal Name:
Scientific Programming
Additional Journal Information:
Journal Name: Scientific Programming Journal Volume: 21 Journal Issue: 1-2; Journal ID: ISSN 1058-9244
Publisher:
Hindawi Publishing Corporation
Country of Publication:
Egypt
Language:
English

Citation Formats

Blazewicz, Marek, Hinder, Ian, Koppelman, David M., Brandt, Steven R., Ciznicki, Milosz, Kierzynka, Michal, Löffler, Frank, Schnetter, Erik, and Tao, Jian. From Physics Model to Results: An Optimizing Framework for Cross-Architecture Code Generation. Egypt: N. p., 2013. Web. doi:10.1155/2013/167841.
Blazewicz, Marek, Hinder, Ian, Koppelman, David M., Brandt, Steven R., Ciznicki, Milosz, Kierzynka, Michal, Löffler, Frank, Schnetter, Erik, & Tao, Jian. From Physics Model to Results: An Optimizing Framework for Cross-Architecture Code Generation. Egypt. doi:10.1155/2013/167841.
Blazewicz, Marek, Hinder, Ian, Koppelman, David M., Brandt, Steven R., Ciznicki, Milosz, Kierzynka, Michal, Löffler, Frank, Schnetter, Erik, and Tao, Jian. Tue . "From Physics Model to Results: An Optimizing Framework for Cross-Architecture Code Generation". Egypt. doi:10.1155/2013/167841.
@article{osti_1197890,
title = {From Physics Model to Results: An Optimizing Framework for Cross-Architecture Code Generation},
author = {Blazewicz, Marek and Hinder, Ian and Koppelman, David M. and Brandt, Steven R. and Ciznicki, Milosz and Kierzynka, Michal and Löffler, Frank and Schnetter, Erik and Tao, Jian},
abstractNote = {Starting from a high-level problem description in terms of partial differential equations using abstract tensor notation, the Chemora framework discretizes, optimizes, and generates complete high performance codes for a wide range of compute architectures. Chemora extends the capabilities of Cactus, facilitating the usage of large-scale CPU/GPU systems in an efficient manner for complex applications, without low-level code tuning. Chemora achieves parallelism through MPI and multi-threading, combining OpenMP and CUDA. Optimizations include high-level code transformations, efficient loop traversal strategies, dynamically selected data and instruction cache usage strategies, and JIT compilation of GPU code tailored to the problem characteristics. The discretization is based on higher-order finite differences on multi-block domains. Chemora's capabilities are demonstrated by simulations of black hole collisions. This problem provides an acid test of the framework, as the Einstein equations contain hundreds of variables and thousands of terms.},
doi = {10.1155/2013/167841},
journal = {Scientific Programming},
number = 1-2,
volume = 21,
place = {Egypt},
year = {2013},
month = {1}
}

Journal Article:
Free Publicly Available Full Text
Publisher's Version of Record
DOI: 10.1155/2013/167841

Save / Share: