Flexium.AI - Flexible Resource Allocation for GPU training with live migration
Project description
Flexium
Zero-downtime GPU migration for PyTorch training
Move running training jobs between GPUs without stopping them.
Quick Start • Features • How It Works • Sign Up Free
What is Flexium?
Flexium enables live GPU migration for PyTorch training. Move your training between GPUs without stopping, checkpointing, or losing progress.
import flexium.auto
with flexium.auto.run():
# Your existing training code - unchanged
for epoch in range(100):
for batch in dataloader:
loss = model(batch).sum()
loss.backward()
optimizer.step()
# Training transparently migrates between GPUs when needed
Zero code changes. Zero downtime. Zero memory residue.
Features
- Live Migration - Move training between GPUs without stopping
- Zero Code Changes - Just wrap your training loop
- Zero Memory Residue - Source GPU is completely freed
- Works Everywhere - PyTorch, Lightning, HuggingFace, and more
- Web Dashboard - Visual GPU management and monitoring
- Spot Instance Support - Survive preemptions automatically
Quick Start
1. Install
pip install flexium
2. Get Your API Key
Sign up for free at https://flexium.ai
3. Add Two Lines to Your Training
import flexium.auto
with flexium.auto.run():
# Your existing training code - no changes needed
model = MyModel().cuda()
for epoch in range(100):
train_one_epoch(model)
That's it! Your training is now migratable.
How It Works
┌─────────────────────────────────────────────────────────────┐
│ YOUR TRAINING CODE │
│ │
│ with flexium.auto.run(): │
│ model.train() ◄─── Training runs normally │
└─────────────────────────────────────────────────────────────┘
│
│ Heartbeat
▼
┌─────────────────────────────────────────────────────────────┐
│ FLEXIUM CLOUD │
│ │
│ Monitors your GPUs and triggers migrations when needed │
│ - Spot preemption? Auto-migrate to another GPU │
│ - GPU failure? Auto-recover to healthy GPU │
│ - Rebalancing? Move to optimize utilization │
└─────────────────────────────────────────────────────────────┘
When migration is needed, Flexium:
- Captures complete GPU state at driver level
- Frees source GPU completely (0 MB residue)
- Restores on target GPU seamlessly
Your training code never knows it moved.
Use Cases
Spot Instance Training
# Survive spot preemptions without losing progress
with flexium.auto.run():
train_large_model() # Auto-migrates when spot is reclaimed
GPU Rebalancing
# Free up GPUs for teammates without killing your job
with flexium.auto.run():
train_model() # Can be migrated via dashboard anytime
Hardware Failure Recovery
# Auto-recover from GPU errors
with flexium.auto.run():
train_model() # Auto-migrates on ECC errors, driver crashes
Requirements
- Python 3.8+
- PyTorch 2.0+
- NVIDIA GPU with driver 580+
- CUDA 12.0+
- Linux x86_64
Pricing
| Tier | Price | GPUs | Support |
|---|---|---|---|
| Free | $0/mo | Up to 4 | Community |
| Pro | $99/mo | Unlimited | Email (48h) |
| Team | $499/mo | Unlimited | Priority (24h) |
| Enterprise | Custom | Unlimited | Dedicated |
Documentation
Support
- Docs: docs.flexium.ai
- Discord: Join our community
- Issues: GitHub Issues
- Email: support@flexium.ai
License
Apache 2.0 - See LICENSE for details.
Built with ❤️ by the Flexium team
flexium.ai
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 flexium-0.1.2.tar.gz.
File metadata
- Download URL: flexium-0.1.2.tar.gz
- Upload date:
- Size: 52.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b65aae3cd9479d5442a921d063042cb72a4cfe5fddf728f43e596d9152e7ea19
|
|
| MD5 |
8d3b23f6d04f35e5de1eb7785ac5ab0b
|
|
| BLAKE2b-256 |
148877edb9e82c17c369b60fa3a97c36fd45fb5a80d5b721b0e0f1aeb9b30e13
|
Provenance
The following attestation bundles were made for flexium-0.1.2.tar.gz:
Publisher:
publish.yml on flexiumai/flexium
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flexium-0.1.2.tar.gz -
Subject digest:
b65aae3cd9479d5442a921d063042cb72a4cfe5fddf728f43e596d9152e7ea19 - Sigstore transparency entry: 1079458417
- Sigstore integration time:
-
Permalink:
flexiumai/flexium@35e3002e1ec1c42489c49013fd6155b218cfbcc0 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/flexiumai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@35e3002e1ec1c42489c49013fd6155b218cfbcc0 -
Trigger Event:
release
-
Statement type:
File details
Details for the file flexium-0.1.2-py3-none-any.whl.
File metadata
- Download URL: flexium-0.1.2-py3-none-any.whl
- Upload date:
- Size: 45.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6820c3a06328d83fb0eeb05fce2ed18f440585e1d74117b2991d0addd6749e17
|
|
| MD5 |
52993bbbe08c65014efb920412baecef
|
|
| BLAKE2b-256 |
742f2b933a4cc4e4389ca3cb19a53232f5aca6f65b8cbd62bed399fa9c6a8199
|
Provenance
The following attestation bundles were made for flexium-0.1.2-py3-none-any.whl:
Publisher:
publish.yml on flexiumai/flexium
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
flexium-0.1.2-py3-none-any.whl -
Subject digest:
6820c3a06328d83fb0eeb05fce2ed18f440585e1d74117b2991d0addd6749e17 - Sigstore transparency entry: 1079458466
- Sigstore integration time:
-
Permalink:
flexiumai/flexium@35e3002e1ec1c42489c49013fd6155b218cfbcc0 -
Branch / Tag:
refs/tags/v0.1.2 - Owner: https://github.com/flexiumai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@35e3002e1ec1c42489c49013fd6155b218cfbcc0 -
Trigger Event:
release
-
Statement type: