CADISHI: Fast parallel calculation of particle-pair distance histograms on CPUs and GPUs

Published: 13 Dec 2018 | Version 1 | DOI: 10.17632/82b8sdft79.1

Description of this data

We report on the design, implementation, optimization, and performance of the CADISHI software package, which calculates histograms of pair-distances of ensembles of particles on CPUs and GPUs. These histograms represent 2-point spatial correlation functions and are routinely calculated from simulations of soft and condensed matter, where they are referred to as radial distribution functions, and in the analysis of the spatial distributions of galaxies and galaxy clusters. Although conceptually simple, the calculation of radial distribution functions via distance binning requires the evaluation of O(N^2) particle-pair distances where N is the number of particles under consideration. CADISHI provides fast parallel implementations of the distance histogram algorithm for the CPU and the GPU, written in templated C++ and CUDA. Orthorhombic and general triclinic periodic boxes are supported, in addition to the non-periodic case. The CPU kernels feature cache-blocking, vectorization and thread-parallelization to obtain high performance. The GPU kernels are tuned to exploit the memory and processor features of current GPUs, demonstrating histogramming rates of up to a factor 40 higher than on a high-end multi-core CPU. To enable high-throughput analyses of molecular dynamics trajectories, the compute kernels are driven by the Python-based CADISHI engine. It implements a producer–consumer data processing pattern and thereby enables the complete utilization of all the CPU and GPU resources available on a specific computer, independent of special libraries such as MPI, covering commodity systems up to high-end HPC nodes. Data input and output are performed efficiently via HDF5. In addition, our CPU and GPU kernels can be compiled into a standard C library and used with any application, independent from the CADISHI engine or Python. The CADISHI software is freely available under the MIT license.

Experiment data files

This data is associated with the following publication:

CADISHI: Fast parallel calculation of particle-pair distance histograms on CPUs and GPUs

Published in: Computer Physics Communications

Latest version

  • Version 1


    Published: 2018-12-13

    DOI: 10.17632/82b8sdft79.1

    Cite this dataset

    Reuter, Klaus; Köfinger, Jürgen (2018), “CADISHI: Fast parallel calculation of particle-pair distance histograms on CPUs and GPUs”, Mendeley Data, v1


Views: 588
Downloads: 190


Computational Physics


MIT Learn more

The files associated with this dataset are licensed under a MIT License licence.

What does this mean?

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.