Installation
PyZFS uses the mpi4py package for parallelization. An existing MPI implementation (e.g. MPICH or OpenMPI) is required to install mpi4py and PyZFS. Many supercomputers provide modules for pre-compiled MPI implementations. MPI can also be installed from package managers such as APT and Homebrew, or built from source.
PyZFS requires Python 3.6+. It is recommended to install PyZFS using pip. First, clone the git repository:
$ git clone https://github.com/MICCoMPy/pyzfs.git
Then, execute pip in the folder containing setup.py
$ pip install .
PyZFS depends on the following packages, which will be installed automatically by pip
numpy
scipy
mpi4py
h5py
ase
lxml
If using pip is not possible, one can manually install the above dependencies, and then add the directory of PyZFS to the PYTHONPATH
environment variable by, e.g.,
# Bash shell as an example
$ export PYTHONPATH=$PYTHONPATH:path/to/pyzfs
GPU
PyZFS optionally uses the cupy package to offload the calculation to NVIDIA GPUs. To use this feature, install cupy by, e.g.,
$ pip install cupy-cuda110
Note that the version of cupy must be compatible to the version of CUDA installed on the system, which in the above example is version 11.0. At runtime, PyZFS automatically tries to import the cupy module and uses all available GPUs. If cupy cannot be imported, PyZFS falls back to NumPy and runs on CPUs.