Changli Ma, He Cheng, Taisen Zuo, Guisheng Jiao, Zehua Han
{"title":"NeuDATool:一个开源的中子数据分析工具,支持GPU硬件加速,以及跨计算机集群节点并行","authors":"Changli Ma, He Cheng, Taisen Zuo, Guisheng Jiao, Zehua Han","doi":"10.1063/1674-0068/CJCP2005077","DOIUrl":null,"url":null,"abstract":"Empirical potential structure refinement (EPSR) is a neutron scattering data analysis algorithm and a software package. It was developed by the British spallation neutron source (ISIS) Disordered Materials Group in 1980s, and aims to construct the most-probable atomic structures of disordered liquids. It has been extensively used during the past decades, and has generated reliable results. However, it is programmed in Fortran and implements a shared-memory architecture with OpenMP. With the extensive construction of supercomputer clusters and the widespread use of graphics processing unit (GPU) acceleration technology, it is now necessary to rebuild the EPSR with these techniques in the effort to improve its calculation speed. In this study, an open source framework NeuDATool is proposed. It is programmed in the object-oriented language C++, can be paralleled across nodes within a computer cluster, and supports GPU acceleration. The performance of NeuDATool has been tested with water and amorphous silica neutron scattering data. The test shows that the software could reconstruct the correct microstructure of the samples, and the calculation speed with GPU acceleration could increase by more than 400 times compared with CPU serial algorithm at a simulation box consists about 100 thousand atoms. NeuDATool provides another choice for scientists who are familiar with C++ programming and want to define specific models and algorithms for their analyses.","PeriodicalId":8424,"journal":{"name":"arXiv: Computational Physics","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2019-12-17","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":"{\"title\":\"NeuDATool: An open source neutron data analysis tools, supporting GPU hardware acceleration, and across-computer cluster nodes parallel\",\"authors\":\"Changli Ma, He Cheng, Taisen Zuo, Guisheng Jiao, Zehua Han\",\"doi\":\"10.1063/1674-0068/CJCP2005077\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Empirical potential structure refinement (EPSR) is a neutron scattering data analysis algorithm and a software package. It was developed by the British spallation neutron source (ISIS) Disordered Materials Group in 1980s, and aims to construct the most-probable atomic structures of disordered liquids. It has been extensively used during the past decades, and has generated reliable results. However, it is programmed in Fortran and implements a shared-memory architecture with OpenMP. With the extensive construction of supercomputer clusters and the widespread use of graphics processing unit (GPU) acceleration technology, it is now necessary to rebuild the EPSR with these techniques in the effort to improve its calculation speed. In this study, an open source framework NeuDATool is proposed. It is programmed in the object-oriented language C++, can be paralleled across nodes within a computer cluster, and supports GPU acceleration. The performance of NeuDATool has been tested with water and amorphous silica neutron scattering data. The test shows that the software could reconstruct the correct microstructure of the samples, and the calculation speed with GPU acceleration could increase by more than 400 times compared with CPU serial algorithm at a simulation box consists about 100 thousand atoms. NeuDATool provides another choice for scientists who are familiar with C++ programming and want to define specific models and algorithms for their analyses.\",\"PeriodicalId\":8424,\"journal\":{\"name\":\"arXiv: Computational Physics\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2019-12-17\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"2\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv: Computational Physics\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1063/1674-0068/CJCP2005077\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv: Computational Physics","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1063/1674-0068/CJCP2005077","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
NeuDATool: An open source neutron data analysis tools, supporting GPU hardware acceleration, and across-computer cluster nodes parallel
Empirical potential structure refinement (EPSR) is a neutron scattering data analysis algorithm and a software package. It was developed by the British spallation neutron source (ISIS) Disordered Materials Group in 1980s, and aims to construct the most-probable atomic structures of disordered liquids. It has been extensively used during the past decades, and has generated reliable results. However, it is programmed in Fortran and implements a shared-memory architecture with OpenMP. With the extensive construction of supercomputer clusters and the widespread use of graphics processing unit (GPU) acceleration technology, it is now necessary to rebuild the EPSR with these techniques in the effort to improve its calculation speed. In this study, an open source framework NeuDATool is proposed. It is programmed in the object-oriented language C++, can be paralleled across nodes within a computer cluster, and supports GPU acceleration. The performance of NeuDATool has been tested with water and amorphous silica neutron scattering data. The test shows that the software could reconstruct the correct microstructure of the samples, and the calculation speed with GPU acceleration could increase by more than 400 times compared with CPU serial algorithm at a simulation box consists about 100 thousand atoms. NeuDATool provides another choice for scientists who are familiar with C++ programming and want to define specific models and algorithms for their analyses.