PDCpy is the official Python interface for Proactive Data Containers (PDC), a software-defined data management system designed for HPC environments. This Python API makes PDC's C-based data management capabilities accessible to scientific computing applications, providing tools for container and object management, data manipulation, and querying.
Project description
PDC (Proactive Data Containers) is a software-defined data management system meant for high performance computing systems with several layers of storage, aiming to minimize overhead of moving data between memory and storage layers.
Its existing interface is written in C, but with the rise of Python in scientific computing applications, PDC would be much more accessible with a python interface.
This repository contains that interface, its documentation, and unit tests.
This project was originally developed as part of Google Summer of Code 2022 (project page), and was supported by CROSS.
How To Install
PDCpy is compatible with openmpi and mpich. If neither compiler is installed, it will attempt to compile without mpi support, which will fail if you compile pdc with mpi support.
-
Install PDC: Follow the instructions on the PDC repository:
https://pdc.readthedocs.io/en/latest/getting_started.html#installing-pdc-from-source-codeAfter installing PDC, ensure the following:
$PDC_DIRand$MERCURY_DIRare set to their correct locations.pdc_serveris on yourPATH.$LD_LIBRARY_PATHhas the location oflibpdc.so.- You installed the
developbranch, NOT thestablebranch.
-
Install PDCpy:
pip install PDCpy
Manual Build Instructions
If you prefer to build PDCpy manually, follow these steps:
- Install build dependencies:
pip install Cython numpy setuptools wheel
- Build the Cython extensions:
python3 setup.py build_ext --inplace
This will compile the Cython source files and place the compiled.so(or.pydon Windows) files directly in thepdc/directory.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pdcpy-0.0.15.tar.gz.
File metadata
- Download URL: pdcpy-0.0.15.tar.gz
- Upload date:
- Size: 26.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d08914bfcb9fadbd0b1a9a7d87c31ade151e007ec910871ac5798424c2021588
|
|
| MD5 |
9f9c4288100d06bb28324e4983287a44
|
|
| BLAKE2b-256 |
8b9a579d4eb7eb01dc823bb7a354277d8d5db5cc55459dcaa1075e9ad4b8ebe7
|
File details
Details for the file pdcpy-0.0.15-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.
File metadata
- Download URL: pdcpy-0.0.15-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
- Upload date:
- Size: 4.8 MB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ba17c1d59a2aee957c5cd1356c1a52a6e10149ea610ac7a5066e78d238d3c821
|
|
| MD5 |
999e5d8224350d9f3af85e2828f94176
|
|
| BLAKE2b-256 |
821e7b2eb51195ff1e6927763433dfce7a0227868e49f8e783142d9a6cace033
|