Exporting YOLO Models for NXP i.MX Platforms

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Exporting YOLO Models for NXP i.MX Platforms

Exporting YOLO Models for NXP i.MX Platforms

In this post, we will review the YOLO model export process for three popular NXP families: i.MX8MP, i.MX93, and i.MX95. These processors are increasingly used in edge AI applications such as smart vision, industrial automation, robotics, and intelligent HMI systems. Although they all support machine learning deployment, the export path, supported runtimes, and hardware acceleration options may differ depending on the device.

The purpose of this guide is to provide a clearer starting point for developers who want to take a trained YOLO model and prepare it for execution on these i.MX platforms. Whether your workflow targets CPU, NPU.

YOLO Model Export Workflow for i.MX Processors

1) Install Ultralytics

Install or upgrade the Ultralytics package from PyPI:

pip install -U ultralytics

 

2) Export the YOLO Model (TFLite INT8)
Export your trained YOLO model to TensorFlow Lite (TFLite) format with INT8 quantization:

yolo export model=<your_model>.pt format=tflite int8=True

 

Notes:

The model must be exported in TFLite format and quantized to INT8.
At this stage:

The model can run on CPU for:

i.MX8MP
i.MX93
i.MX95

On i.MX8MP, this TFLite model can also be deployed to the NPU using the appropriate delegate.


3) i.MX93  Compile for Ethos-U NPU (Vela)

For i.MX93, an additional compilation step is required to use the Ethos-U NPU.
Run the Vela compiler to convert the TFLite model into an optimized format:

vela <model>.tflite --output-dir <output_folder>

Notes:

This step generates a model optimized for the Ethos-U NPU. The resulting output files are required for deployment using the NPU delegate on the i.MX93 platform.


Please ensure that the model complies with the Ethos-U operator constraints, as only supported operations can be accelerated by the NPU.


This command can be executed directly on the i.MX93 target, or alternatively by using the eIQ Toolkit (please refer to the eIQ Converter documentation for more details).

4)  i.MX95 Convert Model Using Neutron SDK
For i.MX95, the model must be converted using the Neutron Converter, depending on the BSP version installed on your board.

.\neutron-converter.exe `
  --input "<model>.tflite" `
  --target imx95 `
  --output "<model_neutron>.tflite" `
  --optimization-level OOpt


Notes:

The Neutron toolchain prepares the model for i.MX95 NPU acceleration.
Supported formats and flags may vary depending on the Neutron SDK version.
Always verify compatibility with your BSP release.

You can check the compatibility details of the Neutron SDK in the "docs" folder of your downloaded Neutron SDK package.

 

5) Benchmark the Model
After exporting and converting the model, you can validate performance using benchmarking tools.
Typical options include:

TFLite benchmark tool (CPU / delegate):

benchmark_model --graph=<model>.tflite --num_threads=X


6) Results

iMX8MP

CPU

root@imx8mpevk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant.tflite --mum_threads=4
INFO: STARTING!
WARN: Unconsumed cmdline flags: --mum_threads=4
INFO: Log parameter values verbosely: [0]
INFO: Graph: [yolov8n_full_integer_quant.tflite]
INFO: Signature to run: []
INFO: Loaded model yolov8n_full_integer_quant.tflite
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
INFO: The input model file size (MB): 3.42652
INFO: Initialized session in 86.368ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
INFO: count=1 curr=1029584 p5=1029584 median=1029584 p95=1029584

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=986237 curr=985536 min=983921 max=993982 avg=985863 std=1497 p5=984152 median=985947 p95=986715

INFO: Inference timings in us: Init: 86368, First inference: 1029584, Warmup (avg): 1.02958e+06, Inference (avg): 985863
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=11.207 overall=40.918
root@imx8mpevk:~#

 

NPU

