Add Docs glossary links (#16448)
Signed-off-by: UltralyticsAssistant <web@ultralytics.com> Co-authored-by: UltralyticsAssistant <web@ultralytics.com>
This commit is contained in:
parent
8b8c25f216
commit
443fbce194
193 changed files with 1124 additions and 1124 deletions
|
|
@ -10,7 +10,7 @@ keywords: YOLOv8, OpenVINO, model export, Intel, AI inference, CPU speedup, GPU
|
|||
|
||||
In this guide, we cover exporting YOLOv8 models to the [OpenVINO](https://docs.openvino.ai/) format, which can provide up to 3x [CPU](https://docs.openvino.ai/2024/openvino-workflow/running-inference/inference-devices-and-modes/cpu-device.html) speedup, as well as accelerating YOLO inference on Intel [GPU](https://docs.openvino.ai/2024/openvino-workflow/running-inference/inference-devices-and-modes/gpu-device.html) and [NPU](https://docs.openvino.ai/2024/openvino-workflow/running-inference/inference-devices-and-modes/npu-device.html) hardware.
|
||||
|
||||
OpenVINO, short for Open Visual Inference & Neural Network Optimization toolkit, is a comprehensive toolkit for optimizing and deploying AI inference models. Even though the name contains Visual, OpenVINO also supports various additional tasks including language, audio, time series, etc.
|
||||
OpenVINO, short for Open Visual Inference & [Neural Network](https://www.ultralytics.com/glossary/neural-network-nn) Optimization toolkit, is a comprehensive toolkit for optimizing and deploying AI inference models. Even though the name contains Visual, OpenVINO also supports various additional tasks including language, audio, time series, etc.
|
||||
|
||||
<p align="center">
|
||||
<br>
|
||||
|
|
@ -59,20 +59,20 @@ Export a YOLOv8n model to OpenVINO format and run inference with the exported mo
|
|||
|
||||
## Arguments
|
||||
|
||||
| Key | Value | Description |
|
||||
| --------- | ------------ | ---------------------------------------------------- |
|
||||
| `format` | `'openvino'` | format to export to |
|
||||
| `imgsz` | `640` | image size as scalar or (h, w) list, i.e. (640, 480) |
|
||||
| `half` | `False` | FP16 quantization |
|
||||
| `int8` | `False` | INT8 quantization |
|
||||
| `batch` | `1` | batch size for inference |
|
||||
| `dynamic` | `False` | allows dynamic input sizes |
|
||||
| Key | Value | Description |
|
||||
| --------- | ------------ | --------------------------------------------------------------------------- |
|
||||
| `format` | `'openvino'` | format to export to |
|
||||
| `imgsz` | `640` | image size as scalar or (h, w) list, i.e. (640, 480) |
|
||||
| `half` | `False` | FP16 quantization |
|
||||
| `int8` | `False` | INT8 quantization |
|
||||
| `batch` | `1` | [batch size](https://www.ultralytics.com/glossary/batch-size) for inference |
|
||||
| `dynamic` | `False` | allows dynamic input sizes |
|
||||
|
||||
## Benefits of OpenVINO
|
||||
|
||||
1. **Performance**: OpenVINO delivers high-performance inference by utilizing the power of Intel CPUs, integrated and discrete GPUs, and FPGAs.
|
||||
2. **Support for Heterogeneous Execution**: OpenVINO provides an API to write once and deploy on any supported Intel hardware (CPU, GPU, FPGA, VPU, etc.).
|
||||
3. **Model Optimizer**: OpenVINO provides a Model Optimizer that imports, converts, and optimizes models from popular deep learning frameworks such as PyTorch, TensorFlow, TensorFlow Lite, Keras, ONNX, PaddlePaddle, and Caffe.
|
||||
3. **Model Optimizer**: OpenVINO provides a Model Optimizer that imports, converts, and optimizes models from popular [deep learning](https://www.ultralytics.com/glossary/deep-learning-dl) frameworks such as PyTorch, [TensorFlow](https://www.ultralytics.com/glossary/tensorflow), TensorFlow Lite, Keras, ONNX, PaddlePaddle, and Caffe.
|
||||
4. **Ease of Use**: The toolkit comes with more than [80 tutorial notebooks](https://github.com/openvinotoolkit/openvino_notebooks) (including [YOLOv8 optimization](https://github.com/openvinotoolkit/openvino_notebooks/tree/latest/notebooks/yolov8-optimization)) teaching different aspects of the toolkit.
|
||||
|
||||
## OpenVINO Export Structure
|
||||
|
|
@ -103,7 +103,7 @@ For more detailed steps and code snippets, refer to the [OpenVINO documentation]
|
|||
|
||||
## OpenVINO YOLOv8 Benchmarks
|
||||
|
||||
YOLOv8 benchmarks below were run by the Ultralytics team on 4 different model formats measuring speed and accuracy: PyTorch, TorchScript, ONNX and OpenVINO. Benchmarks were run on Intel Flex and Arc GPUs, and on Intel Xeon CPUs at FP32 precision (with the `half=False` argument).
|
||||
YOLOv8 benchmarks below were run by the Ultralytics team on 4 different model formats measuring speed and accuracy: PyTorch, TorchScript, ONNX and OpenVINO. Benchmarks were run on Intel Flex and Arc GPUs, and on Intel Xeon CPUs at FP32 [precision](https://www.ultralytics.com/glossary/precision) (with the `half=False` argument).
|
||||
|
||||
!!! note
|
||||
|
||||
|
|
@ -121,28 +121,28 @@ Benchmarks below run on Intel® Data Center GPU Flex 170 at FP32 precision.
|
|||
<img width="800" src="https://github.com/ultralytics/docs/releases/download/0/flex-gpu-benchmarks.avif" alt="Flex GPU benchmarks">
|
||||
</div>
|
||||
|
||||
| Model | Format | Status | Size (MB) | mAP50-95(B) | Inference time (ms/im) |
|
||||
| ------- | ----------- | ------ | --------- | ----------- | ---------------------- |
|
||||
| YOLOv8n | PyTorch | ✅ | 6.2 | 0.3709 | 21.79 |
|
||||
| YOLOv8n | TorchScript | ✅ | 12.4 | 0.3704 | 23.24 |
|
||||
| YOLOv8n | ONNX | ✅ | 12.2 | 0.3704 | 37.22 |
|
||||
| YOLOv8n | OpenVINO | ✅ | 12.3 | 0.3703 | 3.29 |
|
||||
| YOLOv8s | PyTorch | ✅ | 21.5 | 0.4471 | 31.89 |
|
||||
| YOLOv8s | TorchScript | ✅ | 42.9 | 0.4472 | 32.71 |
|
||||
| YOLOv8s | ONNX | ✅ | 42.8 | 0.4472 | 43.42 |
|
||||
| YOLOv8s | OpenVINO | ✅ | 42.9 | 0.4470 | 3.92 |
|
||||
| YOLOv8m | PyTorch | ✅ | 49.7 | 0.5013 | 50.75 |
|
||||
| YOLOv8m | TorchScript | ✅ | 99.2 | 0.4999 | 47.90 |
|
||||
| YOLOv8m | ONNX | ✅ | 99.0 | 0.4999 | 63.16 |
|
||||
| YOLOv8m | OpenVINO | ✅ | 49.8 | 0.4997 | 7.11 |
|
||||
| YOLOv8l | PyTorch | ✅ | 83.7 | 0.5293 | 77.45 |
|
||||
| YOLOv8l | TorchScript | ✅ | 167.2 | 0.5268 | 85.71 |
|
||||
| YOLOv8l | ONNX | ✅ | 166.8 | 0.5268 | 88.94 |
|
||||
| YOLOv8l | OpenVINO | ✅ | 167.0 | 0.5264 | 9.37 |
|
||||
| YOLOv8x | PyTorch | ✅ | 130.5 | 0.5404 | 100.09 |
|
||||
| YOLOv8x | TorchScript | ✅ | 260.7 | 0.5371 | 114.64 |
|
||||
| YOLOv8x | ONNX | ✅ | 260.4 | 0.5371 | 110.32 |
|
||||
| YOLOv8x | OpenVINO | ✅ | 260.6 | 0.5367 | 15.02 |
|
||||
| Model | Format | Status | Size (MB) | mAP50-95(B) | Inference time (ms/im) |
|
||||
| ------- | ------------------------------------------------------- | ------ | --------- | ----------- | ---------------------- |
|
||||
| YOLOv8n | [PyTorch](https://www.ultralytics.com/glossary/pytorch) | ✅ | 6.2 | 0.3709 | 21.79 |
|
||||
| YOLOv8n | TorchScript | ✅ | 12.4 | 0.3704 | 23.24 |
|
||||
| YOLOv8n | ONNX | ✅ | 12.2 | 0.3704 | 37.22 |
|
||||
| YOLOv8n | OpenVINO | ✅ | 12.3 | 0.3703 | 3.29 |
|
||||
| YOLOv8s | PyTorch | ✅ | 21.5 | 0.4471 | 31.89 |
|
||||
| YOLOv8s | TorchScript | ✅ | 42.9 | 0.4472 | 32.71 |
|
||||
| YOLOv8s | ONNX | ✅ | 42.8 | 0.4472 | 43.42 |
|
||||
| YOLOv8s | OpenVINO | ✅ | 42.9 | 0.4470 | 3.92 |
|
||||
| YOLOv8m | PyTorch | ✅ | 49.7 | 0.5013 | 50.75 |
|
||||
| YOLOv8m | TorchScript | ✅ | 99.2 | 0.4999 | 47.90 |
|
||||
| YOLOv8m | ONNX | ✅ | 99.0 | 0.4999 | 63.16 |
|
||||
| YOLOv8m | OpenVINO | ✅ | 49.8 | 0.4997 | 7.11 |
|
||||
| YOLOv8l | PyTorch | ✅ | 83.7 | 0.5293 | 77.45 |
|
||||
| YOLOv8l | TorchScript | ✅ | 167.2 | 0.5268 | 85.71 |
|
||||
| YOLOv8l | ONNX | ✅ | 166.8 | 0.5268 | 88.94 |
|
||||
| YOLOv8l | OpenVINO | ✅ | 167.0 | 0.5264 | 9.37 |
|
||||
| YOLOv8x | PyTorch | ✅ | 130.5 | 0.5404 | 100.09 |
|
||||
| YOLOv8x | TorchScript | ✅ | 260.7 | 0.5371 | 114.64 |
|
||||
| YOLOv8x | ONNX | ✅ | 260.4 | 0.5371 | 110.32 |
|
||||
| YOLOv8x | OpenVINO | ✅ | 260.6 | 0.5367 | 15.02 |
|
||||
|
||||
This table represents the benchmark results for five different models (YOLOv8n, YOLOv8s, YOLOv8m, YOLOv8l, YOLOv8x) across four different formats (PyTorch, TorchScript, ONNX, OpenVINO), giving us the status, size, mAP50-95(B) metric, and inference time for each combination.
|
||||
|
||||
|
|
@ -185,7 +185,7 @@ Benchmarks below run on Intel® Arc 770 GPU at FP32 precision.
|
|||
|
||||
### Intel Xeon CPU
|
||||
|
||||
The Intel® Xeon® CPU is a high-performance, server-grade processor designed for complex and demanding workloads. From high-end cloud computing and virtualization to artificial intelligence and machine learning applications, Xeon® CPUs provide the power, reliability, and flexibility required for today's data centers.
|
||||
The Intel® Xeon® CPU is a high-performance, server-grade processor designed for complex and demanding workloads. From high-end [cloud computing](https://www.ultralytics.com/glossary/cloud-computing) and virtualization to [artificial intelligence](https://www.ultralytics.com/glossary/artificial-intelligence-ai) and machine learning applications, Xeon® CPUs provide the power, reliability, and flexibility required for today's data centers.
|
||||
|
||||
Notably, Xeon® CPUs deliver high compute density and scalability, making them ideal for both small businesses and large enterprises. By choosing Intel® Xeon® CPUs, organizations can confidently handle their most demanding computing tasks and foster innovation while maintaining cost-effectiveness and operational efficiency.
|
||||
|
||||
|
|
@ -255,7 +255,7 @@ Benchmarks below run on 13th Gen Intel® Core® i7-13700H CPU at FP32 precision.
|
|||
|
||||
The Intel® Ultra™ 7 155H represents a new benchmark in high-performance computing, designed to cater to the most demanding users, from gamers to content creators. The Ultra™ 7 155H is not just a CPU; it integrates a powerful GPU and an advanced NPU (Neural Processing Unit) within a single chip, offering a comprehensive solution for diverse computing needs.
|
||||
|
||||
This hybrid architecture allows the Ultra™ 7 155H to excel in both traditional CPU tasks and GPU-accelerated workloads, while the NPU enhances AI-driven processes, enabling faster and more efficient machine learning operations. This makes the Ultra™ 7 155H a versatile choice for applications requiring high-performance graphics, complex computations, and AI inference.
|
||||
This hybrid architecture allows the Ultra™ 7 155H to excel in both traditional CPU tasks and GPU-accelerated workloads, while the NPU enhances AI-driven processes, enabling faster and more efficient [machine learning](https://www.ultralytics.com/glossary/machine-learning-ml) operations. This makes the Ultra™ 7 155H a versatile choice for applications requiring high-performance graphics, complex computations, and AI inference.
|
||||
|
||||
The Ultra™ 7 series includes multiple models, each offering different levels of performance, with the 'H' designation indicating a high-power variant suitable for laptops and compact devices. Early benchmarks have highlighted the exceptional performance of the Ultra™ 7 155H, particularly in multitasking environments, where the combined power of the CPU, GPU, and NPU leads to remarkable efficiency and speed.
|
||||
|
||||
|
|
@ -465,7 +465,7 @@ Yes, you can benchmark YOLOv8 models in various formats including PyTorch, Torch
|
|||
# Load a YOLOv8n PyTorch model
|
||||
model = YOLO("yolov8n.pt")
|
||||
|
||||
# Benchmark YOLOv8n speed and accuracy on the COCO8 dataset for all export formats
|
||||
# Benchmark YOLOv8n speed and [accuracy](https://www.ultralytics.com/glossary/accuracy) on the COCO8 dataset for all export formats
|
||||
results = model.benchmarks(data="coco8.yaml")
|
||||
```
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue