Skip to content

Installation

From PyPI

pip install opendpd

The package provides the high-level functions opendpd.train_pa, opendpd.train_dpd, opendpd.run_dpd, opendpd.plot_dpd, opendpd.load_dataset and opendpd.create_dataset (see the API reference) and the opendpd-cli entry point, which mirrors python main.py of the repository.

From source

The repository is the full research codebase: automation scripts, dataset tooling, quantization utilities and the reproducible baselines. Clone it and install it in editable mode once the environment below is ready:

git clone https://github.com/lab-emi/OpenDPD.git
cd OpenDPD
pip install -e ".[dev]"

Repository layout

.
├── backbones/       # Neural backbone implementations
├── bash_scripts/    # Batch experiment scripts (train_all_*.sh, quant_*.sh)
├── datasets/        # Built-in PA datasets (CSV + spec.json)
├── examples/        # API examples and tutorials
├── modules/         # Data pipeline, logging, and training utilities
├── opendpd/         # Python package exposing the high-level API
├── quant/           # Quantization-aware training components
├── steps/           # CLI entry points (train_pa, train_dpd, run_dpd)
├── tests/           # Pytest suite (unit + end-to-end smoke tests, run in CI)
├── utils/           # Miscellaneous helper functions
├── Makefile         # Convenience targets (install, clean, etc.)
├── main.py          # Legacy CLI entry mirrored by opendpd-cli
└── project.py       # Core configuration & training orchestration

This project has been tested with PyTorch 2.6 and Ubuntu 24.04 LTS.

Setting Up Your Environment

We recommend using Miniconda for environment management:

# Install Miniconda (Linux)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh

# For MacOS, use:
# wget https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh

# Create a Python environment with required packages
conda create -n opendpd python=3.13 numpy scipy pandas matplotlib tqdm rich
conda activate opendpd

Installing PyTorch

For Linux or Windows systems:

  • With CPU only:

    pip3 install torch torchvision torchaudio
    

  • With NVIDIA GPU (CUDA 12.6):

    pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126
    
    Note: Ensure you have the latest NVIDIA GPU drivers installed to support CUDA 12.6

For macOS systems:

pip3 install torch torchvision torchaudio