Getting started with AI on NXP i.MX8M Plus - Neural Processing Unit - Profiling the NPU - Installing gputop

From RidgeRun Developer Connection
Jump to: navigation, search




NXP Partner Program Registered Vertical.jpg NXP Partner Program Horizontal.jpg
Previous: Neural Processing Unit/Profiling the NPU Index Next: Neural Processing Unit/Profiling the NPU/Setting the board on debug mode



Including the gputop module

This binary is provided by the recipes at sources/meta-imx/meta-sdk, so if you are developing for i.MX8M Plus from the Variscite images based on the NXP BSP, you will have the dependencies for this sampler. In order to include gputop to be a GPU/NPU usage sampler for the i.MX8M Plus, then go to the local.conf file, and add the following line:

CORE_IMAGE_EXTRA_INSTALL += "gputop"

After adding this line, please configure the environment and rebake the image:

cd $HOME/<your image folder>

source setup-environment <your build directory>

bitbake imx-image-core

Then flash the image into the SD card, and boot the board. Access it by serial or SSH, and then execute:

gputop

The output of the command above is like the following:

Galcore version:6.4.3.305572, gpuperfcnt:8e763ddca55b, 1.4
3D:GC7000,Rev:6204 Core: 999 MHz, Shader: 999 MHz 
3D:GC8000,Rev:8002 Core: 999 MHz, Shader: 999 MHz 2D:GC520,Rev:5341 
3D Cores:2,2D Cores:1,VG Cores:0

IMX8_DDR0: axid-read:15.66,axid-write:6.46
IMX8_DDR1: 

     PID   RES(kB)   CONT(kB)   VIRT(kB)  Non-PGD(kB)  Total(kB)              CMD
     760     33171       2147          0            0      35318              car

TOT:         33171       2147          0            0      35318
TOT_CON:         -          -          -            -     228972

As you can see in the previous output, there is a process called car with a PID of 760. This means that this process is using the NPU or the GPU since both of the accelerators use axi for communicate. In this specific case, the process was detecting license plates from an image using the NPU for accelerating the inference.


Previous: Neural Processing Unit/Profiling the NPU Index Next: Neural Processing Unit/Profiling the NPU/Setting the board on debug mode