Automatic generation of multicore chemical kernels

John C. Linford, John Michalakes, Manish Vachharajani, Adrian Sandu

Research output: Contribution to journalArticlepeer-review

13 Scopus citations

Abstract

This work presents the Kinetics PreProcessor: Accelerated (KPPA), a general analysis and code generation tool that achieves significantly reduced time-to-solution for chemical kinetics kernels on three multicore platforms: NVIDIA GPUs using CUDA, the Cell Broadband Engine, and Intel Quad-Core Xeon CPUs. A comparative performance analysis of chemical kernels from WRF-Chem and the Community Multiscale Air Quality Model (CMAQ) is presented for each platform in double and single precision on coarse and fine grids. We introduce the multicore architecture parameterization that KPPA uses to generate a chemical kernel for these platforms and describe a code generation system that produces highly tuned platform-specific code. Compared to state-of-the-art serial implementations, speedups exceeding 25× are regularly observed, with a maximum observed speedup of 41.1× in single precision.

Original languageEnglish
Article number5473221
Pages (from-to)119-131
Number of pages13
JournalIEEE Transactions on Parallel and Distributed Systems
Volume23
Issue number1
DOIs
StatePublished - 2011

Keywords

  • CMAQ.
  • Cell Broadband Engine
  • KPPA
  • Kinetics PreProcessor
  • NVIDIA CUDA
  • OpenMP
  • WRF-Chem
  • atmospheric modeling
  • chemical kinetics
  • multicore

Fingerprint

Dive into the research topics of 'Automatic generation of multicore chemical kernels'. Together they form a unique fingerprint.

Cite this