New Release: Ultralytics v8.3.31

:star2: Summary

We’re excited to announce the release of Ultralytics v8.3.31, packed with enhancements designed to optimize your model training experience. This update focuses on improving memory management and training reliability, ensuring smoother and more efficient workflows.

:bar_chart: Key Changes

Batch Size Optimization

  • Auto Batch Functionality: We’ve introduced an auto_batch feature that intelligently determines the optimal batch size by assessing memory consumption. This helps in maximizing GPU utilization without running into memory issues.

Improved Profiling

  • Max Number of Objects: Profiling tools now include a max_num_obj parameter, enhancing the accuracy of batch size estimation and ensuring better resource allocation.

Error Management

  • CUDA Memory Handling: New logging mechanisms for CUDA out-of-memory warnings have been implemented. In cases where GPU memory is insufficient, the system will automatically switch to CPU computation, maintaining training continuity.

Documentation Updates

  • Streamlined Training Docs: The verbose argument has been removed from the training documentation to simplify the setup process, as it was found to be ineffective.

:dart: Purpose & Impact

  • Efficient Memory Use: By automatically adjusting batch sizes, we aim to prevent GPU memory overloads, leading to more stable and efficient training sessions.
  • Greater Reliability: The automatic switch to CPU processing during memory errors ensures that training continues smoothly, avoiding interruptions and crashes.
  • Simplified User Experience: Removing unnecessary configuration options makes the training setup more user-friendly and less complex.

What’s Changed

Full Changelog: View the complete list of changes

We encourage you to try out the new release and share your feedback with us. Your insights are invaluable in helping us continue to improve and innovate. Check out the release notes for more details. Happy training!