Skip to main content

Python Runtime Hypervisor. Run infinite Python package & interpreter versions concurrently in one environment in milliseconds.

Project description

omnipkg Logo

omnipkg — Python Runtime Hypervisor

Run infinite Python package and interpreter versions concurrently in one environment, in milliseconds.

License PyPI Conda Downloads PyPI Downloads Docker Pulls Global Reach Python Versions Interactive Console

Security Safety Pylint CodeQL

omnipkg wins pip failures uv failures

Multi-version installation tests run every 3 hours. Live results.


⚡ Startup: 237µs

8pkg doesn't spawn a Python interpreter for every command. A custom C dispatcher built on uint64_t word-loads connects to the daemon socket in under 100µs.

$ hyperfine '8pkg --help' 'bun --help' 'uv --help'

8pkg --help    237.5 µs ± 30.9 µs    [2976 runs]
bun --help     683.2 µs ± 52.0 µs    [1799 runs]
uv --help        4.1 ms ±  0.1 ms     [656 runs]

  8pkg ran  2.88x faster than bun
  8pkg ran 17.12x faster than uv

--help is served from a compiled static header — zero Python. For real daemon work:

$ hyperfine '8pkg swap rich' 'uv pip install rich'  # both are no-ops, package already satisfied

8pkg swap rich       1.5 ms ± 0.1 ms    [1337 runs]
uv pip install rich  9.0 ms ± 0.2 ms    [305 runs]   (prints "Checked 1 package in 2ms" internally)

  8pkg ran 6.01x faster than uv

Both commands find the package already satisfied and do nothing. The 7.5ms gap is pure overhead that omnipkg eliminated: uv spawns a process, parses its CLI via clap, scans the environment, then tears everything down. omnipkg embeds uv as a persistent in-process library (uv-ffi) — no spawn, no CLI parse, warm site-packages cache.

For actual version switches, omnipkg intercepts uv's resolved install plan via a Rust callback before any file I/O runs. Python performs an atomic os.rename() to swap the package directories (~0.1ms), returns True to short-circuit uv's installer, then uv does ~2ms of cleanup. The version swap itself is essentially free once the plan arrives.


What omnipkg is

omnipkg is a persistent daemon that manages isolated Python worker processes ("bubbles"), each with its own package versions, ABI, and optionally a different Python interpreter. The C dispatcher connects to the daemon socket directly, bypassing Python startup entirely for hot paths.

You can run torch==1.13.1+cu116 and torch==2.2.0+cu121 simultaneously in the same script, pass GPU tensors between them without ever leaving VRAM, and route through Python 3.9 and 3.12 workers in the same pipeline — all without containers or separate virtualenvs.

Architecture · CLI reference · Getting started


The Impossible Pipeline: 3 PyTorch ABIs, One VRAM Buffer

The daemon's Universal CUDA IPC passes raw cudaIpcGetMemHandle pointers between workers via ctypes, using no PyTorch on the transport path. Data never crosses the PCIe bus.

$ 8pkg demo 11  # test 8: Grand Unified Benchmark

📦 Payload: 3.81 MB float32 tensor
🌊 Pipeline: torch 1.13.1+cu116 → 2.0.1+cu118 → 2.1.0+cu121

MODE 1 — Pickle + subprocess fork:          4540 ms   (baseline)
MODE 2 — CPU shared memory (zero-copy):       24 ms   (185x faster)
MODE 3 — Universal CUDA IPC (VRAM-only):    6.67 ms   (warm workers)

[WARM] GPU Stage 1: torch 1.13.1+cu116    2.40 ms
[WARM] GPU Stage 2: torch 2.0.1+cu118     2.10 ms
[WARM] GPU Stage 3: torch 2.2.0+cu121     2.17 ms
  ↳ Total: 6.67 ms  — TRUE ZERO-COPY across 3 CUDA ABIs

This also works across Python interpreter versions. Tested up to py3.9 (cu118) → py3.12 (cu130):

[WARM] py3.9  alloc + share    1.64 ms   torch=2.0.1+cu118
[WARM] py3.12 relu→norm→tanh   2.07 ms   torch=2.12.0+cu130
  ↳ Total: 3.71 ms  (757x faster than cold spawn)

Run it yourself:

8pkg demo 11

ABI-Aware Backend Injection

When a compiled-package worker boots, omnipkg queries its knowledge base for the numpy ABI range that was baked into that specific build, then pre-injects the correct numpy bubble automatically before any user code runs:

[DAEMON] numpy ABI range from KB: 1.20-1.23 (spec=torch==1.13.1+cu116)
[DAEMON] numpy bubble pre-injected: numpy-1.23.5  [KB-guided (1.23.5 in 1.20-1.23.*)]

No manual pinning. No ABI crash on first import. The KB accumulates this mapping for every compiled package omnipkg has ever managed, and the pattern generalizes beyond numpy — anything with a compiled ABI dependency gets the same treatment.


Concurrent Isolation

10 threads, 3 numpy versions, 0 corruptions:

🔥 10 threads × 3 swaps each — numpy 1.24.3 / 1.26.4 / 2.3.5 (500×500 float32)