root@imx8mpevk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant.tflite --num_threads=4 --external_delegate_path=/usr/lib/libvx_delegate.so
INFO: STARTING!
INFO: Log parameter values verbosely: [0]
INFO: Num threads: [4]
INFO: Graph: [yolov8n_full_integer_quant.tflite]
INFO: Signature to run: []
INFO: #threads used for CPU inference: [4]
INFO: #threads used for CPU inference: [4]
INFO: External delegate path: [/usr/lib/libvx_delegate.so]
INFO: Loaded model yolov8n_full_integer_quant.tflite
INFO: Vx delegate: allowed_cache_mode set to 0.
INFO: Vx delegate: device num set to 0.
INFO: Vx delegate: allowed_builtin_code set to 0.
INFO: Vx delegate: error_during_init set to 0.
INFO: Vx delegate: error_during_prepare set to 0.
INFO: Vx delegate: error_during_invoke set to 0.
INFO: EXTERNAL delegate created.
INFO: Explicitly applied EXTERNAL delegate, and the model graph will be completely executed by the delegate.
INFO: The input model file size (MB): 3.42652
INFO: Initialized session in 39.515ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.

INFO: count=1 curr=16831746 p5=16831746 median=16831746 p95=16831746

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=67167 curr=67190 min=67048 max=67366 avg=67187 std=64 p5=67094 median=67184 p95=67295

INFO: Inference timings in us: Init: 39515, First inference: 16831746, Warmup (avg): 1.68317e+07, Inference (avg): 67187
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=9.47266 overall=224.398
root@imx8mpevk:~#



iMX93

CPU

root@imx93evk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant.tflite --num_threads=2
INFO: STARTING!
INFO: Log parameter values verbosely: [0]
INFO: Num threads: [2]
INFO: Graph: [yolov8n_full_integer_quant.tflite]
INFO: Signature to run: []
INFO: #threads used for CPU inference: [2]
INFO: #threads used for CPU inference: [2]
INFO: Loaded model yolov8n_full_integer_quant.tflite
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
INFO: The input model file size (MB): 3.42652
INFO: Initialized session in 57.963ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
INFO: count=3 first=247896 curr=198973 min=198973 max=247896 avg=215381 std=22991 p5=198973 median=199275 p95=247896

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=199533 curr=198880 min=197719 max=205262 avg=199032 std=1005 p5=198344 median=198886 p95=199961

INFO: Inference timings in us: Init: 57963, First inference: 247896, Warmup (avg): 215381, Inference (avg): 199032
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=11.2539 overall=40.9961
root@imx93evk:~#

 

NPU

root@imx93evk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant_vela.tflite --num_threads=2 --external_delegate_path=/usr/lib/libethosu_delegate.so
INFO: STARTING!
INFO: Log parameter values verbosely: [0]
INFO: Num threads: [2]
INFO: Graph: [yolov8n_full_integer_quant_vela.tflite]
INFO: Signature to run: []
INFO: #threads used for CPU inference: [2]
INFO: #threads used for CPU inference: [2]
INFO: External delegate path: [/usr/lib/libethosu_delegate.so]
INFO: Loaded model yolov8n_full_integer_quant_vela.tflite
INFO: Ethosu delegate: device_name set to /dev/ethosu0.
INFO: Ethosu delegate: cache_file_path set to .
INFO: Ethosu delegate: timeout set to 60000000000.
INFO: Ethosu delegate: enable_cycle_counter set to 0.
INFO: Ethosu delegate: enable_profiling set to 0.
INFO: Ethosu delegate: profiling_buffer_size set to 2048.
INFO: Ethosu delegate: pmu_event0 set to 0.
INFO: Ethosu delegate: pmu_event1 set to 0.
INFO: Ethosu delegate: pmu_event2 set to 0.
INFO: Ethosu delegate: pmu_event3 set to 0.
INFO: EXTERNAL delegate created.
INFO: EthosuDelegate: 8 nodes delegated out of 15 nodes with 8 partitions.
INFO: Explicitly applied EXTERNAL delegate, and the model graph will be partially executed by the delegate w/ 8 delegate kernels.
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
INFO: The input model file size (MB): 2.9511
INFO: Initialized session in 638.148ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
INFO: count=7 first=87215 curr=81264 min=81079 max=87215 avg=82056.4 std=2107 p5=81079 median=81187 p95=87215

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=81497 curr=81232 min=80887 max=81783 avg=81153.1 std=178 p5=80921 median=81148 p95=81497

