Links
Contact Info.
  • Address:广东省东莞市大朗镇中子源路1号A1-424#
  • Zip:523000
  • Tel:0769-89156445
  • Fax:0769-69256441
  • Email:chenghe@ihep.ac.cn
Current Location :> Home > Publications > Text
NeuDATool: An Open Source Neutron Data Analysis Tools, Supporting GPU Hardware Acceleration, and Across-computer Cluster Nodes Parallel
writer:Changli Ma, Taisen Zuo, Guisheng Jiao, Zehua Han, Hong Qin, He Cheng*
keywords:无序大分子全原子结构分析
source:期刊
specific source:Chinese Journal of Chemical Physics 33(6), 727-732, 2020
Issue time:2020年

Empirical potential structure refinement (EPSR) is a neutron scattering data

analysis algorithm and a software package. It was developed by the Disordered Materials Group in the British spallation neutron source (ISIS) in 1980s, and aims to construct the most-probable atomic structures of disordered materials in the field of chemical physics. It has

been extensively used during the past decades, and has generated reliable

results. However, it implements a shared-memory architecture with Open

Multi-Processing (OpenMP). With the extensive construction of supercomputer

clusters and the widespread use of graphics processing unit (GPU) acceleration

technology, it is now possible 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 can reconstruct the correct microstructure of the samples, and the

calculation speed with GPU acceleration can increase by more than 400 times,

compared with CPU serial algorithm at a simulation box that has about 100

thousand atoms. NeuDATool provides another choice to implement simulation in

the (neutron) diffraction community, especially for experts who are familiar

with C++ programming and want to define specific algorithms for their analysis.