ML Training Failure Encyclopedia
Every failure class Denpex diagnoses — with the root cause, the exact fix, and how to prevent it. Searchable, referenceable, and built from thousands of real distributed training incidents.
Training Stability
66NaN Detection and Skip
highNaN detection and skipping prevents corrupted gradients from propagating but requires careful implementation....
LR Without Warmup or Decay
highTraining without learning rate warmup or decay causes slow convergence and poor final performance....
Learning Rate Finder Result Misuse
mediumMisusing the results of a learning rate finder causes poor training setup choices....
Gradient Accumulation BatchNorm Issue
highGradient accumulation with BatchNorm causes incorrect normalization because BN computes statistics on smaller sub-batches....
Label Noise Training Issue
highLabel noise in training data causes poor model generalization and unexpected training behavior....
Spectral Norm Clipping
mediumSpectral norm clipping for GAN training has different requirements than gradient clipping for other models....
Weight Decay Misconfiguration
mediumWeight decay misconfiguration causes overfitting, underfitting, or training instability depending on the wrong choice....
EMA Decay Misconfiguration
mediumExponential Moving Average (EMA) decay misconfiguration causes poor model averaging and training instability....
Lookahead Optimizer Issues
mediumLookahead optimizer issues arise from improper k (inner steps) or alpha (slow weight) values that destabilize training....
Ranger Optimizer Issues
lowRanger optimizer combines RAdam and Lookahead; misconfiguration can cause training instability or poor convergence....
Adafactor Optimizer Issues
lowAdafactor optimizer issues arise from incorrect epsilon, scaling factor, or relative step handling....
SAM (Sharpness-Aware Minimization) Optimizer Issues
mediumSAM optimizer issues arise from the two-forward-pass requirement, learning rate issues, or rho misconfiguration....
Lion Optimizer Issues
lowLion optimizer issues arise from incorrect learning rate (typically 3-10x lower than Adam) or momentum configuration....
AMP BF16 vs FP16 Confusion
lowBF16 and FP16 mixed precision have different numerical properties; choosing the wrong one causes instability or wasted memory....
Spectral Normalization Collapse
mediumSpectral normalization can cause mode collapse or training failure when applied incorrectly to GANs....
SWA (Stochastic Weight Averaging) Training
lowSWA training issues arise from incorrect averaging frequency, learning rate schedule for SWA, or BN update steps....
Polyak Averaging Issues
lowPolyak averaging issues arise from incorrect averaging window, frequency, or weight initialization....
Curriculum Learning Issues
mediumCurriculum learning issues arise from poorly designed difficulty progression that hurts rather than helps training....
Cyclic LR Scheduler Issues
lowCyclic LR scheduler issues arise from incorrect base/max LR, step size, or mode (triangular, triangular2, exp_range)....
One-Cycle Policy Issue
lowOne-cycle policy issues arise from incorrect max_lr, momentum range, or training duration that destabilize training....
Layer Norm Weight Decay
lowApplying weight decay to LayerNorm and bias parameters hurts training and can prevent convergence in transformers....
Fine-Tuning Failure
highFine-tuning failures occur when pretrained model knowledge is destroyed by aggressive learning rates or insufficient data....
Loss Curve Anomaly
mediumLoss curve anomalies (spikes, plateaus, oscillations) indicate underlying training issues that need diagnosis....
Warmup Missing
mediumMissing warmup causes early training instability, especially with large learning rates or transformer models....
NaN Loss
criticalNaN loss in training is critical because it propagates through all parameters and corrupts the model permanently....
Gradient Clipping Missing
mediumMissing gradient clipping causes gradient explosion in RNNs, transformers, and GANs....
Mixed Precision Loss Scale
mediumMixed precision loss scale issues occur when GradScaler doesn't update properly, causing underflow or overflow in FP16 training....
LR Too High
highLearning rate too high causes training instability, loss divergence, or NaN loss....
Gradient Explosion
highGradient explosion causes loss spikes, NaN loss, and training instability, especially in RNNs and deep networks....
Loss Not Decreasing
highLoss not decreasing indicates fundamental training issues: wrong LR, broken model, bad data, or wrong loss function....
Cosine Annealing Issue
lowCosine annealing issues arise from incorrect min_lr, T_max, or warm restarts that cause poor convergence....
LR Too Low
mediumLearning rate too low causes slow convergence, plateau at high loss, or training to appear stuck....
Mixed Precision Overflow
highMixed precision overflow occurs in FP16 training when values exceed FP16 range (65504), causing inf/NaN....
Init Seed Mismatch
lowDifferent random seeds across runs cause non-reproducible results, making experiments hard to compare....
Runtime Error (Generic)
highGeneric runtime errors can indicate various issues from code bugs to hardware problems....
PyTorch torch.compile Error
hightorch.compile errors crash training when the compiled graph has issues with the model or hardware....
PyTorch JIT Compile Error
highPyTorch JIT compilation errors crash training when the script or model uses unsupported features....
AdamW Weight Decay Misconfiguration
highAdamW weight decay misconfiguration causes poor generalization or unstable training....
Adam Epsilon Hyperparameter Issue
mediumAdam epsilon hyperparameter issues cause training instability or poor convergence....
SGD Momentum Configuration Issue
highSGD momentum misconfiguration causes training to oscillate, diverge, or converge slowly....
EMA Checkpoint Issue
mediumEMA (Exponential Moving Average) checkpoint issues cause problems with model averaging across checkpoints....
LR Warmup-Decay Schedule Issue
mediumLR warmup-decay schedule issues cause training instability at transitions between phases....
Wrong Weight Initialization
highWrong weight initialization causes training instability with NaN losses, slow convergence, or dead neurons....
EMA Decay Too High
mediumEMA (Exponential Moving Average) decay values that are too high or too low cause poor model averaging....
Gradient Accumulation Misuse
mediumGradient accumulation misuse causes incorrect gradient updates or memory issues....
DeepSpeed fp16: Current loss scale already at minimum
highPersistent fp16 overflow drives the dynamic loss scale down to its minimum and DeepSpeed aborts — typically a bf16-pretrained model being fine-tuned in fp16 on hardware without bf16....
DeepSpeed bf16 Gradient Norm Underflow
highDeepSpeed's bf16 training can trigger 'assert all_groups_norm > 0' because bf16 gradient norms can underflow to zero. This is a numerical precision issue specific to bf16's limited range. Denpex detec...
DeepSpeed NaN from overlap_comm + contiguous_gradients
highEnabling both overlap_comm and contiguous_gradients in DeepSpeed ZeRO-3 causes gradient buffer reuse races that produce NaN losses. This is a known DeepSpeed bug where the communication overlap reads ...
CUDA Device-Side Assert Triggered
highA CUDA kernel hit a device-side assertion — almost always an out-of-bounds index into an embedding, loss, or gather/scatter op. Because CUDA is asynchronous, the reported stack trace points at an unre...
Unsloth/TRL Warning: attention implementation not flash_attention_2 with packing
lowWhen fine-tuning with Unsloth + TRL using sample packing or padding-free training, the trainer warns that the attention implementation is not flash_attention_2 even though it was configured. Flattened...
Unsloth Fused Loss Breaks with Transformers average_tokens_across_devices=True
highMulti-GPU fine-tuning with Unsloth breaks when the Transformers default average_tokens_across_devices=True multiplies the loss by num_processes. The Unsloth fused-loss backward does not expect that sc...
GRPO/vLLM: 'Inference tensors cannot be saved for backward'
highGRPO training that feeds vLLM-generated tensors into the trainable graph fails with 'Inference tensors cannot be saved for backward'. vLLM produces tensors under torch.inference_mode(), which cannot e...
Unsloth Gemma 3: 'Gemma3ModelOutputWithPast' object has no attribute 'loss'
highFine-tuning Gemma 3 with Unsloth crashes with AttributeError: 'Gemma3ModelOutputWithPast' object has no attribute 'loss'. A transformers change to the Gemma3 output class outran Unsloth_zoo's patch, w...
Megatron-LM Hangs at Fused Kernel Compilation
mediumMegatron-LM training hangs at startup while compiling fused kernels (right after 'using torch.float16 for parameters ...') and never proceeds. A stale or contended megatron/fused_kernels/build directo...
ValueError: Another Profiling Tool Is Already Active
lowEnabling PyTorch Lightning's profiler raises 'ValueError: Another profiling tool is already active'. Python's cProfile allows only one active profiler per thread, so a second cProfile-based profiler (...
PyTorch Lightning + torch.compile: MisconfigurationException on self.log
mediumTraining a Lightning model with torch.compile crashes in the logger connector with a 'called self.log twice with different arguments' MisconfigurationException raised inside the compiled region. Dynam...
DeepSpeed Training Hangs at Start with HuggingFace auto_find_batch_size
mediumDeepSpeed (ZeRO offload) training with HuggingFace Trainer auto_find_batch_size=True hangs right after model load at 0/N steps. The batch-size auto-search re-initializes the engine and desynchronizes ...
Gradient Explosion
highGradient explosions cause loss to diverge to NaN. Denpex traces the norm spike to the layer and step....
NaN Loss During Training
highNaN loss corrupts training state. Denpex traces NaN propagation to the originating layer....
Weight Divergence Across Ranks
criticalWeight divergence silently corrupts distributed training. Denpex detects divergence by comparing per-rank weight snapshots....
Infinity Loss / Inf Weights
criticalInfinity loss or weights occur when loss values overflow to infinity, often from numerical instability in mixed-precision training....
Zero Gradient / Dead Neurons
highZero gradients stall training when ReLU neurons die or gradient flow is broken in the network....
Loss Plateau / Training Stalled
highLoss plateaus occur when training stops making progress, often due to suboptimal hyperparameters or model architecture issues....
Gradient Explosion Caused by Corrupted All-Reduce (Not Learning Rate)
highGradient norms explode suddenly while loss remains normal because the cross-rank reduction itself is corrupting values — in-network reduction (SHARP) faults, NCCL data corruption over a marginal link,...
CUDA Device-Side Assert from Tokenizer/Embedding Vocab Mismatch
highindexSelectLargeIndex: srcIndex < srcSelectDimSize assertion fires when input token ids exceed the embedding table size — the standard outcome of pairing a tokenizer that has added tokens with a model...
NaN Loss from TransformerEngine FP8 Scaling Saturation
highFP8 training with delayed scaling produces NaNs when an activation outlier saturates the scaling factor (amax history too short / margin too small). Loss and gradients are healthy until the exact step...
Communication
57NCCL CUDA Failure
criticalNCCL CUDA failures occur when the underlying CUDA runtime has issues, causing all NCCL operations to fail....
NCCL P2P Disabled
mediumNCCL P2P (peer-to-peer) communication can be disabled, forcing fallback to slower transport....
NCCL Hang Detection
highNCCL hangs can be hard to detect because they don't produce errors until the watchdog timeout. Proper monitoring helps catch them early....
NCCL Wrong Rank Configuration
criticalWrong rank configuration in NCCL causes collectives to fail or produce incorrect results when rank assignments don't match expectations....
NCCL P2P Communication Issue
highNCCL peer-to-peer (P2P) communication issues cause pipeline parallelism and tensor parallelism to fail or be slow....
Gloo Backend Issue
mediumGloo backend issues occur when using Gloo instead of NCCL for distributed training, especially on CPU or limited GPU setups....
TCP Port Exhaustion
mediumTCP port exhaustion occurs in distributed training when many connections exhaust ephemeral port range....
TorchElastic Error
highTorchElastic errors occur when training jobs need to be elastic (resize dynamically) but configuration is wrong....
Horovod Setup Error
highHorovod setup errors occur when MPI or NCCL integration is misconfigured, preventing elastic or multi-GPU training....
NCCL IB HCA Mismatch
mediumNCCL InfiniBand HCA (Host Channel Adapter) configuration mismatches cause slow or failed inter-node communication....
NCCL IPv6 Issue
lowNCCL IPv6 issues occur when NCCL tries to use IPv6 but the network only supports IPv4, or vice versa....
Pipeline Parallel Bubble
mediumPipeline parallelism has idle time (bubble) at start and end of each pipeline, reducing efficiency for small models or small micro-batches....
AWS EFA Driver Issue
highAWS EFA (Elastic Fabric Adapter) driver issues cause NCCL to fall back to slower TCP/IP for inter-node communication....
DDP Port Conflict
highDDP port conflicts prevent distributed training from starting when the master port is already in use....
RDMA Configuration Issue
mediumRDMA configuration issues prevent high-bandwidth, low-latency inter-node communication in GPU clusters....
NCCL Rank Fail
highNCCL rank failures occur when one or more ranks fail to initialize or join the distributed group....
NCCL Version Mismatch
mediumNCCL version mismatches between nodes cause collective operations to fail or hang in distributed training....
DDP Setup Error
highDDP setup errors occur when distributed data parallel training is not properly configured, preventing multi-GPU training....
NCCL Bucket Size Mismatch
lowNCCL bucket size mismatches in DDP cause inefficient gradient reduction, hurting performance....
All-Reduce Deadlock
highAll-reduce deadlocks occur when DDP/FSDP all-reduce operations are mismatched across ranks or with batch norm....
NCCL Error 2: Internal Error
highNCCL error 2 is an internal assertion failure in NCCL itself, often from corrupted state or hardware issues. Denpex correlates with hardware diagnostics....
NCCL Initialization Timeout
criticalNCCL initialization times out when nodes cannot establish the communication channel within the allowed time....
NCCL Bad RDMA Performance
highNCCL RDMA performance degrades when GPUDirect RDMA is unavailable or misconfigured, causing slow multi-node training....
NCCL Asynchronous Error Handling
highNCCL asynchronous error handling issues cause silent failures or deadlocks when collective errors are not properly handled....
NCCL GPUDirect over RoCE
highNCCL GPUDirect over RoCE (RDMA over Converged Ethernet) requires proper configuration for high performance....
NCCL P2P Bandwidth Issue
mediumNCCL point-to-point bandwidth issues cause slow intra-node GPU communication when P2P is disabled or limited....
NVLS Multicast Slot Exhaustion (NVSwitch)
highNCCL exhausts the NVSwitch's fixed pool of NVLink SHARP (NVLS) multicast slots, then treats the binding failure as fatal instead of falling back to a non-NVLS transport....
RoCE QP Timeout During Distributed Checkpoint Save
highNCCL queue-pair creation times out specifically during distributed checkpoint save at large scale on RoCE, while normal training collectives succeed....
ncclUnhandledCudaError: Cuda failure 999 'unknown error'
highA generic CUDA 'unknown error' (999) surfaces during NCCL communicator initialization, usually pointing to a GPU in a bad state or a driver/runtime mismatch rather than an NCCL bug....
broadcast_coalesced Fails with Cuda failure 1 'invalid argument'
mediumDataParallel model replication fails at the SharedInit step with a CUDA invalid-argument error, often tied to legacy nn.DataParallel inside complex launchers....
FSDP ncclSystemError on InfiniBand (works on TCP)
highFSDP all-gather fails with ncclSystemError on one node during collective init over InfiniBand, while a TCP fallback succeeds — pointing to a per-node fabric or plugin issue....
NCCL RAS Query Crashes Job (Memory Corruption, 2.27.3)
highQuerying the NCCL RAS subsystem during training on NCCL 2.27.3 returns corrupted communicator data and can crash the job via TCPStore connection failures....
NVLS Cuda failure 1 'invalid argument'
highNCCL's NVLink SHARP (NVLS) transport repeatedly warns with CUDA 'invalid argument' during setup on H100-class nodes, usually resolved by disabling NVLS or aligning the CUDA/NCCL stack....
NCCL 'Could not find NET with id 0' (NIC Fusion)
highIntermittent NCCL internal errors during init on partial-node allocations, caused by the NIC-fusion feature remapping NET IDs so the hardcoded fallback NET/0 no longer exists....
NCCL RoCE GID Read Failed (Invalid argument)
highNCCL fails to read the RoCE GID on containerized/macvlan setups because GID iteration starts at index 0 where leading entries are all-zero, returning EINVAL....
ncclCommSplit Segfault with Non-Blocking Init
highA dangling group-job pointer causes a segfault during ncclCommSplit when using threads with non-blocking communicator init; fixed in NCCL 2.26.2....
NCCL RAS Race Segfault During Initialization
highA race in the NCCL RAS subsystem segfaults during init when a RAS command runs before peer info is populated; fixed in NCCL 2.27.3....
NCCL NVLS Memory Corruption with Dual-Port NICs
highNVLS did not support dual-port NIC transmission, producing duplicate head-rank entries in the proxy loop and heap corruption; fixed in NCCL 2.19.4....
NCCL Random Segfault from Out-of-Order NIC Names
highInconsistent NIC enumeration (e.g. mlx5_3 before mlx5_0) on one node breaks NCCL topology detection and causes random multi-node segfaults; fixed in NCCL 2.23.4....
NCCL socketStartConnect: Software caused connection abort
mediumA stale socket file descriptor is reused on retry after a failed connect, triggering ECONNABORTED during NCCL communicator init; fixed in NCCL 2.24....
NCCL P2P Fails on RTX 5090 / Blackwell (SM120)
mediumNCCL P2P topology detection lacks SM120 (Blackwell) support, using a wrong shared-memory maximum so peer-to-peer connections fail on RTX 5090....
NCCL MNNVL Init Segfault at Large World Size (Stack Overrun)
highOn GB200 NVL72, NCCL's recursive MNNVL topology search overruns the stack at world_size >= 44, especially with ulimit -s unlimited; fixed in NCCL 2.28....
NCCL Proxy Connect Failed (IPv6 Interference)
mediumNCCL's proxy thread tries to connect over IPv6 while the peer only answers on IPv4, producing 'Proxy Connect failed' on dual-stack hosts....
NCCL Hangs with Exactly Three InfiniBand NICs
mediumNCCL's NIC selection/path-finding can deadlock when a node has an odd number of HCAs (specifically three), while 1, 2, or 4+ work fine....
RoCE MTU Mismatch — Completion Error 12 / Vendor Err 129
criticalRoCE MTU mismatches between the NIC and switch cause NCCL RDMA queue-pair errors (completion error 12, vendor error 129). Training hangs or crashes during NCCL init or the first collective. Denpex det...
NCCL Mismatched Collective — Different Ranks Executing Different Operations
criticalNCCL mismatched collective errors occur when different ranks call different collective operations or call the same collective with different parameters. This is a programming error, not a hardware fau...
OFI Memlock Exhaustion — RDMA Memory Registration Failure
criticalNCCL's OFI (OpenFabrics Interface) transport fails to register memory for RDMA when the OS memlock limit is too low. Training crashes at NCCL init with 'Unable to register memory RC:12'. Denpex detect...
ACS Disabled — GPU Direct RDMA Failure (Vendor Err 81)
highWhen Access Control Services (ACS) is disabled in the BIOS, GPU Direct RDMA (GDR) fails with RDMA completion error 4 and vendor error 81. NCCL performance degrades severely or training crashes. Denpex...
NCCL Topology XML Missing NIC Bus ID
highNCCL topology detection fails when the NIC's PCI bus ID is missing from the system topology XML. This causes NCCL to fall back to a suboptimal transport or fail to use GPU Direct RDMA. Denpex detects ...
NCCL BUFFSIZE Oversized — Socket Transport Stall
mediumSetting NCCL_BUFFSIZE too large causes NCCL Socket transport to stall or hang during communication. This is a configuration error where users increase the buffer size hoping for better performance but...
NCCL Topology Detection Regression (v2.18.3+)
highNCCL v2.18.3 introduced a topology detection regression that misidentifies GPU-NIC affinity on some systems, causing NCCL to use a suboptimal communication path. Denpex detects the regression from NCC...
NCCL AllReduce Hang
criticalNCCL allreduce hangs stall training when collective operations can't complete. Denpex identifies the stuck rank or rank pair....
NCCL Communication Timeout
criticalNCCL communication timeouts abort training when collective operations take too long to complete....
NCCL Initialization Error
criticalNCCL initialization errors prevent distributed training from starting due to network or configuration issues....
NCCL Rank Stuck / Straggler
highNCCL rank stuck errors occur when one rank cannot keep up with the collective operation, slowing down all ranks....
NCCL Version Conflict
highNCCL version conflicts prevent proper collective operations when nodes have different versions installed....
DNS Resolution Failure Cascading into Rendezvous and NCCL Bootstrap Errors
highWhen cluster DNS degrades, every layer above it fails with ITS own vocabulary: gaierror in python, client-socket failures in torch.distributed, bootstrap failures in NCCL. Teams debug the fabric while...
Data Pipeline
49Augmentation Pipeline Error
highAugmentation pipeline errors cause inconsistent or corrupted training data when transforms fail or produce unexpected outputs....
TorchData Pipeline Error
mediumTorchData (torch.utils.data.datapipes) errors occur when complex data pipelines have configuration or compatibility issues....
HDF5 Data Corruption
highHDF5 file corruption causes training to fail with I/O errors or silently load incorrect data....
Arrow IPC Format Error
mediumApache Arrow IPC errors occur when serialized Arrow data is corrupted or has version incompatibilities....
TFRecord / tf.data Error
mediumTFRecord and tf.data errors occur when TensorFlow data pipeline has issues with the training data or pipeline configuration....
ImageNet Preprocessing Mismatch
mediumImageNet preprocessing mismatches cause pretrained models to underperform because input normalization differs from training....
WebDataset TAR Corruption
mediumWebDataset TAR file corruption causes data loading failures and missing samples during training....
Augmentations Too Aggressive
mediumOverly aggressive data augmentations hurt model performance by distorting critical features in training data....
MMap File Handle Exhaustion
mediumMemory-mapped (mmap) file handles are exhausted when datasets have many large files, causing data loading failures....
Shuffle Buffer Too Small
lowSmall shuffle buffers cause poor data ordering during training, hurting model generalization....
Tokenizer Padding Mismatch
mediumTokenizer padding mismatches cause data loader errors or poor model performance when padding side or token ID differs....
Audio Sample Rate Mismatch
mediumAudio sample rate mismatches between training data and pretrained models cause poor ASR/TTS performance....
Parquet Schema Mismatch
mediumParquet schema mismatches occur when reading parquet files with different schemas than expected by the loading code....
Streaming Data Error
mediumStreaming data errors occur when loading data from cloud storage or remote endpoints fails mid-training....
Video Codec Mismatch
mediumVideo codec mismatches between training data and pretrained video models cause loading failures or poor performance....
TFRecord Corrupted Shard
mediumTFRecord corrupted shard errors occur when individual TFRecord files are truncated or have inconsistent examples....
LMDB Corruption
mediumLMDB corruption occurs when LMDB files are not properly closed, transactions interrupted, or map_size exceeded....
RAG Embedding Mismatch
mediumRAG embedding mismatches cause retrieval to return irrelevant documents when embedding model differs between indexing and query....
Multi-Label Class Imbalance
mediumMulti-label class imbalance causes poor performance on rare labels and biased predictions toward frequent labels....
Contrastive Learning Augmentation
mediumContrastive learning augmentation pipelines must be carefully tuned to create useful positive pairs without destroying semantic content....
Image Resize Artifacts
lowImage resize artifacts degrade model accuracy when resize method (BILINEAR, BICUBIC, LANCZOS) doesn't match pretrained model expectations....
LLM Tokenization Truncation
mediumLLM tokenization truncation silently cuts long sequences, causing loss of information in long documents....
Data Versioning Issue
mediumData versioning issues occur when training data changes between runs without tracking, making results non-reproducible....
Dataset Bias
highDataset bias causes models to learn spurious correlations that don't generalize to real-world data....
Validation Set Leakage
highValidation set leakage causes overly optimistic metrics because training data includes validation samples....
Tokenizer Version Mismatch
mediumTokenizer version mismatches between training and inference cause different token IDs for same text, breaking model behavior....
Image Corruption Detection
mediumImage corruption detection helps identify and skip/fix corrupted images that would otherwise crash training....
Determinism Broken
mediumBroken determinism causes non-reproducible training runs, making debugging and comparison difficult....
Multi-Task Learning Conflict
mediumMulti-task learning conflicts arise when tasks have different scales, gradients, or learning dynamics that destabilize training....
Missing Data Augmentation
mediumMissing data augmentation causes overfitting and poor generalization, especially on small datasets....
Class Imbalance
highClass imbalance causes models to predict majority class and have poor performance on minority classes....
Audio Channel Mismatch
mediumAudio channel mismatches (mono vs stereo) cause model errors or poor performance in audio ML pipelines....
Text Encoding Mismatch
mediumText encoding mismatches (UTF-8 vs Latin-1) cause data loading failures or corruption in NLP training....
Tokenization Error
mediumTokenization errors occur when text data has issues that prevent proper tokenization....
HuggingFace Tokenizer Error
mediumHuggingFace tokenizer errors crash training when tokenizer configuration mismatches model architecture....
Data Augmentation Error
mediumData augmentation errors occur when augmentation libraries fail or produce corrupted outputs....
Python Multiprocessing Fork Issue
highPython multiprocessing fork issues cause workers to deadlock or share state incorrectly across ranks....
PyTorch Multiprocessing Error
highPyTorch multiprocessing errors prevent DataLoader workers from functioning correctly....
Dataloader num_workers=0 Too Slow
mediumDataLoader with num_workers=0 is often too slow for GPU training, causing the GPU to wait for data....
Pinned Memory Transfer Issue
mediumPinned memory transfer issues cause slow GPU-CPU data transfer or OOM errors....
BatchNorm DDP Synchronization Issue
highBatchNorm synchronization issues in DDP cause inconsistent statistics between ranks and degraded model quality....
WebDataset Error
highWebDataset errors occur when streaming dataset format has corrupted shards or URL issues....
Tokenizer Padding and Truncation Error
mediumTokenizer padding and truncation errors cause sequence length mismatches and OOM during training....
Audio Data Loading Error
mediumAudio data loading errors occur when audio files are corrupted, format unsupported, or sample rates mismatch....
PyTorch Lightning Fault-Tolerant Resume Fails with DataLoader num_workers>1
mediumResuming a run with PyTorch Lightning's experimental fault-tolerant training raises a MisconfigurationException about the worker state when the DataLoader uses num_workers>1. The feature never reliabl...
Unsloth SFTTrainer: 'int' object has no attribute 'mask_token'
mediumConstructing an Unsloth SFTTrainer (often in Colab) raises AttributeError: 'int' object has no attribute 'mask_token'. The crash comes from API drift between Unsloth's patched trainer __init__ and a n...
HuggingFace datasets .map() 'subprocess abruptly died' on Windows
mediumDataset preprocessing with datasets.map(num_proc>1) crashes on Windows with 'One of the subprocesses has abruptly died during map operation'. Windows uses spawn rather than fork, so non-picklable map ...
Dataloader Worker Failure
highDataloader worker failures stall training or produce corrupted batches....
Data Pipeline / DataLoader Stalls
mediumTraining is bottlenecked or completely halted due to the DataLoader failing to fetch the next batch in time....
Memory
46CPU Offloading Overhead
mediumCPU offloading reduces GPU memory but adds significant CPU-GPU transfer overhead, slowing training....
Activation Memory Spike
highActivation memory spikes during specific operations cause transient OOM even when steady-state memory fits....
Memory Summary Tool Usage
lowtorch.cuda.memory_summary() helps debug memory issues but output can be overwhelming without understanding it....
PyTorch Caching Allocator Debug
lowDebugging PyTorch's caching allocator helps identify memory issues but requires understanding its behavior....
CPU RAM Exhaustion During Training
highCPU RAM exhaustion during training kills the process or causes swapping that drastically slows training....
Gradient Accumulation Memory Spike
mediumGradient accumulation can cause unexpected memory spikes when scaled batch size is large or loss is not properly reduced....
Memory Leak in DataLoader
highMemory leaks in DataLoader workers cause steadily growing memory usage over training epochs....
CUDA Graph Memory Trap
mediumCUDA Graphs capture memory allocations that are hard to release, causing memory leaks across graph replays....
KV Cache Memory Growth
mediumKV cache memory grows with sequence length in transformer inference and some training setups, causing OOM at long contexts....
Inference Memory Leak
highInference memory leaks cause growing GPU memory usage during serving, eventually OOM-ing the server....
Pinned Memory Overuse
mediumPinned (page-locked) memory overuse causes system RAM exhaustion and slow CPU-GPU transfers when over-allocated....
Activation Distillation Memory
mediumActivation distillation memory costs grow with teacher model size and student hidden dimension matching requirements....
Flash Attention Memory
lowFlash Attention saves memory by not materializing the full attention matrix, but has shape and dtype constraints....
Transformer Cache Memory
mediumTransformer cache (KV cache, past_key_values) memory grows with sequence length and can cause OOM at inference....
Dataset Cache Memory
mediumDataset cache memory usage grows when transformations or augmentations are applied before batching....
Gradient Checkpointing Tradeoff
mediumGradient checkpointing trades compute for memory; misconfiguration can either not save memory or drastically slow training....
torch.compile Memory
mediumtorch.compile can use additional memory for graph compilation, guard evaluation, and dynamic shape handling....
cuDNN Benchmark Memory
lowcuDNN benchmark mode can use more memory for algorithm search, and not all algorithms work with all configs....
Tensor Parallel Memory
mediumTensor parallel training splits model across GPUs, but communication buffers and synchronization can still cause OOM....
Checkpoint Loading Memory
mediumLoading checkpoints can temporarily double memory usage because both old and new model states exist in memory....
Safetensors Load Error
lowSafetensors load errors occur from corrupted files, version mismatches, or architecture mismatches with the loading model....
Tensor Views Memory Leak
lowTensor views (slices, reshapes, transposes) can hold references to large base tensors, preventing memory release....
Pipeline Parallel Memory
mediumPipeline parallel memory issues arise from stage imbalance, bubble overhead, and activation storage across micro-batches....
DeepSpeed OOM
highDeepSpeed OOM errors occur when ZeRO partitioning, CPU offload, or activation partitioning is misconfigured....
FSDP All Gather Timeout
mediumFSDP all-gather operations can timeout when parameters are large or network is slow, causing training to fail....
CUDA Context Leak
mediumCUDA context leaks occur when CUDA contexts are not properly destroyed, accumulating GPU memory across processes....
CUDA Caching Allocator Fragmentation
mediumCUDA caching allocator fragmentation causes OOM despite enough total free memory, due to non-contiguous blocks....
Optimizer State Memory
mediumOptimizer state memory (Adam: 2x model size, AdamW: 2x) can exceed model size memory, dominating total usage....
Transformer Attention Memory
mediumTransformer attention memory grows quadratically with sequence length; long-context training requires Flash Attention or similar....
Embedding Layer Memory
mediumEmbedding layer memory grows with vocabulary size and can dominate total memory for large vocab models....
CUDA Out of Memory
criticalCUDA out of memory is the most common training error, occurring when GPU memory is exhausted....
Activation Checkpointing Compatibility
lowActivation checkpointing compatibility issues arise when using torch.compile, FSDP, or DDP with checkpointing....
Python Out of Memory
highPython OOM kills the training process when Python's heap memory is exhausted, even if GPU memory is fine....
CUDA Shared Memory Limit Exceeded
mediumCUDA shared memory limits are reached when kernels use too much shared memory per block....
CUDA Caching Allocator Issue
highCUDA caching allocator issues cause memory not being released back to the GPU when expected....
CUDA Unified Memory Error
highCUDA Unified Memory (UVM) errors cause page faults and performance issues when memory oversubscription occurs....
Activation Checkpoint Misuse
highActivation checkpointing misuse causes either OOM (not enough checkpointing) or slow training (too much checkpointing)....
DeepSpeed ZeRO Offload Host-RAM OOM (SIGKILL -9)
highZeRO CPU/NVMe offload materializes parameters and optimizer states in host RAM on every rank, exhausting system memory and getting the process OOM-killed with no Python traceback....
DeepSpeed FusedAdam Illegal Memory Access on H100
criticalDeepSpeed FusedAdam optimizer triggers CUDA illegal memory access errors on NVIDIA H100 GPUs. This is a compatibility issue between FusedAdam's CUDA kernels and H100's SM90 architecture. Denpex detect...
DeepSpeed ZeRO GPU Memory Not Freed After Training (hooks leak)
highGPU memory is not released after trainer.train()/engine teardown, so repeated training calls (CV folds, hyperparameter sweeps) leak until OOM. DeepSpeed left gradient-accumulation/backward hooks attac...
DeepSpeed ZeRO-3 High GPU Memory / OOM Loading a Large Model Without zero.Init
highFine-tuning a large model (e.g. Flan-T5-XXL 11B) with ZeRO-3 uses far more GPU memory than expected or OOMs at load because the model was constructed outside DeepSpeed's zero.Init context. Every rank ...
CUDA Memory Leak
highCUDA memory leaks accumulate over training, eventually causing OOM. Denpex tracks allocation patterns to identify leaks....
Memory Fragmentation
highMemory fragmentation causes OOM even when total free memory is sufficient, because no contiguous block is available for the allocation....
Host OOM Killed
criticalHost OOM (out of memory) kills training processes when system RAM is exhausted, often silently....
CUDA Memory Allocation Failed
highCUDA memory allocation fails when the requested memory block cannot be allocated, often due to fragmentation or insufficient total memory....
Host RAM OOM-Kill of DataLoader Workers Misread as GPU OOM
highThe kernel oom-killer (or cgroup limit) kills python workers whose RSS grew unbounded — shard caches, tokenized-in-RAM datasets, prefetch queues. Surface strings ("Out of memory", "Killed") route engi...
Environment
45Python Path Conflict
mediumPython path conflicts cause wrong module versions to be loaded, leading to subtle bugs and errors....
HuggingFace Tokenizers Rust Error
mediumHuggingFace tokenizers library uses Rust backend, which can fail with native errors not visible in Python traceback....
Python Multiprocessing Fork Issue
mediumPython multiprocessing fork issues cause CUDA context conflicts and worker process deadlocks....
Python Version Mismatch
mediumPython version mismatches between training and inference cause subtle bugs from library incompatibilities....
OpenMPI / MPI Issue
mediumOpenMPI and general MPI issues cause distributed training to fail at initialization or hang during collectives....
HuggingFace Hub Error
mediumHuggingFace Hub errors occur when downloading models or datasets fails due to auth, network, or rate limits....
SSH Key Authentication Issue
mediumSSH key authentication issues prevent passwordless login for distributed training and remote execution....
Conda Environment Conflict
mediumConda environment conflicts cause package version mismatches, broken dependencies, and hard-to-debug import errors....
PyTorch CUDA Mismatch
highPyTorch CUDA version mismatch with installed CUDA toolkit/driver causes import errors or runtime failures....
Libc Version Mismatch
mediumLibc (glibc, musl) version mismatches between training and deployment cause binary incompatibility and runtime errors....
Docker Image Mismatch
mediumDocker image mismatches between dev and production cause code to behave differently due to library versions, CUDA, or system dependencies....
GCC Version Mismatch
mediumGCC version mismatches cause C++ extension compilation failures and runtime library incompatibilities....
SSL Certificate Error
mediumSSL certificate errors prevent downloading models, datasets, or connecting to APIs in ML training pipelines....
Ulimit Too Low
mediumLow ulimit values (open files, max processes) cause data loading failures and parallel training issues....
Environment Variable Not Set
lowMissing environment variables (CUDA_VISIBLE_DEVICES, HF_TOKEN, MASTER_ADDR) cause silent failures or wrong behavior....
Connection Timeout
mediumConnection timeouts prevent model downloads, data fetches, and inter-node communication from completing....
Timezone / UTC Mismatch
lowTimezone mismatches cause confusion in distributed training logs, scheduled jobs, and time-based events....
Docker GPU Passthrough Error
highDocker containers fail to access GPUs when nvidia-docker or GPU passthrough is not properly configured....
Docker Permission Error
mediumDocker permission errors prevent containers from accessing required resources like GPUs, files, or network....
Python Import Error
mediumPython import errors prevent training from starting when modules cannot be loaded....
Type Error (Python)
mediumPython type errors crash training when incompatible types are used in operations....
Value Error (Python)
mediumPython value errors crash training when functions receive values of correct type but inappropriate value....
Key Error (Python Dictionary)
mediumPython key errors crash training when accessing dictionary keys that don't exist....
Attribute Error (Python)
mediumPython attribute errors crash training when accessing attributes that don't exist on objects....
Index Error (Python)
mediumPython index errors crash training when accessing list/tuple indices that don't exist....
PyTorch Hub Error
mediumPyTorch Hub errors prevent loading pretrained models or datasets from torch.hub....
PyTorch CUDA Error (Generic)
highGeneric PyTorch CUDA errors indicate various GPU-related issues that prevent training....
Torchvision Error
mediumTorchvision errors prevent loading pretrained vision models or using vision transforms....
Transformers Version Mismatch
highTransformers version mismatches between training and inference cause subtle bugs and performance regressions....
Unsloth Studio Streaming Chat Crashes on Python 3.13 (anyio cancel scope)
highStreaming chat completions from Unsloth Studio's OpenAI-compatible endpoint crash with a RuntimeError about exiting a cancel scope in a different task, on macOS with Python 3.13. The anyio/Starlette s...
No Matching Distribution Found for bitsandbytes on macOS
mediumInstalling a QLoRA/4-bit training stack (Axolotl, TRL, Unsloth) on macOS fails with 'No matching distribution found for bitsandbytes==0.43.0'. bitsandbytes historically shipped only CUDA Linux/Windows...
DeepSpeed ImportError: '_disable_dynamo_if_unsupported' is not defined
highImporting DeepSpeed fails with NameError/ImportError for _disable_dynamo_if_unsupported because DeepSpeed references a torch internal symbol absent from the installed torch version. Aligning the torch...
DeepSpeed async_io/aio Won't Compile on Windows
mediumInstalling DeepSpeed on native Windows fails building the async_io op because it depends on Linux libaio, which has no Windows equivalent. DeepSpeed targets Linux; use WSL2 or a Linux host, or build w...
DeepSpeed ImportError: cannot import '_get_socket_with_port' from torch.distributed.elastic
highDeepSpeed import/launch fails with 'cannot import name _get_socket_with_port from torch.distributed.elastic.agent.server.api' because DeepSpeed uses a torch internal symbol that was renamed/removed in...
UnicodeDecodeError Importing Unsloth on Windows (missing encoding=utf-8)
mediumImporting Unsloth on Windows fails with a UnicodeDecodeError because an internal open() omitted encoding='utf-8' and Windows defaults to cp1252. Upgrade Unsloth (now passes the encoding), or set PYTHO...
Axolotl ModuleNotFoundError After a Successful pip Install
mediumA git/editable install of Axolotl reports success, but importing axolotl or running accelerate launch -m axolotl.cli.train fails with ModuleNotFoundError. The src-layout package never landed on the pa...
Megatron @jit_fuser Fails: 'Unknown type constructor Sequence'
mediumtorch.jit.script on a Megatron @jit_fuser-decorated function fails with 'Unknown type constructor Sequence' on newer torch. TorchScript can't resolve typing.Sequence as used inside the fused function....
DeepSpeed cpu_adam Build Fails: 'cusolverDn.h: No such file or directory'
mediumBuilding DeepSpeed's cpu_adam op fails with 'fatal error: cusolverDn.h: No such file or directory' and 'Error building extension cpu_adam'. PyTorch's conda package shipped its own nvcc that shadows th...
DeepSpeed Windows Build Fails (LNK1181 aio.lib / missing stdint)
lowBuilding a DeepSpeed wheel on Windows 11 fails with 'LINK : fatal error LNK1181: cannot open input file aio.lib' and header compile errors. async_io/libaio is Linux-only and some headers don't compile...
Import / Environment Error
mediumImport and environment errors crash training at startup due to missing or mismatched dependencies....
PyTorch / CUDA / cuDNN Version Mismatch
highVersion mismatches between PyTorch, CUDA, and cuDNN cause cryptic errors....
CUDA Driver / Runtime Mismatch
highCUDA driver and runtime version mismatches prevent PyTorch from initializing CUDA....
PyTorch Not Compiled With CUDA
highPyTorch installed without CUDA support prevents GPU training entirely....
Container CUDA Runtime Mismatch with Host Driver
highThe containerized CUDA runtime fails to execute kernels because the host NVIDIA driver is too old to support it....
Apptainer/Singularity --nv GPU Binding Failures
mediumHPC containers lose GPU access when --nv cannot locate host driver libraries (nonstandard driver install paths, missing nvidia-container-cli, ldconfig cache staleness) or when overlay mounts fail on k...
Infrastructure
40Dual ISP BGP Route Withdrawal Causing Complete GPU Cloud Region Outage
criticalLambda Labs' us-south-3 region experienced a complete network outage when both redundant ISPs simultaneously stopped advertising BGP routes. The primary fiber link was damaged the prior day, shifting ...
Routine UPS Maintenance Triggering Cascading Power and Cooling Failure Across GPU Cloud Region
criticalA routine UPS-related maintenance procedure in Lambda's us-south-1 region unexpectedly affected power delivery to cooling systems, causing networking equipment and other hardware to either power off o...
Remediation Storm Prevention via Circuit Breaker Pattern in AutoClusters
highCrusoe's AutoClusters system implements a circuit breaker pattern that pauses automatic node replacement when failure patterns look anomalous. If too many nodes in a cluster fail within a short window...
Network Storage Volume Causing Process Hangs on H100 GPU Nodes
highRunPod discovered an issue affecting pods using volume disk or network storage in their CA-MTL-1 region. When executing commands on storage-backed files, processes would hang indefinitely even though ...
MongoDB Info Cache Collection Queries Overloading Database During HuggingFace Hub Outage
criticalThe Hugging Face Hub suffered an extended 36-hour outage when repeated requests to space_info_cache and datasets_info_cache MongoDB collections overloaded the database cluster. A script repeatedly que...
Ray Actor Resource Reservation Causing GPU Starvation from Occupied CPU Slots
highAnyscale users experienced GPU starvation when CPU-heavy Ray actors consumed all available CPU slots on GPU nodes, preventing GPU-dependent actors from ever being scheduled. A SpectrogramExtractor wit...
Host Component Kernel Panic Causing Intermittent Network Connectivity on GH200 Instances
highLambda's us-east-3 region, serving exclusively GH200 instances, experienced intermittent network connectivity caused by a host component kernel panic. Nodes would crash and become unreachable until po...
Ray Data Auto-Scaling Failure from Resource Shape Mismatch Between Requested and Available
mediumRay Data auto-scaling fails when operator resource requirements exceed available cluster resources, throwing ActorUnschedulableError. The specific case documented by Anyscale involved a MapBatches ope...
AWS us-east-1 Outage Degrading GPU Cloud Control Plane with Multi-Region Failover Response
highAn AWS us-east-1 outage degraded RunPod's control plane, making the UI, API, and serverless coordination unavailable for GPU users. However, running pod workloads remained fully operational since GPU ...
Xet Storage Migration Workers Filling Disk with Orphaned Temporary Shard Files
highDuring HuggingFace's migration from Git LFS to Xet storage backend, migration worker pods filled their ephemeral disks with orphaned temporary shard files. The shard files were first written to /tmp a...
NCCL Errors as Surface Symptom for Diverse Underlying Infrastructure Root Causes
mediumIn large-scale distributed training, NCCL errors are almost always the surface symptom rather than the root cause. The actual failure originates at a lower infrastructure layer: GPU hardware fault, st...
RAID Storage Failure
criticalRAID storage failures cause data loss and training interruption when storage media degrades....
SLURM Cgroup Limit
highSLURM cgroup limits restrict resources (CPU, memory, GPU) for jobs, causing OOM kills or throttling when exceeded....
Kubernetes GPU Pod Pending
highKubernetes GPU pods can stay in Pending state when GPU resources are not available or configured incorrectly....
DCGM Exporter Error
mediumDCGM Exporter errors prevent GPU metrics from being collected for monitoring, alerting, and observability....
nvidia-smi Missing or Broken
highnvidia-smi is missing or broken when NVIDIA driver is not properly installed, blocking GPU access entirely....
GPU Temperature Throttling
highGPU temperature throttling reduces clock speed and performance when GPUs overheat, sometimes causing training failures....
Cluster Shared Storage Slow
highCluster shared storage (NFS, Lustre, GPFS) can be a major bottleneck for distributed training data loading....
MIG and MPS Conflict
mediumMIG (Multi-Instance GPU) and MPS (Multi-Process Service) both partition GPU resources, causing conflicts when used together....
GPU TDP / Power Limit
mediumGPU TDP and power limit configuration affects performance, thermals, and energy efficiency of training workloads....
SLURM Time Limit
highSLURM time limit causes training jobs to be killed when they exceed their requested walltime, losing progress....
Container Time Drift
lowContainer time drift occurs when container time differs from host time, causing TLS failures and timestamp issues....
DNS Resolution Failure
mediumDNS resolution failures prevent distributed training from finding nodes, downloading from HF Hub, or connecting to services....
Ray Task Timeout
highRay task timeouts occur when tasks take longer than the configured timeout....
Ray Dataset Out of Memory
highRay Dataset OOM occurs when the dataset pipeline uses more memory than available in Ray object store or worker memory....
NFS / Network Filesystem Stall
highNFS stalls freeze training when the storage server becomes unresponsive....
Cloud Storage Throttling
highCloud storage throttling slows or fails training when too many requests hit the storage service....
SLURM Node Out of Memory
criticalSLURM node OOM kills training when the requested memory exceeds the SLURM memory limit....
Cloud GPU Quota Exceeded
highCloud GPU quota limits prevent spinning up new training instances when the account has exhausted its allocated GPU quota....
GPU Scheduling Delay
mediumGPU scheduling delays cause jobs to wait in queue for GPU resources to become available....
Parameter-Plane Cable Link Down
highA physical link on the parameter (backend) network plane goes down, isolating a node's RDMA path and stalling distributed collectives — one of the most common hardware faults in production traces....
NIC Degradation (Link Speed Low / NIC Lost / GID Error)
highA network interface degrades — negotiating a lower link speed, disappearing, or reporting GID errors — silently throttling RDMA collective throughput across the job....
Power Supply Failure / Redundancy Lost
highA node power supply fails or loses redundancy, risking a hard node-down event mid-training; sensor telemetry gives early warning before the node drops....
Fan Speed Critical / Cooling Redundancy Lost
highA cooling fan hits a critical speed/fault or loses redundancy, leading to rising GPU temperatures and thermal throttling if not addressed....
Checkpoint I/O Stall (NFS RPC Saturation)
highCheckpoint writes stall because the NFS RPC layer saturates its slot table, producing a 'bandwidth paradox' where the network is barely utilized yet I/O is the bottleneck....
Docker /dev/shm Exhaustion — NCCL Shared Memory Allocation Failure
highDocker containers default to 64MB of /dev/shm, which is far too small for NCCL shared memory inter-process communication. Training crashes with 'posix_fallocate failed: No space left on device'. Denpe...
Disk Full During Training
highFull disks crash training by preventing checkpoint writes....
OOMKilled Containers Without Clear Attribution
mediumKubernetes OOM kills report the process name (e.g., 'python' or 'java') rather than the pod name, making it highly difficult to trace which specific distributed training job caused a cluster-wide memo...
GPFS/Spectrum Scale Daemon Stalls: Token Contention, Quorum Loss, Deadlocks
criticalWhen mmfsd degrades — token-manager overload, quorum loss, or internal deadlock — mounts stall cluster-wide and training processes block in D-state on I/O. Jobs neither progress nor die, mimicking sil...
Azure Blob Storage Throttling and Timeouts in Training I/O Paths
mediumAzure Blob returns 503 "server busy" and operation timeouts when per-account/partition limits are exceeded by dataset streaming or parallel checkpoint uploads. SDK surfaces vary (ServiceResponseError,...
Reliability
39Sequence Length Imbalance Causing Distributed Training Stragglers
highSequence length imbalance across micro-batches within the same global batch causes certain pipeline stages to compute significantly longer than others. ByteDance's production trace analysis found that...
Silent Data Corruption from GPU Hardware Faults Causing Loss Spikes and Model Divergence
criticalSilent data corruption arising from latent GPU hardware defects bypasses ECC and other hardware detection mechanisms, causing incorrect computation results without any error signal. In LLM training, t...
NIXL Firmware Page Registration Fan-Out Triggers Host OOM Kills on HGX H200 and B200
criticalNVIDIA Inference Xfer Library workloads on HGX H200 and HGX B200 instances triggered host OOM kills because UCX registered GPU memory as firmware pages across all 8 NICs simultaneously, consuming ~34 ...
MTTF Scaling Inversely with GPU Count in Large ML Research Clusters
highMeta FAIR's analysis of 11 months of operational data across two Research SuperClusters confirmed that Mean Time to Failure for training jobs scales inversely with GPU count, dropping from 47.7 days a...
Python Garbage Collection Triggering Periodic Training Stragglers in Distributed LLM Training
mediumByteDance's production trace analysis found that Python's automatic garbage collection causes periodic, transient straggler behavior in distributed LLM training. Full GC passes on long-lived objects (...
Mid-Day Temperature Fluctuations Causing 1-2% Training Throughput Variation
lowDuring Llama 3 training on 16,384 H100 GPUs, Meta observed that mid-day temperature fluctuations of 5-10 degrees Celsius caused 1-2% throughput variation across the training cluster. The effect was at...
Single-Bit Exponent Flip in BF16 Causing Silent Gradient Divergence Across Data-Parallel Ranks
criticalIn BF16 distributed training, a single-bit flip in the exponent field of a gradient tensor can propagate silently through NCCL all-reduce without detection, causing one rank's gradient update to diver...
1-2 GPU Hardware Failures Per Week During BLOOM 176B Training on 384 A100 GPUs
highDuring the 4-month training of the 176B-parameter BLOOM model on 384 NVIDIA A100 GPUs, the team experienced 1-2 GPU hardware failures per week on average. Each failure required a 30-60 minute node rep...
PyTorch Caching Allocator Memory Fragmentation Causing False Straggler Slowdown
mediumByteDance's production straggler analysis identified PyTorch's CUDA caching allocator memory fragmentation as a previously unreported cause of training stragglers. Over long-running jobs, the allocato...
MTTF Optimization from 0.33 to 3.66 Days Through Purpose-Built Infrastructure Architecture
mediumCoreWeave's six-week benchmark training a 30B-parameter Llama-3-style model on 1,024 H100 GPUs demonstrated that purpose-built infrastructure architecture can improve Mean Time to Failure from the ind...
Automatic Node Failure Detection and Training Resumption Using Node Doctor and Watchdog
highMosaicML's training platform automatically detected hardware failures and resumed training without human intervention using its Node Doctor and Watchdog services. During Stable Diffusion training on 1...
Training Restart Stuck
highTraining restarts after failure can get stuck if cleanup didn't complete properly, blocking new training jobs....
Training Checkpoint Corruption on Write
criticalTraining checkpoint corruption on write happens when storage failures, power loss, or process kills interrupt the write operation....
NFS Mount Failure
highNFS mount failures during training cause silent data corruption, hangs, or training failures when accessing shared storage....
Spot Instance Preemption
highSpot instance preemption can kill training jobs with little notice, causing data loss and incomplete training runs....
Graceful Shutdown Missing
highMissing graceful shutdown handlers cause training jobs to be killed without saving final checkpoint or metrics....
Disaster Recovery Missing
criticalMissing disaster recovery planning means training progress can be lost due to hardware failure, corruption, or natural disaster....
Network Partition
criticalNetwork partitions split distributed training into isolated groups, causing hangs, deadlocks, or wrong gradients....
HDF5 Corruption
mediumHDF5 corruption occurs when files are not properly closed, written from multiple processes, or have incompatible versions....
OOM Killed Mid-Step
highOOM kills during training are abrupt and lose progress, often happening mid-step when peak memory is reached....
Training Stuck No Progress
highTraining appears stuck with no progress, often caused by deadlocks, infinite loops, or network hangs in distributed training....
Silent Data Corruption
criticalSilent data corruption during training causes wrong results without error messages, often from hardware issues....
DataLoader Failure
highDataLoader failures cause training to crash or hang when data loading is misconfigured or data is corrupted....
Zombie Process
mediumZombie processes occur when child processes aren't properly reaped, exhausting process table and file descriptors....
Wandb/TensorBoard Failure
lowWeights & Biases or TensorBoard failures cause loss of experiment tracking, making debugging and comparison hard....
Checkpoint Partial Save
criticalPartial checkpoint save happens when training crashes or is killed before all model state is saved....
Training Resume Failure
highTraining resume failures occur when checkpoints can't be loaded properly to continue from a previous run....
Missing Signal Handler
highMissing signal handlers prevent graceful shutdown of training, causing checkpoint loss and resource leaks....
Cgroup Memory Limit
highCgroup memory limits cause OOM kills when training exceeds the container or pod's memory limit....
DeepSpeed ZeRO-3: Cannot partition a param in flight (save)
highsave_16bit_model() under ZeRO-3 asserts because parameters are still in flight when the save interval is not a multiple of the gradient-accumulation steps....
DeepSpeed ZeRO-3: still have inflight params (backward)
highZeRO-3 backward fails because parameters from a previous forward path remain INFLIGHT, common with dynamic forward graphs such as RLHF, NAS, or conditional branching....
DeepSpeed ZeRO-3 NVMe Offload Checkpoint Race (FileExistsError)
highAll ranks race to write into the same consolidation directory during ZeRO-3 NVMe-offload checkpoint save, so only rank 0 succeeds and the rest hit FileExistsError....
DeepSpeed ZeRO-3: 'weight' must be 2-D at F.embedding
mediumAfter ZeRO-3 training, accessing a partitioned parameter directly (e.g. an embedding weight) during inference sees a flattened 1-D tensor and raises a shape error....
Straggler / Slow-Rank Detection
highOne rank runs slower than the rest, so every collective waits on it. There is no crash and no error — just falling throughput and idle GPUs. Stragglers are the dominant cause of silent efficiency loss...
DeepSpeed Inference Degrades Generation Quality (GPT-NeoX/Pythia kernel injection)
mediumGPT-NeoX/Pythia models produce degraded or garbled text under DeepSpeed Inference with kernel injection, while the same model generates correctly without DeepSpeed. The injected fused kernels for the ...
Silent Hang / Unresponsive Training
criticalSilent hangs stall training without error messages. Denpex heartbeat detection identifies stuck ranks....
Zombie GPU Process / Orphaned Job
criticalZombie processes hold GPU memory after the main job exits. Denpex auto-detects and kills them....
Job Preemption / Spot Instance Termination
criticalPreemption kills cloud spot instances mid-training, losing progress if checkpoints aren't saved frequently enough....
Replayed/Archived Logs Triggering False Hardware Diagnoses
mediumPostmortem archives, log-replay pipelines, and documentation snippets containing old Xid/ECC lines get concatenated into live streams and pasted into diagnostic tools, producing confident "replace the...
Distributed Training
35NCCL Broadcast Hang
highNCCL broadcast operations can hang when one rank fails to participate in the collective....
DDP Hang at Epoch Boundary
highDDP training hangs at the end of an epoch when one rank exhausts its data partition before others....
DDP Rank Stuck During Training
highOne DDP rank becomes unresponsive and stalls all ranks waiting for gradient sync....
FSDP Flat Parameter Error
highFSDP flat parameter errors occur when the flattened parameter management fails during sharding or unsharding operations....
FSDP Mixed Precision Error
highFSDP mixed precision errors arise when parameter precision settings conflict between FSDP wrapping and autocast....
Tensor Parallel Error
criticalTensor parallel errors occur when model layer splitting across GPUs fails due to dimension mismatches or communication issues....
DeepSpeed Initialization Failed
criticalDeepSpeed initialization fails when configuration is invalid or incompatible with the model....
PyTorch Distributed Error
highPyTorch distributed errors prevent DDP and FSDP from functioning correctly....
NCCL Watchdog Configuration
mediumNCCL watchdog settings control how long collectives can stall before timing out. Wrong settings cause premature or delayed failure detection....
Finding the Culprit Rank in an NCCL Hang
highWhen one rank stalls, NCCL's synchronous collectives freeze every rank, masking which GPU actually failed — localizing the culprit needs divergence signals, not the NCCL stack trace....
Node Rank Mismatch at NCCL Init
highThe configured world size does not match the number of ranks that actually connect, so NCCL initialization hangs or errors during the communication-setup stage....
DeepSpeed MoE + ZeRO-3 Hang — Missing Leaf Module Marking
highDeepSpeed ZeRO-3 with Mixture-of-Experts (MoE) models hangs during training because MoE blocks need to be marked as leaf modules for ZeRO-3 parameter gathering. Without this marking, ZeRO-3 attempts t...
DeepSpeed ZeRO-3 + PyTorch 2.5 _parameters Dict Error
highDeepSpeed ZeRO-3 crashes with 'dict object has no attribute _in_forward' when used with PyTorch 2.5+, which changed the internal _parameters attribute from a dict to a different type. Denpex detects t...
DeepSpeed ZeRO-3 Small Parameter Partition Bug
mediumDeepSpeed ZeRO-3 crashes with UnboundLocalError in partition_parameters.py when the model has very small parameters (fewer elements than the number of GPUs). The partition math divides a small paramet...
FSDP2 Unwrapped Model Still Has DTensor Weights — save_pretrained Fails
mediumAfter unwrapping an FSDP2 (fully_shard) model the parameters are still DTensors, so save_pretrained or a plain state_dict produces invalid storage or sharded tensors. You must gather a full, unsharded...
bitsandbytes 'invalid configuration argument' (ops.cu) with DeepSpeed Offload
highCombining a bitsandbytes 8-bit optimizer with DeepSpeed ZeRO offload crashes with 'Error invalid configuration argument at line 216 in file .../bitsandbytes/csrc/ops.cu'. The two optimizer-state manag...
FSDP+QLoRA ValueError: Must flatten tensors with uniform dtype (float32 vs bfloat16)
highFSDP combined with QLoRA fails to build its flat parameter: 'Must flatten tensors with uniform dtype but got torch.float32 and torch.bfloat16'. QLoRA keeps some parameters in float32 while the base is...
DeepSpeed 0.14.x Regression: 'Expected all tensors to be on the same device' (ZeRO-3 / Adam Offload)
highAfter upgrading to DeepSpeed >0.14.0 (e.g. 0.14.2), ZeRO-3 / optimizer-offload training crashes with 'Expected all tensors to be on the same device, but found at least two devices, cuda:0 and cpu!'. A...
Accelerate Checkpoints Miss Weights When Using prepare_model Instead of prepare
mediumModel weights are not written by accelerator.save_state when the model was set up with accelerator.prepare_model(model) instead of accelerator.prepare(...). prepare_model only wraps the model for dist...
DeepSpeed ZeRO-3 Error with Parameters of Multiple Dtypes (allgather)
highDeepSpeed ZeRO-3 errors during parameter allgather when the model holds parameters in more than one dtype (e.g. bf16 base with some fp32 modules). Older ZeRO-3 assumed a single dtype for coalesced all...
DeepSpeed Pipeline Parallel Hangs with Variable Input Shapes
highDeepSpeed pipeline-parallel training (PipelineModule) hangs mid-run when microbatch input shapes vary. The PP engine caches the first microbatch's tensor shapes for point-to-point send/recv buffers, s...
DDP Setup Error
criticalDDP setup errors prevent distributed training from initializing correctly....
DDP Port Conflict
highDDP port conflicts occur when the chosen master port is already in use by another process....
DDP NaN Detected on One Rank
criticalDDP NaN detection on a single rank often indicates inconsistent data or hardware between ranks....
DDP OOM During AllReduce
highDDP OOM during allreduce occurs when NCCL communication buffers exceed available GPU memory....
FSDP Missing Keys / Unexpected Keys
highFSDP state_dict missing keys errors prevent checkpoint saving or loading in sharded models. Denpex identifies the source of key mismatches....
FSDP All-Gather Timeout
criticalFSDP all-gather timeouts stall training when sharded parameters cannot be collected from distributed ranks....
DeepSpeed Out of Memory
criticalDeepSpeed OOM errors crash ZeRO-optimized training when memory optimization settings don't match model architecture....
DeepSpeed ZeRO Stuck / Hang
criticalDeepSpeed ZeRO hangs stall training when gradient synchronization stalls or parameter offload produces deadlocks....
DeepSpeed Initialization Failed
criticalDeepSpeed initialization fails when configuration is invalid or incompatible with the model....
Megatron-LM Initialization Failed
criticalMegatron-LM initialization errors prevent large model training from starting due to configuration mismatches....
Torchrun and SLURM Job Step Incompatibility
highTorchrun's approach to spawning jobs conflicts with SLURM's process management, resulting in hung NCCL initialization, rank mismapping, and job allocation failures....
Silent Cascading Straggler
highA single GPU drops in performance without throwing an error, causing all other GPUs in the collective to wait. This silently degrades cluster-wide throughput....
Checkpoint Save/Restore Gathering Timeout
highNCCL timeout occurs while gathering the state dictionary or broadcasting during a checkpoint save or restore operation....
Triaging torchrun ChildFailedError: the Wrapper Is Never the Root Cause
mediumChildFailedError is torchelastic's envelope around a dead worker. The exitcode/signal in its table is the actual signal: -9 host OOM-kill, -11 segfault, -6 abort (often CUDA), 1 python exception whose...
Hardware
26GPU Memory Clock Throttle
mediumGPU memory clock throttling reduces memory bandwidth and training performance when memory is under-utilized....
NVLink Error
highNVLink errors cause intra-node GPU communication failures and degraded multi-GPU performance....
GPU Thermal Throttling
highGPU thermal throttling reduces clock speeds to prevent overheating, causing training to be slower than expected....
GPU Power Cap Reached
mediumGPU power cap limits GPU power consumption, reducing performance for power-constrained deployments....
CUDA Driver Crash
criticalCUDA driver crash terminates all GPU processes on the node, losing unsaved training progress....
GPU Overheating
highGPU overheating causes thermal throttling, performance degradation, and potential hardware damage....
GPU Not Detected
criticalGPU not detected errors prevent training from starting when the system cannot see the GPU....
CUDA Uncorrectable ECC Error
criticalUncorrectable ECC errors indicate GPU memory hardware faults that corrupt training data and require GPU replacement....
CUDA Illegal Instruction
criticalCUDA illegal instruction errors crash training when the GPU encounters unsupported instructions, often from binary mismatches....
GPU Clock Throttle
mediumGPU clock throttle reduces performance when power or thermal limits are reached....
GPU Memory Bus Error
criticalGPU memory bus errors corrupt data transfer between GPU cores and memory, causing silent data corruption or crashes....
GPU MIG (Multi-Instance GPU) Mode
mediumGPU MIG mode splits a GPU into multiple instances, which can cause issues with PyTorch and NCCL if not configured correctly....
High ECC Error Rate Detection
highHigh GPU ECC error rates indicate degrading memory hardware. Correctable errors accumulating signal impending failure....
GPU Memory Bandwidth Limit
mediumGPU memory bandwidth limits reduce training performance when compute exceeds memory access speed....
NVLink/NVLS Failure with Xid 31 MMU Fault Cascade
criticalNVLS collective failures on Hopper/NVLINK4 nodes cascade from Fabric Manager restarts, producing Xid 31 MMU page faults and illegal memory accesses across the node....
cuMemImportFromShareableHandle Fails (CUDA error 101)
highP2P fabric-handle import between containers on a multi-node NVLink (MNNVL) GPU fails with CUDA 'invalid device ordinal' due to a CUDA driver bug, not NCCL....
Partial NVLink Failure vs NVSwitch Failure (Localization)
highNVLink bandwidth degradation can be a single failing link or a whole-node NVSwitch fault — comparing per-GPU NVLink bandwidth across all 8 GPUs tells them apart....
GSP RPC Timeout (Xid 119)
highThe GPU System Processor (GSP) stops responding to RPCs, logged as Xid 119 — the GPU becomes unresponsive and usually needs a reset....
GPU Fallen Off the Bus (Xid 79)
criticalA GPU drops off the PCIe bus (Xid 79) and disappears from the system — a critical hardware/connectivity fault that ends training on that node until the GPU is recovered....
GPU Memory Row Remapping Event
mediumThe GPU remaps a failing memory row after ECC errors — a recovery mechanism, but a rising remap count signals degrading memory that may need RMA....
NVIDIA Xid 48 — ECC Uncorrectable Memory Error
criticalXid 48 is NVIDIA's code for uncorrectable GPU memory errors. It crashes training and corrupts model weights. Denpex correlates Xid 48 events with NCCL failures to identify the originating GPU and trig...
NVIDIA Xid 79 — GPU Has Fallen Off the Bus
criticalXid 79 means the GPU lost PCIe connectivity entirely. Training dies immediately. Denpex identifies which GPU, node, and the chain of events that led to the GPU fall. Root caused by bad PCIe, power eve...
CUDA Device Assertion Failure
criticalCUDA device assertion failures indicate GPU hardware problems that crash training with ambiguous error messages. Denpex maps the device assertion to the specific GPU and operation, distinguishing hard...
KV Cache Corruption on Non-P2P Topologies
criticalKV cache corruption or NaNs in key_value tensors occurring during decoding on hardware topologies that do not fully support PCIe P2P memory sharing....
nvlddmkm TDR (Timeout Detection and Recovery)
criticalThe display driver crashes and recovers (or fails to recover) due to a long-running CUDA kernel triggering the OS watchdog....
Intel GPU (i915/Xe) Engine Hangs and GuC Firmware Failures
highOn Intel data-center GPUs, engine hangs surface as i915 "GPU HANG"/engine-reset dmesg lines and GuC (scheduling microcontroller) load or crash messages. Compute contexts die on reset; repeated hangs i...
Data Integrity
21Checkpoint Saved with Older Version
mediumCheckpoints saved with older PyTorch versions may not load with newer versions due to format changes....
Checkpoint Torn Write
criticalTorn writes produce incomplete checkpoint files when training is interrupted mid-save....
PII Leakage in Training Data
highPII in training data can leak through model outputs, causing privacy and compliance issues....
Dataset License Issue
mediumDataset license issues prevent commercial use or distribution of models trained on the data....
Checkpoint Version Incompatible
highCheckpoint version incompatibility prevents loading checkpoints saved with different PyTorch versions....
Optimizer State Dict Mismatch
highOptimizer state doesn't match model parameters when loading checkpoints across different architectures or configs....
Checkpoint Saved with Newer Version
highCheckpoints saved with newer PyTorch versions may not load with older versions, causing compatibility issues....
Model State Dict Corruption
criticalModel state dict corruption produces degraded model quality after loading....
Single-Rank Reduce-Scatter Silent Data Corruption
criticalOn world_size=1 with non-aligned tensor sizes, NCCL's reduce-scatter/AVG left the last elements unprocessed (zero) due to a floor-division bug — silent corruption with no error....
Silent Data Corruption: Silent Degradation (No NaN)
criticalA faulty GPU corrupts computation without ever producing a NaN — loss settles slightly above baseline and parameters drift, making it the most deceptive SDC mode....
Silent Data Corruption: Gradual Parameter Drift
criticalA permanent hardware fault causes monotonically increasing divergence of parameters from a baseline once injection begins, even while loss curves look identical to a healthy run....
DeepSpeed DecoupledCheckpointEngine Infinite Hang
criticalDeepSpeed's DecoupledCheckpointEngine can hang indefinitely during checkpoint saving, blocking training progress without producing an error. The hang occurs when the async checkpoint writer thread dea...
DeepSpeed FastFileWriter File Descriptor Leak — Phantom ENOSPC
highDeepSpeed's FastFileWriter leaks file descriptors during checkpoint saves, eventually causing 'No space left on device' (ENOSPC) errors even when disk space is available. The leaked file descriptors e...
DeepSpeed Universal Checkpoint Lexicographic Sort Corruption
criticalDeepSpeed universal checkpoint loading sorts rank directories lexicographically instead of numerically, causing rank_10 to be loaded before rank_2. This silently corrupts model weights because each ra...
DeepSpeed SIGBUS Exit Code -7 After Checkpoint Load
criticalDeepSpeed training crashes with SIGBUS (exit code -7) after loading a checkpoint, with no Python traceback. This typically indicates a memory-mapped file access failure — the checkpoint file was trunc...
Checkpoint Corruption
criticalCorrupted checkpoints silently poison resumed training with bad weights. Denpex validates checkpoint integrity before resume....
Partial Checkpoint Save
criticalPartial checkpoint saves write incomplete data when training is interrupted, leaving a file that appears valid but is truncated....
Safetensors Load Error
highSafetensors loading fails when files are truncated or checksums mismatch....
PyTorch Save Failed / Write Error
criticalCheckpoint save fails when disk writes are interrupted....
PyTorch Load Failed / Unpickling Error
criticalCheckpoint load fails when files are corrupted or format is mismatched....
Optimizer State Dict Mismatch
highOptimizer state doesn't match model parameters when loading checkpoints across different architectures or configs....
Performance
5CPU Affinity Misconfiguration
mediumCPU affinity misconfiguration prevents DataLoader workers and training threads from using optimal CPU cores....
GPU Utilization Low
mediumLow GPU utilization indicates training is bottlenecked by data loading, CPU work, or communication....
DeepSpeed ZeRO-3 Slow (Synchronous Param Prefetch)
mediumZeRO-3 throughput collapses versus ZeRO-2 because the parameter prefetch behaves synchronously, so transfer time fails to overlap with compute....
Unsloth Qwen3-30B-A3B MoE Fine-Tuning Extremely Slow / Low GPU Utilization
mediumFine-tuning the Qwen3-30B-A3B MoE model with Unsloth is far slower (200-300 s/step) at 10-20% GPU utilization than the comparable dense Qwen3-32B, which runs at full utilization. Missing/unoptimized M...
Persistent Straggler Rank from Single-GPU Thermal Throttling
mediumOne rank consistently 2-4x slower drags every synchronous collective. When the cause is a failed fan/blocked airflow on exactly one GPU, the fleet-wide symptom (slow allreduce everywhere) hides a sing...
Fail-Slow
3HBM3 Memory Failures on 16384-GPU Cluster During Llama 3 Training
criticalDuring the 54-day pre-training of Llama 3 405B on 16,384 NVIDIA H100 GPUs, 419 unexpected interruptions occurred at an average rate of one every 3 hours. HBM3 memory failures alone accounted for 17.2%...
Uneven Pipeline Stage Partitioning as Primary Straggler Cause in LLM Training
highIn a five-month trace analysis of ByteDance's LLM training cluster, uneven pipeline stage partitioning was identified as the most prevalent cause of training stragglers, affecting 39.3% of jobs. The l...
torch.compile AOTAutograd Graph Compilation Timeout
criticalDuring AOTAutograd phase of torch.compile, complex dynamic control flow or deeply nested autograd graphs can cause the Inductor compiler to stall indefinitely. This often manifests as a single node ha...
Distributed Communication
3NCCL Collective Operation Timeout
criticalA NCCL collective operation failed to complete within the watchdog timeout period because one or more ranks stopped participating. This is the most common distributed training failure and is almost al...
NCCL Timeout Cascade from Single Rank Failure
criticalA single rank failure cascades into mass NCCL timeouts across most or all ranks as they wait at a collective barrier. The cascade signature is one rank failing first, followed by a wave of timeouts on...
NCCL Network Topology Lookup Failure (NIC Fusion)
highNCCL cannot find a valid path for the network pattern in the discovered PCIe topology. This is typically caused by NIC fusion (NIC split) remapping NIC device IDs during partial-node InfiniBand alloca...
Hardware/Vendor
3CUTLASS SM120 Kernel Regression Halving MoE Throughput
criticalNVIDIA's CUTLASS kernels for SM120 (and some Hopper architectures) suffer from a silent regression that halves throughput on Mixture of Experts (MoE) inference, commonly seen when utilizing certain Py...
NCCL P2P Level and Topology Routing Limits
highImproper NCCL P2P (Peer-to-Peer) configuration and topology routing lead to PCIe bandwidth bottlenecks, silently degrading multi-GPU training performance....
Mellanox OFED Driver Mismatch
criticalNew InfiniBand adapters (like ConnectX-7) require specific OFED versions. Mismatches with the host kernel or existing driver stack break the network fabric, making nodes unreachable or failing RDMA....
Missing a failure class?
Denpex diagnoses 441failure classes deterministically, with AI fallback for anything novel. If your error isn't listed, paste your logs into the console for instant analysis.
Diagnose your logs now