Skip to content

morrone/mpifileutils

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mpiFileUtils

mpiFileUtils is a suite of MPI-based tools to manage large datasets, which may vary from large directory trees to large files. High-performance computing users often generate large datasets with parallel applications that run with many processes (millions in some cases). However those users are then stuck with single-process tools like cp and rm to manage their datasets. This suite provides MPI-based tools to handle typical jobs like copy, remove, and compare for such datasets, providing speedups of up to 20-30x. Documentation is available on ReadTheDocs and in this repo:

  • dbcast - Broadcast files to compute nodes.
  • dchmod - Change permissions and group access on files.
  • dcmp - Compare files.
  • dcp - Copy files.
  • dfilemaker - Generate random files.
  • drm - Remove files.
  • dstripe - Restripe files.
  • dwalk - List files.

Experimental Utilities

To enable experimental utilities, run configure with the enable experimental option.

./configure --enable-experimental

  • dfind - Find files by path name (experimental).
  • dgrep - Search contents of files (experimental).
  • dparallel - Perform commands in parallel (experimental).
  • dtar - Create file tape archives (experimental).

Build

mpiFileUtils depends on several libraries. To simplify builds, there are two scripts: buildme_dependencies and buildme. The buildme_dependencies script downloads and installs all the necessary libraries. The buildme script then builds mpiFileUtils assuming the libraries have been installed. Both scripts require that mpicc is in your path, and that it is for an MPI library that supports at least v2.2 of the MPI standard. Please review each buildme script, and edit if necessary. Then run them in sequence:

./buildme_dependencies

./buildme

Alternatively, mpiFileUtils is available in Spack, which simplifies the install to just:

spack install mpifileutils

or to enable all features:

spack install mpifileutils +lustre +experimental

Build Status

The current status of the mpiFileUtils master branch is Build Status.

About

File utilities designed for scalability and performance.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 70.6%
  • Shell 26.2%
  • Python 1.4%
  • M4 1.1%
  • Makefile 0.6%
  • CMake 0.1%