Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DistroML

DistroML is an enterprise-grade distributed machine learning training framework designed to accelerate large-scale deep learning workloads across multiple GPUs, nodes, and cloud environments. It focuses on scalability, fault tolerance, communication efficiency, and observability, enabling faster and more reliable training of modern ML models.

⚠️ Project Status:
DistroML is under active development. The current repository contains the initial project structure and design foundations. Core features are being implemented incrementally according to the roadmap below.


✨ Key Features (Planned & In Progress)

  • Hybrid Parallelism Engine
    Automatic selection and combination of data, model, and pipeline parallelism based on model architecture and hardware topology.

  • Efficient Communication Layer
    Support for NCCL, Gloo, and MPI with topology-aware routing and optimized AllReduce operations.

  • Smart Gradient Compression
    Adaptive compression techniques (Top-K sparsification, quantization, PowerSGD, 1-bit SGD) to reduce communication overhead by 5–10× with minimal accuracy loss.

  • Fault-Tolerant Training
    Automatic checkpointing, incremental snapshots, elastic recovery, and graceful handling of node or GPU failures.

  • Real-Time Monitoring & Control Plane
    Web-based dashboard for tracking training metrics, GPU utilization, cluster health, and cost efficiency in real time.

  • Kubernetes-Native Orchestration
    Production-ready deployment using Kubernetes operators, auto-scaling, and cloud-agnostic configuration.

  • Multi-Framework Support
    Designed to integrate with PyTorch (primary), TensorFlow, JAX, and Hugging Face Transformers.


🧠 Why DistroML?

Training modern deep learning models is bottlenecked by:

  • Communication overhead across GPUs and nodes
  • Poor fault tolerance in long-running jobs
  • Inefficient resource utilization
  • Limited observability and cost visibility

DistroML addresses these challenges by combining systems-level optimization with ML-aware scheduling and monitoring, enabling faster experiments, lower costs, and more reliable production training.


🚀 Getting Started (Early Setup)

Full installation and usage guides will be added as core components are implemented.

git clone https://github.com/keshavgarg616/DistroML.git

🏗️ Repository Structure

DistroML/
├── benchmarks/     # Performance benchmarks and scaling experiments
├── docs/           # Architecture docs, design notes, and guides
├── examples/       # Example training scripts and configurations
├── src/            # Core framework implementation
├── tests/          # Unit and integration tests
├── .gitignore
└── README.md

🛠️ Tech Stack
Core

Languages: Python 3.10+, C++17, CUDA C++

ML Frameworks: PyTorch 2.x (primary), TensorFlow, JAX

Distributed Computing: NCCL, Gloo, OpenMPI, Ray

GPU Programming: CUDA, cuDNN

Backend & Orchestration

APIs: FastAPI, gRPC

Orchestration: Kubernetes, Helm, Docker

Storage: PostgreSQL, MinIO / S3, etcd

Monitoring & MLOps

Metrics: Prometheus, Grafana

Tracing & Logs: Jaeger, Elastic Stack

Experiment Tracking: MLflow, Weights & Biases (planned)

About

DistroML is an enterprise-grade distributed machine learning training framework designed to accelerate deep learning workflows across multiple GPUs, nodes, and cloud environments.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages