Skip to main content

Numerical tools for MPI-parallelized code

Project description

NuMPI

NuMPI is a collection of numerical tools for MPI-parallelized Python codes. NuMPI presently contains:

  • An (incomplete) stub implementation of the mpi4py interface to the MPI libraries. This allows running serial versions of MPI parallel code without having mpi4py (and hence a full MPI stack) installed.
  • Parallel file IO in numpy's .npy format using MPI I/O.
  • An MPI-parallel implementation of the L-BFGS optimizer.
  • An MPI-parallel bound constrained conjugate gradients algorithm.

Build status

Tests Flake8

Installation

python3 -m pip install NuMPI

Development Installation

Clone the repository.

To use the code, use the env.sh script to set the environment:

source /path/to/NuMPI/env.sh

Testing

You have to do a development installation to be able to run the tests.

We use runtests.

From the main installation directory:

python run-tests.py

If you want to use NuMPI without mpi4py, you can simply run the tests with pytest.

pytest tests/

Testing on the cluster

On NEMO for example

msub -q express -l walltime=15:00,nodes=1:ppn=20 NEMO_test_job.sh -m bea

Development & Funding

Development of this project is funded by the European Research Council within Starting Grant 757343 and by the Deutsche Forschungsgemeinschaft within project EXC 2193.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

numpi-0.4.0.tar.gz (86.5 kB view hashes)

Uploaded Source

Built Distribution

numpi-0.4.0-py3-none-any.whl (36.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page