INFO: Inference timings in us: Init: 638148, First inference: 87215, Warmup (avg): 82056.4, Inference (avg): 81153.1
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=7.36328 overall=8.73828
root@imx93evk:~#


iMX95

CPU

root@imx95evk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant.tflite --num_threads=6
INFO: STARTING!
INFO: Log parameter values verbosely: [0]
INFO: Num threads: [6]
INFO: Graph: [yolov8n_full_integer_quant.tflite]
INFO: Signature to run: []
INFO: #threads used for CPU inference: [6]
INFO: #threads used for CPU inference: [6]
INFO: Loaded model yolov8n_full_integer_quant.tflite
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
INFO: The input model file size (MB): 3.42652
INFO: Initialized session in 35.268ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
INFO: count=7 first=115073 curr=74468 min=74170 max=115073 avg=80310.4 std=14192 p5=74170 median=74581 p95=115073

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=74143 curr=74135 min=73657 max=76392 avg=74346.9 std=447 p5=73829 median=74307 p95=75020

INFO: Inference timings in us: Init: 35268, First inference: 115073, Warmup (avg): 80310.4, Inference (avg): 74346.9
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=11.5195 overall=40.8867
root@imx95evk:~#


NPU:

root@imx95evk:~# /usr/bin/tensorflow-lite-2.19.0/examples/benchmark_model --graph=yolov8n_full_integer_quant_neutron.tflite --num_threads=6 --external_delegate_path=/usr/lib/libneutron_delegate.so
INFO: STARTING!
INFO: Log parameter values verbosely: [0]
INFO: Num threads: [6]
INFO: Graph: [yolov8n_full_integer_quant_neutron.tflite]
INFO: Signature to run: []
INFO: #threads used for CPU inference: [6]
INFO: #threads used for CPU inference: [6]
INFO: External delegate path: [/usr/lib/libneutron_delegate.so]
INFO: Loaded model yolov8n_full_integer_quant_neutron.tflite
INFO: EXTERNAL delegate created.
INFO: NeutronDelegate delegate: 1 nodes delegated out of 33 nodes with 1 partitions.

INFO: Neutron delegate version: v1.0.0-7399a58e, zerocp enabled.
INFO: Explicitly applied EXTERNAL delegate, and the model graph will be partially executed by the delegate w/ 1 delegate kernels.
INFO: Created TensorFlow Lite XNNPACK delegate for CPU.
INFO: The input model file size (MB): 3.20989
INFO: Initialized session in 12.756ms.
INFO: Running benchmark for at least 1 iterations and at least 0.5 seconds but terminate if exceeding 150 seconds.
INFO: count=17 first=31509 curr=27588 min=27555 max=31509 avg=29101.2 std=1166 p5=27555 median=29071 p95=31509

INFO: Running benchmark for at least 50 iterations and at least 1 seconds but terminate if exceeding 150 seconds.
INFO: count=50 first=28068 curr=29081 min=26573 max=31340 avg=29104.1 std=1204 p5=27306 median=29141 p95=31171

INFO: Inference timings in us: Init: 12756, First inference: 31509, Warmup (avg): 29101.2, Inference (avg): 29104.1
INFO: Note: as the benchmark tool itself affects memory footprint, the following is only APPROXIMATE to the actual memory footprint of the model at runtime. Take the information at your discretion.
INFO: Memory footprint delta from the start of the tool (MB): init=6.98438 overall=12.2344
root@imx95evk:~


Disclaimer:

Ultralytics YOLO models have not been officially validated/supported by NXP. Therefore, compatibility with i.MX processors and their corresponding NPUs cannot be guaranteed. Some models or configurations may not work as expected depending on operator support and hardware limitations.

