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
flexium.init()

# 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

Minimal code changes. Zero downtime. Zero memory residue.

Features

  • Live Migration - Move training between GPUs on the same server without stopping
  • Zero Code Changes - Just wrap your training loop
  • Zero Memory Residue - Source GPU is completely freed
  • PyTorch & Lightning - Works with PyTorch and PyTorch Lightning
  • Web Dashboard - Visual GPU management and monitoring
  • Pause/Resume - Temporarily free GPU, resume on any available GPU

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
flexium.init()

# 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                        │
│                                                              │
│   flexium.init()                                            │
│   model.train()   ◄─── Training runs normally               │
└─────────────────────────────────────────────────────────────┘
                              │
                              │ Heartbeat
                              ▼
┌─────────────────────────────────────────────────────────────┐
│                   FLEXIUM SERVER                             │
│                                                              │
│   Monitors your GPUs and coordinates migrations             │
│   - Web dashboard for visual management                     │
│   - One-click migration between GPUs                        │
│   - Pause/resume training jobs                              │
└─────────────────────────────────────────────────────────────┘

When migration is triggered (via dashboard or CLI), Flexium:

  1. Captures complete GPU state at driver level (driver 580+)
  2. Frees source GPU completely (0 MB residue)
  3. Restores on target GPU seamlessly

Your training code never knows it moved.

Use Cases

GPU Sharing

import flexium
flexium.init()
# Free up GPUs for teammates without killing your job
train_model()  # Can be migrated via dashboard anytime

Resource Optimization

import flexium
flexium.init()
# Move jobs between GPUs based on memory requirements
train_model()  # Migrate to GPU with more VRAM when needed

Pause for Priority Jobs

import flexium
flexium.init()
# Pause your job to free GPU, resume later
train_model()  # Pause via dashboard, resume on any GPU

Requirements

  • Python 3.8+
  • PyTorch 2.0+
  • NVIDIA GPU with driver 580+
  • CUDA 12.4+
  • 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.0a4.tar.gz (69.5 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.0a4-py3-none-any.whl (74.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flexium-0.2.0a4.tar.gz
  • Upload date:
  • Size: 69.5 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.0a4.tar.gz
Algorithm Hash digest
SHA256 d77df81ab600bf727b7827b94a071a731f6b7e612508f9ec37cd7c5a67ab8c04
MD5 43c59a6e08bc4b703882a97537e176a4
BLAKE2b-256 9f796a129d39fd84c1184e00a1a6816610171e4f477663360170cea8bba06115

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexium-0.2.0a4.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.0a4-py3-none-any.whl.

File metadata

  • Download URL: flexium-0.2.0a4-py3-none-any.whl
  • Upload date:
  • Size: 74.1 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.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 3bf5b3826f6ffcf7a264be267ae2f31bfc1e3877173e5ba94dac95e7c4f94b97
MD5 74286e4a6e058d88335ce44f5275152b
BLAKE2b-256 535d3316d210f6cf99cf1b006f4c366740a5159b593bb1fb2fcc094a63bef7fb

See more details on using hashes here.

Provenance

The following attestation bundles were made for flexium-0.2.0a4-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