Scroll to navigation

MBCP(1) User Commands MBCP(1)

NAME

mbcp - Copy files in parallel with MPI-Bash

SYNOPSIS

mbcp [-r] [-v] [-n] [-P] [-p] [-a] source file|source directory... target file|target directory

DESCRIPTION

mbcp is a parallel version of the standard cp command, designed to copy large files or large numbers of files—or even large numbers of large files—by distributing the work across a set of computers that share a filesystem. It can copy

a single file to a single file,
a single directory to a single directory, or
one or more files and/or directories to a directory.

mbcp is a bash script that uses MPI-Bash functions for communication. It should therefore be run like any other MPI program (typically with mpirun or mpiexec).

OPTIONS

mbcp accepts only a subset of cp's options:

Copy directories recursively.
Explain what is being done.
Do not overwrite an existing file.
Never follow symbolic links in source.
Preserve file mode, ownership, and timestamps.
Same as -P -p -r.

In addition, at least one source file or directory and exactly one target file or directory must be specified on the command line.

EXAMPLES

Use 16 processes to copy one file to another:

mpirun -np 16 mbcp my_giant_file their_giant_file.BAK

Use 128 processes to copy one directory to another, with verbose reporting:

mpirun -np 128 mbcp -r -v /scratch/me/big /usr/projects/myproj/big

BUGS

I sometimes see segmentation faults when MPI-Bash programs exit. I don't know why.

NOTES

mbcp requires Circle-Bash (MPI-Bash with Libcircle extensions) to operate.

AUTHOR

Scott Pakin, pakin@lanl.gov

COPYRIGHT

Copyright © 2015 Los Alamos National Security, LLC

SEE ALSO

cp(1), mpirun(1), MPI-Bash <https://github.com/losalamos/MPI-Bash>

2017-05-11 LANL