๐ Summary
๐ Ultralytics 8.4.102 makes MuSGD training up to 8ร faster while expanding YOLO26 edge deployment, improving export reliability, and strengthening dataset and GPU error handling.
๐ Key Changes
-
โก Faster MuSGD optimizer
- Batches NewtonโSchulz orthogonalization across compatible parameter matrices instead of processing each parameter separately.
- Uses fused PyTorch
foreachoperations for momentum and SGD updates. - Reduces thousands of small CUDA kernel launches, making MuSGD much less launch-bound.
- Preserves the existing single-tensor
muon_updateAPI while adding an optimized internal batched path. - Reported impact: up to 8ร faster optimizer steps, particularly for models such as YOLO26n.
-
๐ฑ YOLO26 semantic segmentation on Hailo
- Adds direct Hailo HEF export and inference for YOLO26 semantic segmentation.
- Hailo-8/8L devices return logits for host-side upsampling and class reduction.
- Hailo-10/15 devices can compile multi-class upsampling and ArgMax directly into the accelerator graph, returning compact class maps.
- Uses task-specific lightweight calibration datasets when no dataset is provided.
-
๐ก๏ธ More reliable GPU training recovery
- Treats
CUBLAS_STATUS_ALLOC_FAILEDas a recoverable first-epoch memory error, allowing automatic batch-size reduction and retry behavior similar to out-of-memory errors.
- Treats
-
๐ฆ Improved classification dataset handling
- Preserves global class IDs for sparse NDJSON train and validation splits.
- Correctly maps all samples to class
0whensingle_cls=True. - Uses the actual labels exposed by the dataset for class-count validation.
-
๐ง Safer model export and inference
- RT-DETR ONNX export now validates that the resolved opset is compatible before export.
- INT8 classification calibration respects the requested dataset split and falls back cleanly when a test split is unavailable.
- Augmented inference now checks the modelโs final detection head directly, improving compatibility with legacy RT-DETR checkpoints.
-
โ Clearer validation errors
- Segmentation now raises an actionable
ValueErrorwhenmask_ratiois too large for the selected image size, instead of failing later inside OpenCV.
- Segmentation now raises an actionable
-
๐ Platform and deployment documentation updates
- Documents optional immutable dataset versions for cloud training, linking trained models to the exact dataset snapshot used.
- Updates Hailo accuracy-retention guidance for segmentation, pose, OBB, and classification.
- Reflects the current Ultralytics Platform deployment coverage of 42 regions.
๐ฏ Purpose & Impact
- Faster training: MuSGD users should see substantially shorter optimizer steps and improved GPU utilization, especially on CUDA workloads with many parameters.
- Broader edge deployment: YOLO26 semantic segmentation can now be deployed directly to supported Hailo accelerators, including Raspberry Pi-oriented hardware.
- More dependable production workflows: Automatic recovery from additional CUDA allocation failures reduces avoidable training interruptions.
- Fewer dataset-related crashes: Correct handling of sparse class metadata and single-class training prevents invalid labels and CUDA assertion failures.
- More predictable exports: Earlier RT-DETR opset validation and improved calibration split handling provide clearer errors and more reliable INT8 export behavior.
- Better experiment reproducibility: Immutable dataset versions in Ultralytics Platform help ensure that models can be traced back to the precise data used for training.
What's Changed
- Document Save Dataset Version for cloud training by @glenn-jocher in #25281
- Fix GPU training failures from production logs by @glenn-jocher in #25284
- Document Hailo per-task INT8 accuracy retention by @JESUSROYETH in #25283
- Raise clean error when mask_ratio exceeds imgsz by @darshil929 in #25282
- Add Hailo semantic segmentation export and inference for YOLO26 by @JESUSROYETH in #25280
- Fix RT-DETR augmented prediction fallback by @glenn-jocher in #25289
- Validate classification calibration split by @glenn-jocher in #25292
- Relabel classification samples for single-class training by @glenn-jocher in #25290
- Validate RT-DETR ONNX opset before export by @glenn-jocher in #25291
- 8x faster MuSGD optimizer step with batched Newton-Schulz by @Y-T-G in #25288
New Contributors
- @darshil929 made their first contribution in #25282
Full Changelog: v8.4.101...v8.4.102