%3CLINGO-SUB%20id%3D%22lingo-sub-2381361%22%20slang%3D%22en-US%22%20mode%3D%22UPDATE%22%3EExporting%20YOLO%20Models%20for%20NXP%20i.MX%20Platforms%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2381361%22%20slang%3D%22en-US%22%20mode%3D%22UPDATE%22%3E%0A%3CP%3EIn%20this%20post%2C%20we%20will%20review%20the%20YOLO%20model%20export%20process%20for%20three%20popular%20NXP%20families%3A%20i.MX8MP%2C%20i.MX93%2C%20and%20i.MX95.%20These%20processors%20are%20increasingly%20used%20in%20edge%20AI%20applications%20such%20as%20smart%20vision%2C%20industrial%20automation%2C%20robotics%2C%20and%20intelligent%20HMI%20systems.%20Although%20they%20all%20support%20machine%20learning%20deployment%2C%20the%20export%20path%2C%20supported%20runtimes%2C%20and%20hardware%20acceleration%20options%20may%20differ%20depending%20on%20the%20device.%3CBR%20%2F%3E%3CBR%20%2F%3EThe%20purpose%20of%20this%20guide%20is%20to%20provide%20a%20clearer%20starting%20point%20for%20developers%20who%20want%20to%20take%20a%20trained%20YOLO%20model%20and%20prepare%20it%20for%20execution%20on%20these%20i.MX%20platforms.%20Whether%20your%20workflow%20targets%20CPU%2C%20NPU.%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3EYOLO%20Model%20Export%20Workflow%20for%20i.MX%20Processors%3C%2FSTRONG%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3E1)%20Install%20Ultralytics%3CBR%20%2F%3E%3C%2FSTRONG%3E%3CBR%20%2F%3EInstall%20or%20upgrade%20the%20Ultralytics%20package%20from%20PyPI%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Epip%20install%20-U%20ultralytics%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%3CSTRONG%3E2)%20Export%20the%20YOLO%20Model%20(TFLite%20INT8)%3C%2FSTRONG%3E%3CBR%20%2F%3EExport%20your%20trained%20YOLO%20model%20to%20TensorFlow%20Lite%20(TFLite)%20format%20with%20INT8%20quantization%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eyolo%20export%20model%3D%3CYOUR_MODEL%3E.pt%20format%3Dtflite%20int8%3DTrue%3C%2FYOUR_MODEL%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%0A%3CP%3ENotes%3A%3C%2FP%3E%0A%3CP%3EThe%20model%20must%20be%20exported%20in%20TFLite%20format%20and%20quantized%20to%20INT8.%3CBR%20%2F%3EAt%20this%20stage%3A%3C%2FP%3E%0A%3CP%3EThe%20model%20can%20run%20on%20CPU%20for%3A%3C%2FP%3E%0A%3CP%3Ei.MX8MP%3CBR%20%2F%3Ei.MX93%3CBR%20%2F%3Ei.MX95%3C%2FP%3E%0A%3CP%3EOn%20i.MX8MP%2C%20this%20TFLite%20model%20can%20also%20be%20deployed%20to%20the%20NPU%20using%20the%20appropriate%20delegate.%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3E3)%20i.MX93%26nbsp%3B%20Compile%20for%20Ethos-U%20NPU%20(Vela)%3CBR%20%2F%3E%3C%2FSTRONG%3E%3CBR%20%2F%3EFor%20i.MX93%2C%20an%20additional%20compilation%20step%20is%20required%20to%20use%20the%20Ethos-U%20NPU.%3CBR%20%2F%3ERun%20the%20Vela%20compiler%20to%20convert%20the%20TFLite%20model%20into%20an%20optimized%20format%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Evela%20%3CMODEL%3E.tflite%20--output-dir%20%3COUTPUT_FOLDER%3E%3C%2FOUTPUT_FOLDER%3E%3C%2FMODEL%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3ENotes%3A%3C%2FP%3E%0A%3CP%3EThis%20step%20generates%20a%20model%20optimized%20for%20the%20Ethos-U%20NPU.%20The%20resulting%20output%20files%20are%20required%20for%20deployment%20using%20the%20NPU%20delegate%20on%20the%20i.MX93%20platform.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EPlease%20ensure%20that%20the%20model%20complies%20with%20the%20Ethos-U%20operator%20constraints%2C%20as%20only%20supported%20operations%20can%20be%20accelerated%20by%20the%20NPU.%3C%2FP%3E%0A%3CP%3E%3CBR%20%2F%3EThis%20command%20can%20be%20executed%20directly%20on%20the%20i.MX93%20target%2C%20or%20alternatively%20by%20using%20the%20eIQ%20Toolkit%20(please%20refer%20to%20the%20eIQ%20Converter%20documentation%20for%20more%20details).%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E4)%26nbsp%3B%20i.MX95%20Convert%20Model%20Using%20Neutron%20SDK%3C%2FSTRONG%3E%3CBR%20%2F%3EFor%20i.MX95%2C%20the%20model%20must%20be%20converted%20using%20the%20Neutron%20Converter%2C%20depending%20on%20the%20BSP%20version%20installed%20on%20your%20board.%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3E.%5Cneutron-converter.exe%20%60%0A%20%20--input%20%22%3CMODEL%3E.tflite%22%20%60%0A%20%20--target%20imx95%20%60%0A%20%20--output%20%22%3CMODEL_NEUTRON%3E.tflite%22%20%60%0A%20%20--optimization-level%20OOpt%3C%2FMODEL_NEUTRON%3E%3C%2FMODEL%3E%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CBR%20%2F%3ENotes%3A%3C%2FP%3E%0A%3CP%3EThe%20Neutron%20toolchain%20prepares%20the%20model%20for%20i.MX95%20NPU%20acceleration.%3CBR%20%2F%3ESupported%20formats%20and%20flags%20may%20vary%20depending%20on%20the%20Neutron%20SDK%20version.%3CBR%20%2F%3EAlways%20verify%20compatibility%20with%20your%20BSP%20release.%3CBR%20%2F%3E%3CBR%20%2F%3EYou%20can%20check%20the%20compatibility%20details%20of%20the%20Neutron%20SDK%20in%20the%20%22docs%22%20folder%20of%20your%20downloaded%20Neutron%20SDK%20package.%3C%2FP%3E%0A%3CBR%20%2F%3E%0A%3CP%3E%3CSTRONG%3E5)%20Benchmark%20the%20Model%3C%2FSTRONG%3E%3CBR%20%2F%3EAfter%20exporting%20and%20converting%20the%20model%2C%20you%20can%20validate%20performance%20using%20benchmarking%20tools.%3CBR%20%2F%3ETypical%20options%20include%3A%3C%2FP%3E%0A%3CP%3ETFLite%20benchmark%20tool%20(CPU%20%2F%20delegate)%3A%3CBR%20%2F%3E%3CBR%20%2F%3Ebenchmark_model%20--graph%3D%3CMODEL%3E.tflite%20--num_threads%3DX%3CBR%20%2F%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3E6)%20Results%3C%2FSTRONG%3E%3CBR%20%2F%3E%3CBR%20%2F%3E%3CSTRONG%3EiMX8MP%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSTRONG%3ECPU%3C%2FMODEL%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx8mpevk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant.tflite%20--mum_threads%3D4%0AINFO%3A%20STARTING!%0AWARN%3A%20Unconsumed%20cmdline%20flags%3A%20--mum_threads%3D4%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant.tflite%0AINFO%3A%20Created%20TensorFlow%20Lite%20XNNPACK%20delegate%20for%20CPU.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%203.42652%0AINFO%3A%20Initialized%20session%20in%2086.368ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D1%20curr%3D1029584%20p5%3D1029584%20median%3D1029584%20p95%3D1029584%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D986237%20curr%3D985536%20min%3D983921%20max%3D993982%20avg%3D985863%20std%3D1497%20p5%3D984152%20median%3D985947%20p95%3D986715%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%2086368%2C%20First%20inference%3A%201029584%2C%20Warmup%20(avg)%3A%201.02958e%2B06%2C%20Inference%20(avg)%3A%20985863%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D11.207%20overall%3D40.918%0Aroot%40imx8mpevk%3A~%23%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%0A%3CP%3ENPU%3CSTRONG%3E%3CBR%20%2F%3E%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx8mpevk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant.tflite%20--num_threads%3D4%20--external_delegate_path%3D%2Fusr%2Flib%2Flibvx_delegate.so%0AINFO%3A%20STARTING!%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Num%20threads%3A%20%5B4%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B4%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B4%5D%0AINFO%3A%20External%20delegate%20path%3A%20%5B%2Fusr%2Flib%2Flibvx_delegate.so%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant.tflite%0AINFO%3A%20Vx%20delegate%3A%20allowed_cache_mode%20set%20to%200.%0AINFO%3A%20Vx%20delegate%3A%20device%20num%20set%20to%200.%0AINFO%3A%20Vx%20delegate%3A%20allowed_builtin_code%20set%20to%200.%0AINFO%3A%20Vx%20delegate%3A%20error_during_init%20set%20to%200.%0AINFO%3A%20Vx%20delegate%3A%20error_during_prepare%20set%20to%200.%0AINFO%3A%20Vx%20delegate%3A%20error_during_invoke%20set%20to%200.%0AINFO%3A%20EXTERNAL%20delegate%20created.%0AINFO%3A%20Explicitly%20applied%20EXTERNAL%20delegate%2C%20and%20the%20model%20graph%20will%20be%20completely%20executed%20by%20the%20delegate.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%203.42652%0AINFO%3A%20Initialized%20session%20in%2039.515ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0A%0AINFO%3A%20count%3D1%20curr%3D16831746%20p5%3D16831746%20median%3D16831746%20p95%3D16831746%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D67167%20curr%3D67190%20min%3D67048%20max%3D67366%20avg%3D67187%20std%3D64%20p5%3D67094%20median%3D67184%20p95%3D67295%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%2039515%2C%20First%20inference%3A%2016831746%2C%20Warmup%20(avg)%3A%201.68317e%2B07%2C%20Inference%20(avg)%3A%2067187%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D9.47266%20overall%3D224.398%0Aroot%40imx8mpevk%3A~%23%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSTRONG%3E%3CBR%20%2F%3E%3CBR%20%2F%3EiMX93%3CBR%20%2F%3E%3CBR%20%2F%3E%3C%2FSTRONG%3ECPU%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx93evk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant.tflite%20--num_threads%3D2%0AINFO%3A%20STARTING!%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Num%20threads%3A%20%5B2%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B2%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B2%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant.tflite%0AINFO%3A%20Created%20TensorFlow%20Lite%20XNNPACK%20delegate%20for%20CPU.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%203.42652%0AINFO%3A%20Initialized%20session%20in%2057.963ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D3%20first%3D247896%20curr%3D198973%20min%3D198973%20max%3D247896%20avg%3D215381%20std%3D22991%20p5%3D198973%20median%3D199275%20p95%3D247896%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D199533%20curr%3D198880%20min%3D197719%20max%3D205262%20avg%3D199032%20std%3D1005%20p5%3D198344%20median%3D198886%20p95%3D199961%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%2057963%2C%20First%20inference%3A%20247896%2C%20Warmup%20(avg)%3A%20215381%2C%20Inference%20(avg)%3A%20199032%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D11.2539%20overall%3D40.9961%0Aroot%40imx93evk%3A~%23%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CBR%20%2F%3E%0A%3CP%3ENPU%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx93evk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant_vela.tflite%20--num_threads%3D2%20--external_delegate_path%3D%2Fusr%2Flib%2Flibethosu_delegate.so%0AINFO%3A%20STARTING!%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Num%20threads%3A%20%5B2%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant_vela.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B2%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B2%5D%0AINFO%3A%20External%20delegate%20path%3A%20%5B%2Fusr%2Flib%2Flibethosu_delegate.so%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant_vela.tflite%0AINFO%3A%20Ethosu%20delegate%3A%20device_name%20set%20to%20%2Fdev%2Fethosu0.%0AINFO%3A%20Ethosu%20delegate%3A%20cache_file_path%20set%20to%20.%0AINFO%3A%20Ethosu%20delegate%3A%20timeout%20set%20to%2060000000000.%0AINFO%3A%20Ethosu%20delegate%3A%20enable_cycle_counter%20set%20to%200.%0AINFO%3A%20Ethosu%20delegate%3A%20enable_profiling%20set%20to%200.%0AINFO%3A%20Ethosu%20delegate%3A%20profiling_buffer_size%20set%20to%202048.%0AINFO%3A%20Ethosu%20delegate%3A%20pmu_event0%20set%20to%200.%0AINFO%3A%20Ethosu%20delegate%3A%20pmu_event1%20set%20to%200.%0AINFO%3A%20Ethosu%20delegate%3A%20pmu_event2%20set%20to%200.%0AINFO%3A%20Ethosu%20delegate%3A%20pmu_event3%20set%20to%200.%0AINFO%3A%20EXTERNAL%20delegate%20created.%0AINFO%3A%20EthosuDelegate%3A%208%20nodes%20delegated%20out%20of%2015%20nodes%20with%208%20partitions.%0AINFO%3A%20Explicitly%20applied%20EXTERNAL%20delegate%2C%20and%20the%20model%20graph%20will%20be%20partially%20executed%20by%20the%20delegate%20w%2F%208%20delegate%20kernels.%0AINFO%3A%20Created%20TensorFlow%20Lite%20XNNPACK%20delegate%20for%20CPU.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%202.9511%0AINFO%3A%20Initialized%20session%20in%20638.148ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D7%20first%3D87215%20curr%3D81264%20min%3D81079%20max%3D87215%20avg%3D82056.4%20std%3D2107%20p5%3D81079%20median%3D81187%20p95%3D87215%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D81497%20curr%3D81232%20min%3D80887%20max%3D81783%20avg%3D81153.1%20std%3D178%20p5%3D80921%20median%3D81148%20p95%3D81497%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%20638148%2C%20First%20inference%3A%2087215%2C%20Warmup%20(avg)%3A%2082056.4%2C%20Inference%20(avg)%3A%2081153.1%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D7.36328%20overall%3D8.73828%0Aroot%40imx93evk%3A~%23%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CSTRONG%3E%3CBR%20%2F%3EiMX95%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3ECPU%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx95evk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant.tflite%20--num_threads%3D6%0AINFO%3A%20STARTING!%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Num%20threads%3A%20%5B6%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B6%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B6%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant.tflite%0AINFO%3A%20Created%20TensorFlow%20Lite%20XNNPACK%20delegate%20for%20CPU.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%203.42652%0AINFO%3A%20Initialized%20session%20in%2035.268ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D7%20first%3D115073%20curr%3D74468%20min%3D74170%20max%3D115073%20avg%3D80310.4%20std%3D14192%20p5%3D74170%20median%3D74581%20p95%3D115073%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D74143%20curr%3D74135%20min%3D73657%20max%3D76392%20avg%3D74346.9%20std%3D447%20p5%3D73829%20median%3D74307%20p95%3D75020%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%2035268%2C%20First%20inference%3A%20115073%2C%20Warmup%20(avg)%3A%2080310.4%2C%20Inference%20(avg)%3A%2074346.9%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D11.5195%20overall%3D40.8867%0Aroot%40imx95evk%3A~%23%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CBR%20%2F%3ENPU%3A%3C%2FP%3E%0A%3CPRE%20class%3D%22lia-code-sample%20language-markup%22%3E%3CCODE%3Eroot%40imx95evk%3A~%23%20%2Fusr%2Fbin%2Ftensorflow-lite-2.19.0%2Fexamples%2Fbenchmark_model%20--graph%3Dyolov8n_full_integer_quant_neutron.tflite%20--num_threads%3D6%20--external_delegate_path%3D%2Fusr%2Flib%2Flibneutron_delegate.so%0AINFO%3A%20STARTING!%0AINFO%3A%20Log%20parameter%20values%20verbosely%3A%20%5B0%5D%0AINFO%3A%20Num%20threads%3A%20%5B6%5D%0AINFO%3A%20Graph%3A%20%5Byolov8n_full_integer_quant_neutron.tflite%5D%0AINFO%3A%20Signature%20to%20run%3A%20%5B%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B6%5D%0AINFO%3A%20%23threads%20used%20for%20CPU%20inference%3A%20%5B6%5D%0AINFO%3A%20External%20delegate%20path%3A%20%5B%2Fusr%2Flib%2Flibneutron_delegate.so%5D%0AINFO%3A%20Loaded%20model%20yolov8n_full_integer_quant_neutron.tflite%0AINFO%3A%20EXTERNAL%20delegate%20created.%0AINFO%3A%20NeutronDelegate%20delegate%3A%201%20nodes%20delegated%20out%20of%2033%20nodes%20with%201%20partitions.%0A%0AINFO%3A%20Neutron%20delegate%20version%3A%20v1.0.0-7399a58e%2C%20zerocp%20enabled.%0AINFO%3A%20Explicitly%20applied%20EXTERNAL%20delegate%2C%20and%20the%20model%20graph%20will%20be%20partially%20executed%20by%20the%20delegate%20w%2F%201%20delegate%20kernels.%0AINFO%3A%20Created%20TensorFlow%20Lite%20XNNPACK%20delegate%20for%20CPU.%0AINFO%3A%20The%20input%20model%20file%20size%20(MB)%3A%203.20989%0AINFO%3A%20Initialized%20session%20in%2012.756ms.%0AINFO%3A%20Running%20benchmark%20for%20at%20least%201%20iterations%20and%20at%20least%200.5%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D17%20first%3D31509%20curr%3D27588%20min%3D27555%20max%3D31509%20avg%3D29101.2%20std%3D1166%20p5%3D27555%20median%3D29071%20p95%3D31509%0A%0AINFO%3A%20Running%20benchmark%20for%20at%20least%2050%20iterations%20and%20at%20least%201%20seconds%20but%20terminate%20if%20exceeding%20150%20seconds.%0AINFO%3A%20count%3D50%20first%3D28068%20curr%3D29081%20min%3D26573%20max%3D31340%20avg%3D29104.1%20std%3D1204%20p5%3D27306%20median%3D29141%20p95%3D31171%0A%0AINFO%3A%20Inference%20timings%20in%20us%3A%20Init%3A%2012756%2C%20First%20inference%3A%2031509%2C%20Warmup%20(avg)%3A%2029101.2%2C%20Inference%20(avg)%3A%2029104.1%0AINFO%3A%20Note%3A%20as%20the%20benchmark%20tool%20itself%20affects%20memory%20footprint%2C%20the%20following%20is%20only%20APPROXIMATE%20to%20the%20actual%20memory%20footprint%20of%20the%20model%20at%20runtime.%20Take%20the%20information%20at%20your%20discretion.%0AINFO%3A%20Memory%20footprint%20delta%20from%20the%20start%20of%20the%20tool%20(MB)%3A%20init%3D6.98438%20overall%3D12.2344%0Aroot%40imx95evk%3A~%3C%2FCODE%3E%3C%2FPRE%3E%0A%3CP%3E%3CBR%20%2F%3E%3CSTRONG%3EDisclaimer%3A%3C%2FSTRONG%3E%3CBR%20%2F%3E%3CBR%20%2F%3EUltralytics%20YOLO%20models%20have%20not%20been%20officially%20validated%2Fsupported%20by%20NXP.%20Therefore%2C%20compatibility%20with%20i.MX%20processors%20and%20their%20corresponding%20NPUs%20cannot%20be%20guaranteed.%20Some%20models%20or%20configurations%20may%20not%20work%20as%20expected%20depending%20on%20operator%20support%20and%20hardware%20limitations.%3C%2FP%3E%0A%3C%2FLINGO-BODY%3E
No ratings
Version history
Last update:
Monday
Updated by: