J.J. Silva-Cuevas , M. Zych , K. Peyen , I. Kabadshow , M. Lobet
{"title":"Towards a complete task-based implementation of a 3D particle-in-cell code: Performance studies and benchmarks","authors":"J.J. Silva-Cuevas , M. Zych , K. Peyen , I. Kabadshow , M. Lobet","doi":"10.1016/j.cpc.2025.109647","DOIUrl":null,"url":null,"abstract":"<div><div>This article investigates different programming models for miniPIC, a Particle-In-Cell mini-app, to improve overall scalability. An innovative implementation of a fully asynchronous task-based implementation of a 3D Particle-In-Cell code miniPIC is presented for the first time. The task-based model has been specially implemented in the particle-in-cell code via the backend OpenMP and the library Eventify. Four physical studies were selected as benchmarks: thermal plasma, plasma beam diffusion, a laser colliding with a plasma beam sphere, and thermal plasma with an imbalanced artificial operator. Besides, different parametric studies were designed to measure the scalability of the implementation to varying numbers of cores and various physical conditions. The current parametric studies were performed in an Intel cascade lake-based machine and an AMD EPYC-based machine to measure scalability performance on different architectures.</div></div>","PeriodicalId":285,"journal":{"name":"Computer Physics Communications","volume":"313 ","pages":"Article 109647"},"PeriodicalIF":7.2000,"publicationDate":"2025-04-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computer Physics Communications","FirstCategoryId":"101","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0010465525001493","RegionNum":2,"RegionCategory":"物理与天体物理","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0
Abstract
This article investigates different programming models for miniPIC, a Particle-In-Cell mini-app, to improve overall scalability. An innovative implementation of a fully asynchronous task-based implementation of a 3D Particle-In-Cell code miniPIC is presented for the first time. The task-based model has been specially implemented in the particle-in-cell code via the backend OpenMP and the library Eventify. Four physical studies were selected as benchmarks: thermal plasma, plasma beam diffusion, a laser colliding with a plasma beam sphere, and thermal plasma with an imbalanced artificial operator. Besides, different parametric studies were designed to measure the scalability of the implementation to varying numbers of cores and various physical conditions. The current parametric studies were performed in an Intel cascade lake-based machine and an AMD EPYC-based machine to measure scalability performance on different architectures.
期刊介绍:
The focus of CPC is on contemporary computational methods and techniques and their implementation, the effectiveness of which will normally be evidenced by the author(s) within the context of a substantive problem in physics. Within this setting CPC publishes two types of paper.
Computer Programs in Physics (CPiP)
These papers describe significant computer programs to be archived in the CPC Program Library which is held in the Mendeley Data repository. The submitted software must be covered by an approved open source licence. Papers and associated computer programs that address a problem of contemporary interest in physics that cannot be solved by current software are particularly encouraged.
Computational Physics Papers (CP)
These are research papers in, but are not limited to, the following themes across computational physics and related disciplines.
mathematical and numerical methods and algorithms;
computational models including those associated with the design, control and analysis of experiments; and
algebraic computation.
Each will normally include software implementation and performance details. The software implementation should, ideally, be available via GitHub, Zenodo or an institutional repository.In addition, research papers on the impact of advanced computer architecture and special purpose computers on computing in the physical sciences and software topics related to, and of importance in, the physical sciences may be considered.