|
1 | | -# PnetCDF python |
| 1 | +# PnetCDF for Python |
2 | 2 |  |
3 | 3 |  |
4 | 4 |  |
5 | 5 |
|
6 | | -PnetCDF-python is a Python interface to |
7 | | -[PnetCDF](https://parallel-netcdf.github.io/), a high-performance parallel I/O |
8 | | -library for accessing netCDF files. |
9 | | -This package allows Python users to access netCDF data using the rich ecosystem |
10 | | -of Python's scientific computing libraries, making it a valuable tool for |
11 | | -applications that require parallel access to netCDF files. |
| 6 | +PnetCDF-Python is a Python interface to |
| 7 | +[PnetCDF](https://parallel-netcdf.github.io/), a high-performance I/O library |
| 8 | +for accessing netCDF files in parallel. It can provide MPI-based parallel |
| 9 | +python programs to achieve a scalable I/O performance. |
12 | 10 |
|
13 | 11 | ### Software Dependencies |
14 | | -* Python 3.9 or above |
15 | | -* MPI libraries |
| 12 | +* Python 3.9 or later. |
| 13 | +* [numpy](http://www.numpy.org/) Python package. |
| 14 | +* MPI C library and Python package, [mpi4py](https://mpi4py.readthedocs.io/en/stable/install.html). |
16 | 15 | * PnetCDF [C library](https://github.com/Parallel-netCDF/PnetCDF), built with shared libraries. |
17 | | -* Python library [mpi4py](https://mpi4py.readthedocs.io/en/stable/install.html) |
18 | | -* Python library [numpy](http://www.numpy.org/) |
19 | 16 |
|
20 | 17 | ### Developer Installation |
21 | 18 | * Clone this GitHub repository |
22 | | -* Make sure the above dependent software are installed. |
23 | | -* In addition, [Cython](http://cython.org/), [packaging](https://pypi.org/project/packaging/), [setuptools>=65](https://pypi.org/project/setuptools/) and [wheel](https://pypi.org/project/wheel/) are required for developer installation. |
24 | | -* Set the environment variable `PNETCDF_DIR` to PnetCDF's installation path. |
25 | | -* Make sure utility program `pnetcdf-config` is available in `$PNETCDF_DIR/bin`. |
26 | | -* Run command below to install. |
| 19 | +* Required software for developer installation: |
| 20 | + + The above mentioned dependent software are installed and additionally, |
| 21 | + + [Cython](http://cython.org/), [packaging](https://pypi.org/project/packaging/), [setuptools>=65](https://pypi.org/project/setuptools/) and [wheel](https://pypi.org/project/wheel/). |
| 22 | +* Commands to install. |
27 | 23 | ``` |
28 | | - CC=/path/to/mpicc PNETCDF_DIR=/path/to/pnetcdf/dir pip install --no-build-isolation -e . |
| 24 | + export CC=/path/to/mpicc |
| 25 | + export PNETCDF_DIR=/path/to/pnetcdf/dir |
| 26 | + pip install --no-build-isolation -e . |
29 | 27 | ``` |
30 | | -* Testing |
31 | | - + Run command `"make check"` to test all the programs available in folders |
32 | | - ["test/"](./test) and ["examples/"](./examples) in parallel on 4 MPI |
33 | | - processes. |
34 | | - + In addition, command `"make ptests"` runs the same tests using 3, 4, and 8 |
35 | | - MPI processes. |
| 28 | +* Testing -- Command `"make check"` tests all the programs available in folders |
| 29 | + ["test/"](./test) and ["examples/"](./examples). |
36 | 30 |
|
37 | 31 | ### Additional Resources |
| 32 | +* [Example programs](./examples#pnetcdf-python-examples) are available in |
| 33 | + folder `./examples`. |
38 | 34 | * PnetCDF-python [User Guide](https://pnetcdf-python.readthedocs.io/en/latest) |
39 | 35 | * [Data objects](docs/pnetcdf_objects.md) in PnetCDF python programming |
40 | 36 | * [Comparison](docs/nc4_vs_pnetcdf.md) of NetCDF4-python and PnetCDF-python |
41 | 37 | * [PnetCDF project home page](https://parallel-netcdf.github.io) |
42 | | -* [PnetCDF repository of C/Fortran library](https://github.com/Parallel-NetCDF/PnetCDF) |
| 38 | +* [PnetCDF of C/Fortran library repository](https://github.com/Parallel-NetCDF/PnetCDF) |
43 | 39 |
|
44 | 40 | ### Developer Team |
45 | 41 | * Youjia Li <<youjia@northwestern.edu>> |
|
0 commit comments