Julia中的高性能后端无关材料点法求解器

IF 5.3 1区 工程技术 Q1 COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS
Zenan Huo , Yury Alkhimenkov , Michel Jaboyedoff , Yury Podladchikov , Ludovic Räss , Emmanuel Wyser , Gang Mei
{"title":"Julia中的高性能后端无关材料点法求解器","authors":"Zenan Huo ,&nbsp;Yury Alkhimenkov ,&nbsp;Michel Jaboyedoff ,&nbsp;Yury Podladchikov ,&nbsp;Ludovic Räss ,&nbsp;Emmanuel Wyser ,&nbsp;Gang Mei","doi":"10.1016/j.compgeo.2025.107189","DOIUrl":null,"url":null,"abstract":"<div><div>We develop a user-friendly, high-performance Material Point Method (MPM) solver, <span>MaterialPointSolver.jl</span>, using the Julia language. The dual storage and interaction between material particles and the background grid limits the use of high-resolution models, and few solutions offer both performance and ease of use. Our backend-agnostic solver leverages GPU computing, enabling high-performance implementations across various platforms with a single codebase. We propose an effective memory throughput approach to evaluate GPU efficiency. The accuracy and efficiency of the solver are validated by four numerical examples, showing a 3.5<span><math><mo>×</mo></math></span> speedup on a single-threaded CPU and a 19.4<span><math><mo>×</mo></math></span> speedup on a 20-threaded CPU compared to optimized vectorized MATLAB code. Among four tested GPUs, it achieves a maximum average memory bandwidth utilization of 67%, reaching up to 78% (1453 GiB/s) in 2D tests. On the GH200 platform, the GPU shows a 21.3<span><math><mo>×</mo></math></span> speedup over its multi-threaded CPU. Our solver can handle approximately 19.7 million double-precision material particles on a consumer-grade GPU with 10 GB memory, while on the GH200, it can manage around 190 million material particles. This study introduces advanced software capabilities along with backend-agnostic framework expertise to the field of geotechnical engineering. By utilizing parallel algorithms specifically designed for MPM and integrating a newly developed performance evaluation approach, it ensures rapid prototyping and seamless transition to production. This implementation empowers researchers and practitioners to promote the widespread adoption of high-resolution MPM models in geotechnical engineering.</div></div>","PeriodicalId":55217,"journal":{"name":"Computers and Geotechnics","volume":"183 ","pages":"Article 107189"},"PeriodicalIF":5.3000,"publicationDate":"2025-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"A high-performance backend-agnostic Material Point Method solver in Julia\",\"authors\":\"Zenan Huo ,&nbsp;Yury Alkhimenkov ,&nbsp;Michel Jaboyedoff ,&nbsp;Yury Podladchikov ,&nbsp;Ludovic Räss ,&nbsp;Emmanuel Wyser ,&nbsp;Gang Mei\",\"doi\":\"10.1016/j.compgeo.2025.107189\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"<div><div>We develop a user-friendly, high-performance Material Point Method (MPM) solver, <span>MaterialPointSolver.jl</span>, using the Julia language. The dual storage and interaction between material particles and the background grid limits the use of high-resolution models, and few solutions offer both performance and ease of use. Our backend-agnostic solver leverages GPU computing, enabling high-performance implementations across various platforms with a single codebase. We propose an effective memory throughput approach to evaluate GPU efficiency. The accuracy and efficiency of the solver are validated by four numerical examples, showing a 3.5<span><math><mo>×</mo></math></span> speedup on a single-threaded CPU and a 19.4<span><math><mo>×</mo></math></span> speedup on a 20-threaded CPU compared to optimized vectorized MATLAB code. Among four tested GPUs, it achieves a maximum average memory bandwidth utilization of 67%, reaching up to 78% (1453 GiB/s) in 2D tests. On the GH200 platform, the GPU shows a 21.3<span><math><mo>×</mo></math></span> speedup over its multi-threaded CPU. Our solver can handle approximately 19.7 million double-precision material particles on a consumer-grade GPU with 10 GB memory, while on the GH200, it can manage around 190 million material particles. This study introduces advanced software capabilities along with backend-agnostic framework expertise to the field of geotechnical engineering. By utilizing parallel algorithms specifically designed for MPM and integrating a newly developed performance evaluation approach, it ensures rapid prototyping and seamless transition to production. This implementation empowers researchers and practitioners to promote the widespread adoption of high-resolution MPM models in geotechnical engineering.</div></div>\",\"PeriodicalId\":55217,\"journal\":{\"name\":\"Computers and Geotechnics\",\"volume\":\"183 \",\"pages\":\"Article 107189\"},\"PeriodicalIF\":5.3000,\"publicationDate\":\"2025-03-15\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Computers and Geotechnics\",\"FirstCategoryId\":\"5\",\"ListUrlMain\":\"https://www.sciencedirect.com/science/article/pii/S0266352X25001387\",\"RegionNum\":1,\"RegionCategory\":\"工程技术\",\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Computers and Geotechnics","FirstCategoryId":"5","ListUrlMain":"https://www.sciencedirect.com/science/article/pii/S0266352X25001387","RegionNum":1,"RegionCategory":"工程技术","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"COMPUTER SCIENCE, INTERDISCIPLINARY APPLICATIONS","Score":null,"Total":0}
引用次数: 0

摘要

我们开发了一个用户友好的,高性能的材料点法(MPM)求解器,MaterialPointSolver。jl,使用Julia语言。材料颗粒和背景网格之间的双重存储和相互作用限制了高分辨率模型的使用,很少有解决方案能够同时提供性能和易用性。我们的后端不可知求解器利用GPU计算,使用单个代码库实现跨各种平台的高性能实现。我们提出了一种有效的内存吞吐量方法来评估GPU的效率。通过四个数值算例验证了求解器的准确性和效率,与优化的矢量化MATLAB代码相比,在单线程CPU上加速3.5倍,在20线程CPU上加速19.4倍。在四个测试的gpu中,它的平均内存带宽利用率最高达到67%,在2D测试中达到78% (1453 GiB/s)。在GH200平台上,GPU的速度比其多线程CPU提高了21.3倍。我们的求解器可以在10gb内存的消费级GPU上处理大约1970万个双精度材料粒子,而在GH200上,它可以管理大约1.9亿个材料粒子。本研究向岩土工程领域介绍了先进的软件功能以及与后端无关的框架专业知识。通过利用专门为MPM设计的并行算法和集成新开发的性能评估方法,它确保了快速原型和无缝过渡到生产。这种实现使研究人员和实践者能够促进高分辨率MPM模型在岩土工程中的广泛采用。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
A high-performance backend-agnostic Material Point Method solver in Julia
We develop a user-friendly, high-performance Material Point Method (MPM) solver, MaterialPointSolver.jl, using the Julia language. The dual storage and interaction between material particles and the background grid limits the use of high-resolution models, and few solutions offer both performance and ease of use. Our backend-agnostic solver leverages GPU computing, enabling high-performance implementations across various platforms with a single codebase. We propose an effective memory throughput approach to evaluate GPU efficiency. The accuracy and efficiency of the solver are validated by four numerical examples, showing a 3.5× speedup on a single-threaded CPU and a 19.4× speedup on a 20-threaded CPU compared to optimized vectorized MATLAB code. Among four tested GPUs, it achieves a maximum average memory bandwidth utilization of 67%, reaching up to 78% (1453 GiB/s) in 2D tests. On the GH200 platform, the GPU shows a 21.3× speedup over its multi-threaded CPU. Our solver can handle approximately 19.7 million double-precision material particles on a consumer-grade GPU with 10 GB memory, while on the GH200, it can manage around 190 million material particles. This study introduces advanced software capabilities along with backend-agnostic framework expertise to the field of geotechnical engineering. By utilizing parallel algorithms specifically designed for MPM and integrating a newly developed performance evaluation approach, it ensures rapid prototyping and seamless transition to production. This implementation empowers researchers and practitioners to promote the widespread adoption of high-resolution MPM models in geotechnical engineering.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
Computers and Geotechnics
Computers and Geotechnics 地学-地球科学综合
CiteScore
9.10
自引率
15.10%
发文量
438
审稿时长
45 days
期刊介绍: The use of computers is firmly established in geotechnical engineering and continues to grow rapidly in both engineering practice and academe. The development of advanced numerical techniques and constitutive modeling, in conjunction with rapid developments in computer hardware, enables problems to be tackled that were unthinkable even a few years ago. Computers and Geotechnics provides an up-to-date reference for engineers and researchers engaged in computer aided analysis and research in geotechnical engineering. The journal is intended for an expeditious dissemination of advanced computer applications across a broad range of geotechnical topics. Contributions on advances in numerical algorithms, computer implementation of new constitutive models and probabilistic methods are especially encouraged.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信