Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

cugrid

CUDA-accelerated AC power flow and ACOPF for large-scale transmission networks: batched Newton-Raphson PF, contingency screening (N-1 / N-1-1), hosting capacity, and curtailment optimization. See plans/cugrid-implementation-plan.md for the full phased plan.

Status: Phase 0 (scaffolding) — no solver logic yet.

Layout

include/cugrid/   public C++ headers (common/: DeviceVector, error checks, timers)
src/                 io, network, pf/{cpu,cuda}, opf/{cpu,cuda}, linalg — filled in from Phase 1 onward
python/cugrid/     pybind11 module + Python package
tests/unit/          GoogleTest (C++), CPU-only, runs in CI on every PR
tests/validation/    accuracy checks vs pandapower / PowerModels (from Phase 2 onward)
tests/cases/         vendored small .m cases + generated reference solutions
scripts/             case download, pandapower/Ipopt reference generation
docs/math/           derivations (Jacobian, KKT, per-asset models)
docs/benchmarks/     performance reports

Build

Requires CMake ≥ 3.24 and a C++20 compiler. CUDA (12.x) is auto-detected; the project builds CPU-only when no nvcc is on PATH (e.g. laptops, cloud CI) and CUDA-enabled targets simply aren't compiled.

Python tooling uses uv; the pinned interpreter version lives in .python-version (3.12).

Python extension

uv sync --extra dev
uv run python -c "import cugrid; print(cugrid.hello()); print(cugrid.cuda_available())"

uv sync creates .venv/, installs the pinned Python if needed, and builds the pybind11 extension in editable mode via scikit-build-core. Re-run uv sync after touching C++ sources under python/cugrid/ or include/; plain uv run does not rebuild automatically.

C++ unit tests (CPU-only, GoogleTest fetched via CMake)

cmake -S . -B build -DCUGRID_BUILD_PYTHON=OFF
cmake --build build
ctest --test-dir build --output-on-failure

Force CUDA on/off

cmake -S . -B build -DCUGRID_ENABLE_CUDA=ON   # requires nvcc + CUDA Toolkit on PATH
cmake -S . -B build -DCUGRID_ENABLE_CUDA=OFF  # CPU-only even if a CUDA compiler is present

Lint / pre-commit

Ruff (Python) and clang-format (C++) run via pre-commit:

uv sync --extra dev
uv run pre-commit install       # runs the hooks on `git commit`
uv run pre-commit run --all-files

Reference solutions

uv sync --extra reference
uv run python scripts/make_reference.py --cases case9 case118 --out tests/cases

Generates pandapower PF results (V, θ per bus; branch flows) that the CPU/GPU solvers are validated against (Phase 2+).

Metadata

Release files for cugrid 0.0.1.dev1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cugrid 0.0.1.dev1
File Size Uploaded
cugrid-0.0.1.dev1.tar.gz 57.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cugrid 0.0.1.dev1
File Interpreter ABI Platform
cugrid-0.0.1.dev1-cp312-cp312-macosx_26_0_arm64.whl CPython 3.12 CPython 3.12 macOS 26.0+ ARM64 Details

Total release size: 126.7 kB

Release files / cugrid-0.0.1.dev1.tar.gz

Download URL cugrid-0.0.1.dev1.tar.gz
Size 57.5 kB
Tags Source
SHA-256 checksum
How to use checksums
60c79ad5dee724052e80d3bfafe6e0b3e8fbae10fb6f9490f41744130d6fb744
BLAKE2b-256 checksum
How to use checksums
fe91eb031d9519b91745099cde8344d528f97fa426b935de2cdbaf3bd8b014ce
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release files / cugrid-0.0.1.dev1-cp312-cp312-macosx_26_0_arm64.whl

Download URL cugrid-0.0.1.dev1-cp312-cp312-macosx_26_0_arm64.whl
Size 69.2 kB
Tags CPython 3.12 macOS 26.0+ ARM64
SHA-256 checksum
How to use checksums
2b7210da19247311ee130c9adc2e701b72a31f6d0f9537341be24551b5d0b6ec
BLAKE2b-256 checksum
How to use checksums
3c14a4fce7823d3ad8d7b06a84edc3ccd83966794cbd1a1a3b10b5fc2e809274
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.7.8

Release history Release notifications | RSS feed

This release

0.0.1.dev1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page