Profiling ========= .. toctree:: :hidden: ondevice/index simulated/index mcu .. note:: See the :ref:`video-profiling` video tutorial on how-to use the GUI. Profiling evaluates the performance of a machine learning model during inference to identify bottlenecks and uncover optimization opportunities. **eIQ AI Toolkit** offers comprehensive profiling capabilities, collecting detailed performance metrics across various deployment scenarios. Profiling Methods ----------------- **eIQ AI Toolkit** supports three distinct profiling approaches, each suited for different development stages and platforms: * **On-Device Profiling** - executes inference directly on the target hardware platform and collects real-time performance statistics for accurate, hardware-specific measurements. * **Simulated Profiling** - estimates performance characteristics without requiring physical hardware deployment, enabling early-stage optimization and platform comparison. * **MCU Profiling** - specialized on-device profiling for microcontroller units where inference runs on the target MCU, but eIQ AI Toolkit processes the exported performance data offline. During inference—whether on-device or in a simulated environment—various statistics are collected. The specific metrics depend on the platform and method used. The most common statistic is the time taken by each layer to compute. Other metrics may include per-layer memory usage, computational complexity, and the processing unit utilized. By analyzing these statistics, it becomes possible to identify bottlenecks within the model and further optimize its performance. In the next sections about profiling, you will learn how to: * :doc:`Run on-device profiling with eIQ AI Toolkit API on i.MX 8MP platform<./ondevice/imx8mp>` * :doc:`Collect statistics for MCU profiling and process it using eIQ AI Toolkit API<./mcu>` * :doc:`Use simulated profiling to estimate model performance for i.MX 93<./simulated/imx93>` * :doc:`Use simulated profiling to estimate model performance for Neutron NPU platforms<./simulated/neutron>` For complete eIQ AI Toolkit API reference and interactive documentation: 1. Follow the :doc:`eIQ AI Toolkit Setup Guide <../tools/aiToolkit/installRun>` 2. Launch the application 3. Access the full API documentation at `http://localhost:8000/docs`