✅ Success Rate:   30/30  (100%)
⚡ Throughput:     502 swaps/sec
🚀 Avg latency:    2.37 ms/swap
✅ Memory integrity verified — no cross-contamination

3 Python interpreters, 3 PyTorch versions, concurrent:

Sequential baseline (3.9 → 3.10 → 3.11):   3869 ms
Concurrent via daemon:                         21 ms
Speedup:                                      186x

Each universe gets its own interpreter binary and torch CUDA build. Data moves between them via shared memory with zero serialization.


Multi-Version Support

omnipkg pip uv

pip and uv can only have one version of a package active at a time. omnipkg runs conflicting versions simultaneously in isolated workers. The test matrix above runs every 3 hours against real packages on real PyPI.


Other Capabilities

Auto-healing runner8pkg run script.py detects import failures, version conflicts, and C-extension ABI errors at runtime, activates the correct bubble, and re-executes — without touching your main environment. → docs

Reproducible environments8pkg export snapshots your full interpreter registry + bubble state to a content-addressed TOML lock. 8pkg sync rebuilds from it. SHA is deterministic and path-free, safe to commit. → docs

Python interpreter management — omnipkg manages CPython 3.7–3.15 (including pre-releases) inside a single environment. Adopt, switch, and run them concurrently. → docs

Environment recovery8pkg revert restores from last-known-good snapshot when an external tool (pip, uv) damages your environment.

24-language i18n — all output is localized. Auto-detects from system locale, override with --lang or omnipkg config set language zh_CN.


Install

# pip / uv
pip install omnipkg
uv pip install omnipkg

# conda-forge
conda install -c conda-forge omnipkg
mamba install -c conda-forge omnipkg

# pixi
pixi add omnipkg

# Docker
docker pull 1minds3t/omnipkg:latest

Try it immediately:

8pkg demo        # interactive demo menu
8pkg demo 11     # full IPC showcase (all transports, warm/cold timing)
8pkg stress-test # concurrent chaos tests

Platform Support

omnipkg ships pre-compiled C dispatcher wheels using the stable ABI (cp37-abi3):

Platform Wheel tag
Linux x86_64 (glibc 2.17+) manylinux2014_x86_64
Linux aarch64 (glibc 2.17+) manylinux2014_aarch64
Linux x86_64 (musl 1.2+) musllinux_1_2_x86_64
Linux aarch64 (musl 1.2+) musllinux_1_2_aarch64
Windows x64 win_amd64
Windows ARM64 win_arm64
macOS 11+ (Intel + Apple Silicon) macosx_11_0_universal2
Raspberry Pi armv6l piwheels

Python: 3.7 – 3.15, all on the same stable ABI wheel. A pure-Python fallback wheel (py3-none-any) covers anything else.

conda-forge: linux-64, linux-aarch64, linux-ppc64le, osx-64, osx-arm64, win-64 (Python 3.10–3.13)

Installation notes for specific distros

Ubuntu 24.04+ / Debian 12+ (PEP 668):

pip install --break-system-packages omnipkg
# or use a venv

Alpine Linux:

apk add --no-cache gcc python3-dev musl-dev linux-headers
pip install --break-system-packages omnipkg

Arch Linux:

pip install --break-system-packages omnipkg

Rocky/AlmaLinux 8 (ships Python 3.6):

sudo dnf install -y python39 python39-pip
python3.9 -m pip install omnipkg

Documentation & Interactive Console

The docs run against your local omnipkg daemon — every code block has a live "Run Command" button that executes on your machine via a local web bridge.

8pkg web start   # starts local bridge on port 5000

Then open: https://1minds3t.echo-universe.ts.net/omnipkg/

Chrome will prompt once to allow local network access — that's the CORS handshake to your daemon. No data leaves your machine.

The console includes 33+ runnable demos:

Or skip the browser entirely:

8pkg demo        # same demos, terminal UI
8pkg demo 11     # IPC showcase directly

License

Dual-licensed:

Commercial inquiries: 1minds3t@proton.me


Contributing

Bug reports, pull requests, and translation corrections are welcome.

Open an issue

 ________________________________________________________________
/                                                                \
| pip:    "Version conflicts? New env please!"                   |
| Docker: "Spin up containers for 45s each!"                     |
| venv:   "90s of setup for one Python version!"                 |
|                                                                |
| omnipkg: *runs 3 torch CUDA ABIs across 3 Pythons"             |
|          "through one VRAM buffer in 6.67ms*                   |
|          "Hold my multiverse!"                                 |
\________________________________________________________________/
        \   ^__^
         \  (🐍)\_______
            (__)\       )\/\
                ||----w |
                ||     ||

                ~ omnipkg: The Python Runtime Hypervisor ~

Project details


Release history Release notifications | RSS feed

This version

3.4.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

omnipkg-3.4.1.tar.gz (1.8 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

omnipkg-3.4.1-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

omnipkg-3.4.1-cp37-abi3-win_arm64.whl (1.7 MB view details)

Uploaded CPython 3.7+Windows ARM64

omnipkg-3.4.1-cp37-abi3-win_amd64.whl (1.8 MB view details)

Uploaded CPython 3.7+Windows x86-64

omnipkg-3.4.1-cp37-abi3-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7+musllinux: musl 1.2+ x86-64

omnipkg-3.4.1-cp37-abi3-musllinux_1_2_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.7+musllinux: musl 1.2+ ARM64

omnipkg-3.4.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.7 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ ARM64

omnipkg-3.4.1-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.7+manylinux: glibc 2.17+ x86-64

omnipkg-3.4.1-cp37-abi3-macosx_11_0_universal2.whl (1.7 MB view details)

Uploaded CPython 3.7+macOS 11.0+ universal2 (ARM64, x86-64)

File details

Details for the file omnipkg-3.4.1.tar.gz.

File metadata

  • Download URL: omnipkg-3.4.1.tar.gz
  • Upload date:
  • Size: 1.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for omnipkg-3.4.1.tar.gz
Algorithm Hash digest
SHA256 9b51d447078e3d547ebe340a3458dc4ed8b79b84d78fbf5a64b9320e94549245
MD5 a8211237af0acc4f7b5d9f7b7adaef38
BLAKE2b-256 d6e19a0908af9f57805f3b5ac30979df54ca0b0bbf8f0551314726eab0c2a1d6

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1.tar.gz:

Publisher: publish.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-py3-none-any.whl.

File metadata

  • Download URL: omnipkg-3.4.1-py3-none-any.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for omnipkg-3.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 69f73fd2c82bc7d9cb7edea47f691999065f7e5923826e45621d156457921cc6
MD5 77a38b9107c6774d69dc932b37c6d41f
BLAKE2b-256 8a3541004649290d43ca1e135a3fb46a5f1dda321fff395fe01f267bb0e5f21c

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-py3-none-any.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-win_arm64.whl.

File metadata

  • Download URL: omnipkg-3.4.1-cp37-abi3-win_arm64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.7+, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-win_arm64.whl
Algorithm Hash digest
SHA256 888a668b7a0f34e4e146851e72e8486022e10266718123b3fbfd9e1ee81cac6b
MD5 6143b192a19029bbd799f592e0f9c4ea
BLAKE2b-256 92ff45f90a0c47d5ac6aec382f3632a46bb433b0e9045f70e1ef9e6437fc0a7e

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-win_arm64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-win_amd64.whl.

File metadata

  • Download URL: omnipkg-3.4.1-cp37-abi3-win_amd64.whl
  • Upload date:
  • Size: 1.8 MB
  • Tags: CPython 3.7+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 c7d75452df1fa2b37aee1c0103f399ae2b53456a8d791dbe3d179e732a1a47c2
MD5 fd1adfc266cee439e213f82d4ce06af4
BLAKE2b-256 3b905a7dcc75a5a14d262576c176031e717bf4cf1a71023598ee9000629f25c2

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-win_amd64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 4ab16f56c4176231eab1c6a5dde5afcbf11aa2e3cdda1e9c8df2d887e33e8240
MD5 ec8dff0b212659ca59c588e5cc2ef9c3
BLAKE2b-256 eccaae78c6e27de60f1594a20bfff2b3ba69eea4cd9b0dbfb27f99ef543e697c

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-musllinux_1_2_x86_64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 806d167a240567888e4fc8cad2f463979ae13ffd274f8fddb11c020e6228cf95
MD5 4dd993225ebe2e716d4aa48cf642aad8
BLAKE2b-256 c029dee2cb5e1ceef054e9b964450764426140704fcf1ffed998bb06b5b97fe2

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-musllinux_1_2_aarch64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f1afd31b794d96951b3df06abc8af3065dd5d37aae52cbd76fc9f0b16a0e8fd4
MD5 512be168d9cc739c9c5696fd546a49b0
BLAKE2b-256 d94ecb396bffc968aa1dd64dec26bb4a7fc7079706c57ea04afc09b0ebe3658b

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.

File metadata

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 366d230c3ea8b8a523dce5443b26b1b1f30686e18685f3d06d31a627ef554925
MD5 62b4104a507a52ad17da71f33f404ebf
BLAKE2b-256 f1233db79d36f5df43c7dfa0823fec8918066fa5d3c16d8879ba5bb899ed77b5

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file omnipkg-3.4.1-cp37-abi3-macosx_11_0_universal2.whl.

File metadata

File hashes

Hashes for omnipkg-3.4.1-cp37-abi3-macosx_11_0_universal2.whl
Algorithm Hash digest
SHA256 4a52abfa8f47a8ea573bdc83321da23df29ddbe7c177c51ed16716177d0cb143
MD5 672e97b2a6dc7b3ff658c84420a901bf
BLAKE2b-256 9421f95e713eb2057939e3a6dcfc88decf45319ebe2143153fd152432d70ba09

See more details on using hashes here.

Provenance

The following attestation bundles were made for omnipkg-3.4.1-cp37-abi3-macosx_11_0_universal2.whl:

Publisher: publish-wheels.yml on 1minds3t/omnipkg

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page