Cargando…

Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators

Recent developments in modern computational accelerators like Graphics Processing Units (GPUs) and coprocessors provide great opportunities for making scientific applications run faster than ever before. However, efficient parallelization of scientific code using new programming tools like CUDA requ...

Descripción completa

Detalles Bibliográficos
Autores principales: Wang, Wei, Xu, Lifan, Cavazos, John, Huang, Howie H., Kay, Matthew
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Public Library of Science 2014
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3907428/
https://www.ncbi.nlm.nih.gov/pubmed/24497950
http://dx.doi.org/10.1371/journal.pone.0086484
_version_ 1782301600014925824
author Wang, Wei
Xu, Lifan
Cavazos, John
Huang, Howie H.
Kay, Matthew
author_facet Wang, Wei
Xu, Lifan
Cavazos, John
Huang, Howie H.
Kay, Matthew
author_sort Wang, Wei
collection PubMed
description Recent developments in modern computational accelerators like Graphics Processing Units (GPUs) and coprocessors provide great opportunities for making scientific applications run faster than ever before. However, efficient parallelization of scientific code using new programming tools like CUDA requires a high level of expertise that is not available to many scientists. This, plus the fact that parallelized code is usually not portable to different architectures, creates major challenges for exploiting the full capabilities of modern computational accelerators. In this work, we sought to overcome these challenges by studying how to achieve both automated parallelization using OpenACC and enhanced portability using OpenCL. We applied our parallelization schemes using GPUs as well as Intel Many Integrated Core (MIC) coprocessor to reduce the run time of wave propagation simulations. We used a well-established 2D cardiac action potential model as a specific case-study. To the best of our knowledge, we are the first to study auto-parallelization of 2D cardiac wave propagation simulations using OpenACC. Our results identify several approaches that provide substantial speedups. The OpenACC-generated GPU code achieved more than [Image: see text] speedup above the sequential implementation and required the addition of only a few OpenACC pragmas to the code. An OpenCL implementation provided speedups on GPUs of at least [Image: see text] faster than the sequential implementation and [Image: see text] faster than a parallelized OpenMP implementation. An implementation of OpenMP on Intel MIC coprocessor provided speedups of [Image: see text] with only a few code changes to the sequential implementation. We highlight that OpenACC provides an automatic, efficient, and portable approach to achieve parallelization of 2D cardiac wave simulations on GPUs. Our approach of using OpenACC, OpenCL, and OpenMP to parallelize this particular model on modern computational accelerators should be applicable to other computational models of wave propagation in multi-dimensional media.
format Online
Article
Text
id pubmed-3907428
institution National Center for Biotechnology Information
language English
publishDate 2014
publisher Public Library of Science
record_format MEDLINE/PubMed
spelling pubmed-39074282014-02-04 Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators Wang, Wei Xu, Lifan Cavazos, John Huang, Howie H. Kay, Matthew PLoS One Research Article Recent developments in modern computational accelerators like Graphics Processing Units (GPUs) and coprocessors provide great opportunities for making scientific applications run faster than ever before. However, efficient parallelization of scientific code using new programming tools like CUDA requires a high level of expertise that is not available to many scientists. This, plus the fact that parallelized code is usually not portable to different architectures, creates major challenges for exploiting the full capabilities of modern computational accelerators. In this work, we sought to overcome these challenges by studying how to achieve both automated parallelization using OpenACC and enhanced portability using OpenCL. We applied our parallelization schemes using GPUs as well as Intel Many Integrated Core (MIC) coprocessor to reduce the run time of wave propagation simulations. We used a well-established 2D cardiac action potential model as a specific case-study. To the best of our knowledge, we are the first to study auto-parallelization of 2D cardiac wave propagation simulations using OpenACC. Our results identify several approaches that provide substantial speedups. The OpenACC-generated GPU code achieved more than [Image: see text] speedup above the sequential implementation and required the addition of only a few OpenACC pragmas to the code. An OpenCL implementation provided speedups on GPUs of at least [Image: see text] faster than the sequential implementation and [Image: see text] faster than a parallelized OpenMP implementation. An implementation of OpenMP on Intel MIC coprocessor provided speedups of [Image: see text] with only a few code changes to the sequential implementation. We highlight that OpenACC provides an automatic, efficient, and portable approach to achieve parallelization of 2D cardiac wave simulations on GPUs. Our approach of using OpenACC, OpenCL, and OpenMP to parallelize this particular model on modern computational accelerators should be applicable to other computational models of wave propagation in multi-dimensional media. Public Library of Science 2014-01-30 /pmc/articles/PMC3907428/ /pubmed/24497950 http://dx.doi.org/10.1371/journal.pone.0086484 Text en © 2014 Wang et al http://creativecommons.org/licenses/by/4.0/ This is an open-access article distributed under the terms of the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original author and source are properly credited.
spellingShingle Research Article
Wang, Wei
Xu, Lifan
Cavazos, John
Huang, Howie H.
Kay, Matthew
Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title_full Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title_fullStr Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title_full_unstemmed Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title_short Fast Acceleration of 2D Wave Propagation Simulations Using Modern Computational Accelerators
title_sort fast acceleration of 2d wave propagation simulations using modern computational accelerators
topic Research Article
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3907428/
https://www.ncbi.nlm.nih.gov/pubmed/24497950
http://dx.doi.org/10.1371/journal.pone.0086484
work_keys_str_mv AT wangwei fastaccelerationof2dwavepropagationsimulationsusingmoderncomputationalaccelerators
AT xulifan fastaccelerationof2dwavepropagationsimulationsusingmoderncomputationalaccelerators
AT cavazosjohn fastaccelerationof2dwavepropagationsimulationsusingmoderncomputationalaccelerators
AT huanghowieh fastaccelerationof2dwavepropagationsimulationsusingmoderncomputationalaccelerators
AT kaymatthew fastaccelerationof2dwavepropagationsimulationsusingmoderncomputationalaccelerators