π Summary
v8.4.134 makes crowded-object training more resilient to GPU memory limits and increases the default hyperparameter search budget from 10 to 300 trials. π
π Key Changes
-
Faster TaskAlignedAssigner OOM recovery π§
- When GPU memory runs out during target assignment, Ultralytics now retries the work one image at a time on the GPU instead of moving the entire operation to the CPU.
- The modelβs forward-pass batch size remains unchanged.
- A warning is shown only once per training run and reports the assignment dimensions.
-
Lower memory usage during target assignment πΎ
- Removes unused trailing ground-truth padding before retrying.
- Preallocates retry outputs and reuses dense metric buffers.
- Keeps candidate masks in a compact integer format.
- Computes box metrics only for valid anchor/ground-truth pairs.
- Uses more memory-efficient in-place operations where possible.
-
Improved geometric and assignment processing βοΈ
- Streamlines point-in-box checks and overlapping-ground-truth resolution.
- Preserves compatible output behavior while reducing temporary tensor allocations.
-
Hyperparameter tuning now defaults to 300 trials π
- The built-in tuner, direct
Tunerusage, and Ray Tune all now use 300 trials by default, up from 10. - Documentation has been updated to reflect the shared default.
- The built-in tuner, direct
-
Version update π¦
- Package version updated to
8.4.134.
- Package version updated to
π― Purpose & Impact
-
Much better recovery from GPU out-of-memory errors β
Large or highly crowded batches can continue training without falling back to a very slow full-CPU assignment. In the reported xView benchmark, optimized single-image GPU assignment used about 1.56 GB of peak memory and completed in 0.376 seconds, compared with 194.86 seconds and 85.62 GB for the previous GPU-to-CPU fallback. -
More practical training on dense datasets ποΈ
The changes are particularly valuable for aerial imagery, crowd analysis, and other datasets containing many objects per image. -
No need to reduce the modelβs forward batch size after recovery π
The fallback is isolated to target assignment, helping retain the intended training configuration while handling temporary memory pressure. -
More effective automatic hyperparameter tuning π―
A 300-trial default gives the tuner substantially more opportunities to explore configurations and find stronger settings, especially for the broad YOLO26 search space. -
Higher tuning cost unless overridden β±οΈ
Users who rely on defaults should expect tuning jobs to run considerably longer and consume more compute. Smaller runs can still be requested explicitly when time or budget is limited.
What's Changed
- Default hyperparameter tuning to 300 trials by @glenn-jocher in #25987
- Reduce TaskAlignedAssigner OOM recovery cost by @glenn-jocher in #25990
Full Changelog: v8.4.133...v8.4.134