Skip to main content

Flexium.AI - Flexible Resource Allocation for GPU training with live migration

Project description

Flexium Logo

Flexium

Zero-downtime GPU migration for PyTorch training
Move running training jobs between GPUs without stopping them.

PyPI version Python versions License

Quick StartFeaturesHow It WorksSign 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:

  1. Captures complete GPU state at driver level
  2. Frees source GPU completely (0 MB residue)
  3. 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

Documentation

Support

License

Apache 2.0 - See LICENSE for details.


Built with ❤️ by the Flexium team
flexium.ai

Project details


Download files

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

Source Distribution

flexium-0.2.0a1.tar.gz (68.2 kB view details)

Uploaded Source

Built Distribution

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

flexium-0.2.0a1-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file flexium-0.2.0a1.tar.gz.

File metadata

  • Download URL: flexium-0.2.0a1.tar.gz
  • Upload date:
  • Size: 68.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for flexium-0.2.0a1.tar.gz
Algorithm Hash digest
SHA256 b8684bc629097e4860a58c306e176fcaf268c0ba57fef717fa0bb2c04cf473c0
MD5 85bc9fc20ff9c9d872d618e899556233
BLAKE2b-256 e442ad419d6616983054d7324614d182829e3a0b2b986b1e25132ed33dd52e8b

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexium-0.2.0a1.tar.gz:

Publisher: publish.yml on flexiumai/flexium

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

File details

Details for the file flexium-0.2.0a1-py3-none-any.whl.

File metadata

  • Download URL: flexium-0.2.0a1-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for flexium-0.2.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 30d92cbdf3ae033ebdb9aec0fc0ba43acb238af9cbd9c01d7b3d73337321f251
MD5 ca2c83f8f332d689088e1733b8310422
BLAKE2b-256 3f9fcd5ac0d528630104a873c80e16d16cc81ac241bfb284d31ea1ca39f03ffe

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexium-0.2.0a1-py3-none-any.whl:

Publisher: publish.yml on flexiumai/flexium

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