Use Cases
Examples By Category
Multiprocessing
Distributed Python examples for queues, pools, pipelines, and shared state
Data
Distributed data sharing with a DDict-focused walkthrough
Telemetry
Collect and inspect Dragon runtime and application metrics
Workflow
Workflow patterns for AI loops, MPI orchestration, Parsl, and Batch DAGs
AI
AI examples for data loading, agents, and inference-oriented workflows
Tutorials
Data processing
Process a large dataset in parallel
Orchestrating processes
Orchestrate executing a serial executable with many different arguments
Orchestrating MPI applications
Orchestrate a parameter sweep for an MPI application
Distributed PyTorch
Set up PyTorch distributed launch, rank info, and data loading on GPUs
Resiliency with DDict Checkpointing
Track application state to enable fault tolerance and recovery
Running across nodes
Run on a collection of servers or a supercomputer
Jupyter
Use a Jupyter notebook with Dragon
Controlling GPU Affinity
Running functions and processes that use specific GPUs
Telemetry with Grafana
Visualize and analyze system and custom metrics
Workflows
Build a simple end-to-end workflow with Batch, DDict, and external jobs
Running multi-system workflows
Connect and run workflows across multiple systems
Building AI Agents
Multi-agent LLM pipelines with tools, HITL, and tracing
Inference Service
Serve shared vLLM backends with Dragon queues and GPUs
Batch
Schedule parallel tasks and DAG-shaped dependencies with the Batch API
Debugging
Use Dragon logging to inspect runtime behavior and application issues
Tutorial 1
First tutorial for using Dragon