OpenMP (Kokkos) GPU-plugin companion for the OpenSWMM 2D surface solver.
Project description
openswmm-gpu-omp
OpenMP (Kokkos) acceleration companion for the OpenSWMM 2D surface solver.
The base openswmm wheel is CPU-only and fully portable (Kokkos-free). This
companion ships a single native plugin (libopenswmm_gpu_omp) that the OpenSWMM
engine discovers and loads at runtime to run the 2D surface solver on the
Kokkos-OpenMP backend.
Install
pip install openswmm # CPU-only base engine
pip install openswmm-gpu-omp # add OpenMP acceleration
That is all. There is no public Python API: at import, the base openswmm
package detects this companion and adds it to the engine's plugin search path
(OPENSWMM_GPU_PLUGIN_PATH). With OPENSWMM_2D_BACKEND left at its auto
default, 2D surface runs then use OpenMP automatically. Setting
OPENSWMM_2D_BACKEND=cpu forces the serial solver; uninstalling this package
reverts to it permanently.
Notes
- OpenMP only — no GPU driver required. Numerics match the serial CPU solver to
~1e-13 (not bit-identical); pin
OPENSWMM_2D_BACKEND=cpuwhere bit-exact reproducibility is required. - The plugin is version-locked to the base engine (
openswmm == <same version>) and additionally ABI-checked at load time.
See docs/2D_GPU_DEFAULTS.md in the engine repository for the full
backend-selection matrix.
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 Distributions
Built Distributions
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 openswmm_gpu_omp-6.0.0a2-py3-none-win_amd64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-win_amd64.whl
- Upload date:
- Size: 151.7 kB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48bdca85dddc891bcd6b2f6bcfb4cab2d9a574d4e65c359d002fa825cc300a5b
|
|
| MD5 |
f191125b68b0c4276e5db0d01e74f6ab
|
|
| BLAKE2b-256 |
7e2320bde2ee81efa458df2c79fe14f039f8541e10b8e517c1f46884cf5e0fd4
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 1.7 MB
- Tags: Python 3, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
00702a19b86b6bcf1549cbeaf6f48f95f2282b3c9f1f4b1e45a70c24a3167e59
|
|
| MD5 |
84e584e6908f6af7cd42bf018bb06a17
|
|
| BLAKE2b-256 |
8730a0140b3a889942a7a93895a9e64f783e3e9face030369b898481096c7637
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-musllinux_1_2_aarch64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-musllinux_1_2_aarch64.whl
- Upload date:
- Size: 1.6 MB
- Tags: Python 3, musllinux: musl 1.2+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7ee3143f789738eb8ad4217e54694911d05714fcba63d4581fbae4efd06e76bf
|
|
| MD5 |
9de3c86fa6049501aba58a8ec732b3ef
|
|
| BLAKE2b-256 |
8ce909c53e866551d60fa95543175d4770c2f784e313372c920790888adc9f06
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
- Upload date:
- Size: 680.3 kB
- Tags: Python 3, manylinux: glibc 2.27+ x86-64, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
76bc6e3193523e33b3cacd95f6a7f9b1a8d5621ed4dbd5b5a72b4c3732a84aad
|
|
| MD5 |
109b7b54d1aee8dc6cfe0667c16f0352
|
|
| BLAKE2b-256 |
7f993fcc3da685843f6e6c601212516e1c514ca5a8b35595ff8ba3a170058862
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
- Upload date:
- Size: 625.5 kB
- Tags: Python 3, manylinux: glibc 2.26+ ARM64, manylinux: glibc 2.28+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0b46a91b3dad655a297a542be04aad9843531f8a417fe7fdfe06df83311a96c7
|
|
| MD5 |
7f1cfa09fc35d21b9991cb00fea7d0db
|
|
| BLAKE2b-256 |
af93e78c190e5e4a4d92a0bc1767c5a7b0ce83aee499b65240974c161ecdf18c
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-macosx_11_0_x86_64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-macosx_11_0_x86_64.whl
- Upload date:
- Size: 788.0 kB
- Tags: Python 3, macOS 11.0+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
eab9ca2d56b75563c6576fd17965e129b9360e1df00a60a4181cd68bce98fb4a
|
|
| MD5 |
2146e5b70393b425f47c190f3f4af62a
|
|
| BLAKE2b-256 |
e5a71dcf41fcabbfc533bd394a13a26d780460852dfb77698ab34c3738ef084f
|
File details
Details for the file openswmm_gpu_omp-6.0.0a2-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: openswmm_gpu_omp-6.0.0a2-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 693.3 kB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
544eb24fad98da509c7610e5ad0c66b119acc0a34e0b16640802b229a1046237
|
|
| MD5 |
44c1947c06ec935ac3a947fba90b757d
|
|
| BLAKE2b-256 |
364ad1c9ca21d94e7a7474322cf14a622a40f5536f4fa868c95bcbac311662d8
|