Changes between Initial Version and Version 1 of expansion/gw16168


Ignore:
Timestamp:
02/21/2026 12:21:19 AM (6 hours ago)
Author:
Ryan Erbstoesser
Comment:

start page

Legend:

Unmodified
Added
Removed
Modified
  • expansion/gw16168

    v1 v1  
     1[[PageOutline]]
     2= GW16168 NXP ARA240 AI Accelerator
     3
     4The GW16168 NXP ARA240 AI Accelerator is an M.2 2280 M-Key card by Gateworks for use in the Gateworks single board computers. For more product information see here: [https://www.gateworks.com/products/gw16168-m2-ai-accelerator-usa-made/]
     5
     6
     7= NXP ARA240 AI Accelerator Quick Start
     8
     9Create an account at https://support.kinara.ai/
     10
     11The ARA2 Quickstart guide is what should be used.
     12[https://support.kinara.ai/api//assets/sdk/1.3/public/sdk/Ara2-quickstart.html]
     13
     14== ARA240 Hardware and Setup
     15
     16The ARA240 was previously known as the ARA-2 by Kinara for any confusion.
     17
     18Download the Kinara Ara-2 SDK Release 1.3 (Licensed) from [https://support.kinara.ai/SDK ] by clicking the 3 dots under the action column (download SDK) onto your host and extract it.
     19
     20
     21It should create a folder named 'art'
     22
     23Instructions are in the README_linux_aarch64.txt file inside the extracted folder. Also, the main instructions to follow are on the Kinara support site at [https://support.kinara.ai/api//assets/sdk/1.3/public/sdk/Ara2-quickstart.html]
     24
     25
     26Copy the 'art' folder from the ARA-2 SDK to the Gateworks SBC with something like scp. (adjust IP, path, etc as needed)
     27{{{
     28scp -r user@192.168.1.1:/kinara/art ./
     29}}}
     30
     31Verify the Kinara card is detected on the PCIe bus:
     32{{{
     33root@noble-venice:~/art/linux/aarch64/hw_utils# lspci
     3481:00.0 Processing accelerators: Device 1e58:0002 (rev 02)
     35}}}
     36
     37Build the uiodma kernel module on the Gateworks Single Board Computer (using 6.12 kernel)
     38{{{
     39apt-get update
     40apt-get install build-essential
     41cd art/linux/drivers/uiodma/
     42make clean
     43make
     44}}}
     45
     46Insert the compiled uiodma module:
     47{{{
     48insmod art/linux/drivers/uiodma/uiodma.ko 
     49sudo echo "1e58 0002" > /sys/bus/pci/drivers/uiodma/new_id
     50
     51}}}
     52
     53Verify the uiodma driver is being attached to the hardware with the command:
     54{{{
     55root@noble-venice:~/demos# lspci -k
     5601:00.0 Processing accelerators: Device 1e58:0002 (rev 02)
     57        Subsystem: Device 0020:0020
     58        Kernel driver in use: uiodma
     59}}}
     60
     61Get Chip info:
     62{{{
     63root@noble-venice:~/art/linux# ./aarch64/hw_utils/bins/chip_info_aarch64 -e 0
     64Kinara Inc. Silicon utilities version 0.5.9
     65
     66Run directory: /root/art/linux
     67./aarch64/hw_utils/bins/chip_info_aarch64 -e 0
     68
     69[I:20260123:00:02:36:178031] [] [kinara_main_635][IODeviceManager] enumerate ara2 pci devices
     70[I:20260123:00:02:36:405024] [] [kinara_main_635][IODeviceManager] path= /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/0000:02:03.0/0000:81:00.0/
     71[I:20260123:00:02:36:405187] [] [kinara_main_635][IODeviceManager] instance name: IODeviceManager, found an ara2 pci device at: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/0000:02:03.0/0000:81:00.0/
     72[I:20260123:00:02:36:405372] [] [kinara_main_635][pci_io_00:81.0] cache management 0
     73[I:20260123:00:02:36:405398] [] [kinara_main_635][pci_io_00:81.0] instance name: Ara2PcieIO_0, ara2 pci device folder path: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/0000:02:03.0/0000:81:00.0/
     74[I:20260123:00:02:36:405521] [] [kinara_main_635][pci_io_00:81.0] instance name: Ara2PcieIO_0, phy0=0x18700000 phy1=0x18500000 phy2=0x18600000
     75[I:20260123:00:02:36:411041] [] [kinara_main_635][pci_io_00:81.0] enabling pcie_ste_dma for device
     76[W:20260123:00:02:36:411150] [] [kinara_main_635][pci_io_00:81.0] instance name: Ara2PcieIO_0, uiodma addr is : 0x7b000000
     77[I:20260123:00:02:36:411293] [] [kinara_main_635][pci_io_00:81.0] successfully enabled pcie_ste_dma for pcie device
     78[I:20260123:00:02:36:421550] [] [kinara_main_635][pci_io_00:81.0] instance name: Ara2PcieIO_0, vendor=0x1e58 product=0x2
     79[I:20260123:00:02:36:422136] [] [kinara_main_635][pci_io_00:81.0] Calling pcie tl clock programming, removing pcie clock from bypass
     80[W:20260123:00:02:36:425541] [ChipInfo] [kinara_main_635][ChipInfo] ara_physical_id:  0
     81[I:20260123:00:02:36:426262] [] [task_request_queue_processing_task_runner0_640][ChipInfoRequest] BOOT SUCCESS
     82[I:20260123:00:02:36:426304] [] [task_request_queue_processing_task_runner0_640][ChipInfoRequest] HIF IS ENABLED
     83[I:20260123:00:02:36:527551] [ChipInfo] [kinara_main_635][ChipInfo] Request Done
     84[I:20260123:00:02:36:532629] [ChipInfo] [kinara_main_635][ChipInfo] chip info for the devices connected
     85 +-----------+---------------+----------------------------------------------+
     86| Tool      | Device Number | Info                                         |
     87+-----------+---------------+----------------------------------------------+
     88| Chip Info | 0, strap:0    | +-----------------------------+------------+ |
     89|           |               | | Parameter                   | Value      | |
     90|           |               | +-----------------------------+------------+ |
     91|           |               | | chip_id                     | Ara2 A01   | |
     92|           |               | | bus_id                      | 0:129:0    | |
     93|           |               | | if_type                     | PCIE       | |
     94|           |               | | chip_physical_id            | 0          | |
     95|           |               | | pcie_present                | 1          | |
     96|           |               | | usb_present                 | 0          | |
     97|           |               | | ddr_present                 | 1          | |
     98|           |               | | jtag_present                |            | |
     99|           |               | | sys_frequency               | 25 MHz     | |
     100|           |               | | neural_processor_frequency  | 25 MHz     | |
     101|           |               | | control_processor_frequency | 25 MHz     | |
     102|           |               | | ddr_frequency               | 25 MHz     | |
     103|           |               | | ddr_mfr                     |            | |
     104|           |               | | ddr_size                    | NA         | |
     105|           |               | | flash_mfr                   | NA         | |
     106|           |               | | flash_size                  | NA         | |
     107|           |               | | num_flash_images            | NA         | |
     108|           |               | | dev_temp1                   | 21.07 C    | |
     109|           |               | | voltage1                    | 0.788796 V | |
     110|           |               | | last power state            | NA         | |
     111|           |               | | current power state         | L1         | |
     112|           |               | | boot_status                 | 1          | |
     113|           |               | | internal_mem_size           | 8 MB       | |
     114|           |               | | life_cycle                  | TESTED     | |
     115|           |               | | firmware_version(raw)       | 32779      | |
     116|           |               | | firmware_version            | 0.128.11   | |
     117|           |               | +-----------------------------+------------+ |
     118|           |               |                                              |
     119+-----------+---------------+----------------------------------------------+
     120
     121root@noble-venice:~/art/linux#
     122
     123}}}
     124
     125Program the Flash (one time only):
     126{{{
     127./bins/program_flash_aarch64 -e 0 -f ./boot_img/willow_therm.hex
     128<reboot the host/ reset ara device to get new firmware loaded on ara device>
     129}}}
     130
     131
     132Activate the chip:
     133{{{
     134root@noble-venice:~/art/linux/aarch64/hw_utils# ./bins/active_enable_aarch64 -e 0 -m 2
     135Kinara Inc. Silicon utilities version 0.5.9
     136
     137Run directory: /root/art/linux/aarch64/hw_utils
     138./bins/active_enable_aarch64 -e 0 -m 2
     139
     140[I:20260129:17:16:09:595108] [] [kinara_main_678][Active_Enable] In run phase of Flash image
     141[I:20260129:17:16:09:595458] [] [kinara_main_678][Active_Enable] Device Found Done ara-physical-id= 0
     142[I:20260129:17:16:09:595487] [] [kinara_main_678][IODeviceManager] enumerate ara2 pci devices
     143[I:20260129:17:16:09:794621] [] [kinara_main_678][IODeviceManager] path= /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     144[I:20260129:17:16:09:794732] [] [kinara_main_678][IODeviceManager] instance name: IODeviceManager, found an ara2 pci device at: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     145[I:20260129:17:16:09:794880] [] [kinara_main_678][pci_io_00:01.0] cache management 0
     146[I:20260129:17:16:09:794901] [] [kinara_main_678][pci_io_00:01.0] instance name: Ara2PcieIO_0, ara2 pci device folder path: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     147[I:20260129:17:16:09:795008] [] [kinara_main_678][pci_io_00:01.0] instance name: Ara2PcieIO_0, phy0=0x18300000 phy1=0x18100000 phy2=0x18200000
     148[I:20260129:17:16:09:798594] [] [kinara_main_678][pci_io_00:01.0] enabling pcie_ste_dma for device
     149[W:20260129:17:16:09:798675] [] [kinara_main_678][pci_io_00:01.0] instance name: Ara2PcieIO_0, uiodma addr is : 0xf0a00000
     150[I:20260129:17:16:09:798777] [] [kinara_main_678][pci_io_00:01.0] successfully enabled pcie_ste_dma for pcie device
     151[I:20260129:17:16:09:805173] [] [kinara_main_678][pci_io_00:01.0] instance name: Ara2PcieIO_0, vendor=0x1e58 product=0x2
     152[I:20260129:17:16:09:807783] [] [kinara_main_678][pci_io_00:01.0] Calling pcie tl clock programming, removing pcie clock from bypass
     153[I:20260129:17:16:09:808154] [] [kinara_main_678][Active_Enable] [CTEST]: SBP Ready for Runtime Command
     154
     155[I:20260129:17:16:09:808182] [] [kinara_main_678][Active_Enable] [CTEST]: HIF is SETUP
     156[I:20260129:17:16:09:808197] [] [kinara_main_678][Active_Enable] Entering State Full PRD 2
     157[I:20260129:17:16:09:808214] [] [kinara_main_678][Active_Enable] {} 4
     158[I:20260129:17:16:09:808251] [] [kinara_main_678][Active_Enable] [CTEST]: Pushed HIF req Type :   211 1 1
     159[I:20260129:17:16:09:808265] [] [kinara_main_678][Active_Enable] [CTEST]: Pushed HIF req occ :  32
     160[I:20260129:17:16:09:808629] [] [kinara_main_678][Active_Enable] {} 4
     161[I:20260129:17:16:09:808673] [] [kinara_main_678][Active_Enable] [CTEST]: HIF response 0
     162[I:20260129:17:16:09:808693] [] [kinara_main_678][Active_Enable] [CTEST]: CMD_TYPE   211
     163[I:20260129:17:16:09:808711] [] [kinara_main_678][Active_Enable] [CTEST]: CMD_ID     1
     164[I:20260129:17:16:09:808728] [] [kinara_main_678][Active_Enable] [CTEST]: QID_ID     1
     165[I:20260129:17:16:09:808746] [] [kinara_main_678][Active_Enable] [CTEST]: HIF PS Read Response
     166[I:20260129:17:16:09:808765] [] [kinara_main_678][Active_Enable] [CTEST]: Status :   0
     167[I:20260129:17:16:09:808782] [] [kinara_main_678][Active_Enable] [CTEST]: PS Response Data Status :   0
     168[I:20260129:17:16:09:808799] [] [kinara_main_678][Active_Enable] [CTEST]: PS Response Data Current Power State :   2
     169[I:20260129:17:16:09:808816] [] [kinara_main_678][Active_Enable] [CTEST]: PS Response Data PVT_LOCK :  0
     170[I:20260129:17:16:09:808836] [] [kinara_main_678][Active_Enable] [CTEST]: TEST PASSED
     171}}}
     172
     173Configure the DRAM:
     174{{{
     175root@noble-venice:~/art/linux/aarch64/hw_utils# ./bins/ddr_unified_config_aarch64 -e 0 -s 1 -g 1 -l 3 -w 2 -f 0 -n 0 -u 0 -m 0 -r 0 -b willow -o ./ddr_config/ddr_cfg_35.bin
     176Kinara Inc. Silicon utilities version 0.5.9
     177
     178Run directory: /root/art/linux/aarch64/hw_utils
     179./bins/ddr_unified_config_aarch64 -e 0 -s 1 -g 1 -l 3 -w 2 -f 0 -n 0 -u 0 -m 0 -r 0 -b willow -o ./ddr_config/ddr_cfg_35.bin
     180
     181[I:20260129:17:17:05:155740] [] [kinara_main_706][IODeviceManager] enumerate ara2 pci devices
     182[I:20260129:17:17:05:343281] [] [kinara_main_706][IODeviceManager] path= /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     183[I:20260129:17:17:05:343392] [] [kinara_main_706][IODeviceManager] instance name: IODeviceManager, found an ara2 pci device at: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     184[I:20260129:17:17:05:343538] [] [kinara_main_706][pci_io_00:01.0] cache management 0
     185[I:20260129:17:17:05:343558] [] [kinara_main_706][pci_io_00:01.0] instance name: Ara2PcieIO_0, ara2 pci device folder path: /sys/devices/platform/soc@0/33800000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/
     186[I:20260129:17:17:05:343663] [] [kinara_main_706][pci_io_00:01.0] instance name: Ara2PcieIO_0, phy0=0x18300000 phy1=0x18100000 phy2=0x18200000
     187[I:20260129:17:17:05:346269] [] [kinara_main_706][pci_io_00:01.0] enabling pcie_ste_dma for device
     188[W:20260129:17:17:05:346327] [] [kinara_main_706][pci_io_00:01.0] instance name: Ara2PcieIO_0, uiodma addr is : 0xf0a00000
     189[I:20260129:17:17:05:346428] [] [kinara_main_706][pci_io_00:01.0] successfully enabled pcie_ste_dma for pcie device
     190[I:20260129:17:17:05:351159] [] [kinara_main_706][pci_io_00:01.0] instance name: Ara2PcieIO_0, vendor=0x1e58 product=0x2
     191[I:20260129:17:17:05:353537] [] [kinara_main_706][pci_io_00:01.0] Calling pcie tl clock programming, removing pcie clock from bypass
     192[I:20260129:17:17:05:353868] [] [kinara_main_706][ddr_unified_config] Configuring DDR now. Approxmiate time to complete: 60 seconds.
     193[I:20260129:17:17:05:353894] [] [kinara_main_706][ddr_unified_config] UNIFIED CFG BIN LOADING
     194[I:20260129:17:17:36:009795] [] [kinara_main_706][ddr_unified_config] DDR configuation successful. DDR BIST: PASSED
     195}}}
     196
     197
     198Activate Proxy: (change config/proxy_config.yaml if you want to run in background)
     199
     200{{{
     201root@noble-venice:~/art/linux/aarch64/proxy# sudo ./proxy_aarch64 -c ../../config/proxy_config.yaml
     202
     203Kinara Inc. Silicon utilities version 0.5.9
     204
     205Run directory: /root/art/linux/aarch64/proxy
     206./proxy_aarch64 -c ../../config/proxy_config.yaml
     207
     208[I:20260129:17:23:04:425472] [] [kinara_main_764][GlobalLogger]
     209root@noble-venice:~/art/linux/aarch64/proxy# ps -aef | grep prox
     210root         766       1  9 17:23 ?        00:00:00 ./proxy_aarch64 -c ../../config/proxy_config.yaml
     211}}}
     212
     213Download a sample yolov8n model (.dvm file) and untar:
     214 * Download [https://workdrive.zohoexternal.com/external/8c92f49dc6ba6e433a99801eef80363a46c7c8b74c9907bd47b0f3c4b9eccf14 URL] (may require access to support.kinara.ai portal)
     215 * Transfer to Gateworks SBC and untar (adjust IP to machine where file is hosted):
     216{{{
     217root@noble-venice:~/art/linux/aarch64/nnapp# wget 192.168.1.1/kinara/sdk_model_compile.tar.gz
     218--2026-01-29 17:26:52--  http://192.168.1.1/kinara/sdk_model_compile.tar.gz
     219Connecting to 192.168.1.1:80... connected.
     220HTTP request sent, awaiting response... 200 OK
     221Length: 23754978 (23M) [application/x-gtar-compressed]
     222Saving to: ‘sdk_model_compile.tar.gz’
     223
     224sdk_model_compile.tar.gz                        100%[=====================================================================================================>]  22.65M   112MB/s    in 0.2s   
     225
     2262026-01-29 17:26:52 (112 MB/s) - ‘sdk_model_compile.tar.gz’ saved [23754978/23754978]
     227root@noble-venice:~/art/linux/aarch64/nnapp# tar -xvf sdk_model_compile.tar.gz
     228}}}
     229
     230Either change the input path to the model, or move the model to /tmp
     231
     232Modify the ../../config/nnapp_config.yaml and change the input_path in the async section:
     233{{{
     234async:
     235        # if this flag is TRUE, then the input directory of each model is iterated only once.
     236        # else, the input directory is iterated for model_param.batch_size * model_param.iterations times
     237        run_once_and_for_all: False
     238        utilization_stats: False
     239        # dump outputs with timestamp
     240        dump_with_timestamp: False
     241        # this section contains all the model related params for infer async mode
     242        models:
     243          0:
     244            name: "model1"
     245            path: "/tmp/model.dvm"
     246            input_path: ""
     247            output_path: ""
     248
     249}}}
     250
     251Execute the sample model run:
     252{{{
     253root@noble-venice:~/art/linux/aarch64/nnapp# ./nnapp_aarch64 --config ../../config/nnapp_config.yaml
     254[W:20260129:17:29:41:832406] [] [n/a_-1][config] default YAML file not found  ./config.yaml , specify yaml path
     255Kinara, Inc.
     256
     257*---------------------------------------------------------------*
     258*              Neural Network Inference Application             *
     259*    Copyright(c) 2018-23, Kinara, Inc. All rights reserved.    *
     260*---------------------------------------------------------------*
     261
     262Run:
     263working directory: /root/art/linux/aarch64/nnapp
     264./nnapp_aarch64 --config ../../config/nnapp_config.yaml
     265the app expects the inputs as raw tensors. The inputs are assumed to be preprocessed and written to a file
     266the inputs have to be in the below format:
     267<input_image_name>/quantized/layer<layer_id>-<blob_name>-<blob_id>_input_dv.dat
     268and the golden inputs in the below format:
     269<input_image_name>/quantized/<layer_name>-<layer_id>-<blob_name>-<blob_id>
     270[I:20260129:17:29:41:898866] [] [main_807][model_parameters] empty input_path for model= model1 , setting output_path and golden_output_path to none
     271[I:20260129:17:29:41:903483] [] [main_807][BaseApp] connected to proxy socket: IP_Address= 127.0.0.1  port= 5000
     272[I:20260129:17:29:41:904161] [] [main_807][BaseApp]
     273 +------------+-----------------+
     274| Product    | Current Version |
     275+------------+-----------------+
     276| client_lib | 1.3.0.0         |
     277| firmware   | 0.128.11.0      |
     278| proxy      | 1.3.0.0         |
     279| sysapi     | 1.1.61.0        |
     280+------------+-----------------+
     281
     282[I:20260129:17:29:41:904950] [] [main_807][BaseApp]
     283 +------------+--------------------+
     284| Product    | Supported Versions |
     285+------------+--------------------+
     286| client_lib | 1.0.0.0            |
     287| client_lib | 1.1.1.0            |
     288| client_lib | 1.1.2.0            |
     289| client_lib | 1.3.0.0            |
     290| cnn_model  | 2.0.0.0            |
     291| cnn_model  | 2.1.0.0            |
     292| firmware   | 0.5.2.0            |
     293| firmware   | 1.1.2.0            |
     294| llm_model  | 3.0.0.0            |
     295| llm_model  | 3.1.0.0            |
     296| pci_driver | 1.0.4.0            |
     297| pci_driver | 1.0.6.6            |
     298| proxy      | 0.8.0.0            |
     299| proxy      | 0.9.0.0            |
     300| proxy      | 1.1.1.0            |
     301| proxy      | 1.3.0.0            |
     302+------------+--------------------+
     303
     304[I:20260129:17:29:41:905463] [] [main_807][BaseApp] found endpoints: count= 1
     305[I:20260129:17:29:41:905908] [] [main_807][BaseApp] creation of endpoint group successful: model= model1
     306[I:20260129:17:29:41:984637] [] [main_807][BaseApp] model load successful: model= model1
     307[I:20260129:17:29:42:011215] [] [task_print_device_stats_812][Stats] temperature= 36.2557 ep status:  DV_ENDPOINT_STATE_ACTIVE  0x1000608c:   15d0200
     308[I:20260129:17:29:42:072253] [] [main_807][AsyncApp] completed iteration= 1
     309[I:20260129:17:29:42:145357] [] [main_807][AsyncApp] completed iteration= 2
     310[I:20260129:17:29:42:218729] [] [main_807][AsyncApp] completed iteration= 3
     311[I:20260129:17:29:42:291966] [] [main_807][AsyncApp] completed iteration= 4
     312[I:20260129:17:29:42:365203] [] [main_807][AsyncApp] completed iteration= 5
     313[I:20260129:17:29:42:437872] [] [main_807][AsyncApp] completed iteration= 6
     314[I:20260129:17:29:42:510537] [] [main_807][AsyncApp] completed iteration= 7
     315[I:20260129:17:29:42:584005] [] [main_807][AsyncApp] completed iteration= 8
     316[I:20260129:17:29:42:656563] [] [main_807][AsyncApp] completed iteration= 9
     317[I:20260129:17:29:42:729354] [] [main_807][AsyncApp] completed iteration= 10
     318[I:20260129:17:29:42:802121] [] [main_807][AsyncApp] completed iteration= 11
     319[I:20260129:17:29:42:874931] [] [main_807][AsyncApp] completed iteration= 12
     320[I:20260129:17:29:42:947354] [] [main_807][AsyncApp] completed iteration= 13
     321[I:20260129:17:29:43:012893] [] [task_print_device_stats_812][Stats] temperature= 36.2557 ep status:  DV_ENDPOINT_STATE_ACTIVE  0x1000608c:   15d0200
     322[I:20260129:17:29:43:020108] [] [main_807][AsyncApp] completed iteration= 14
     323[I:20260129:17:29:43:094043] [] [main_807][AsyncApp] completed iteration= 15
     324[I:20260129:17:29:43:166269] [] [main_807][AsyncApp] completed iteration= 16
     325[I:20260129:17:29:43:238760] [] [main_807][AsyncApp] completed iteration= 17
     326[I:20260129:17:29:43:311065] [] [main_807][AsyncApp] completed iteration= 18
     327[I:20260129:17:29:43:383388] [] [main_807][AsyncApp] completed iteration= 19
     328[I:20260129:17:29:43:455880] [] [main_807][AsyncApp] completed iteration= 20
     329[I:20260129:17:29:43:456773] [] [main_807][Stats] summary stats
     330 ╔════════╤════════════════════════════╤═════════════════════════╤═══════════════════════════╤══════════════════╗
     331║ Model  │        hw_time (ms)        │      ip_time (ms)       │       op_time (ms)        │  app_time (ms)   ║
     332╠════════╪════════╤═════════╤═════════╪═══════╤═══════╤═════════╪════════╤════════╤═════════╪═════╤═════╤══════╣
     333║        │ max    │ min     │ mean    │ max   │ min   │ mean    │ max    │ min    │ mean    │ max │ min │ mean ║
     334╟────────┼────────┼─────────┼─────────┼───────┼───────┼─────────┼────────┼────────┼─────────┼─────┼─────┼──────╢
     335║ model1 │ 3.1052 │ 3.08395 │ 3.09515 │ 4.365 │ 2.346 │ 3.17945 │ 12.187 │ 10.369 │ 11.3023 │ 76  │ 71  │ 71.9 ║
     336╚════════╧════════╧═════════╧═════════╧═══════╧═══════╧═════════╧════════╧════════╧═════════╧═════╧═════╧══════╝
     337 
     338  model_name=model1 iteration=20 batch_size=5 num_ip=1 num_op=1 total_ip_size=122880000 total_op_size=120960000 num_inferences=100
     339
     340[I:20260129:17:29:43:457176] [] [main_807][Stats] endpoint load distribution:  [0,100]
     341[I:20260129:17:29:43:457195] [] [main_807][Stats] total number of inferences:  100
     342[I:20260129:17:29:43:457221] [] [main_807][Stats] Performance: HW IPS= 323.086  App IPS= 69.541
     343root@noble-venice:~/art/linux/aarch64/nnapp#
     344}}}
     345
     346Note the final line that shows Performance: HW IPS= 323.086.
     347
     348== Modelzoo Demo
     349
     350Gain access from Kinara to https://github.com/KinaraAi/kinara-modelzoo-ara2
     351
     352Scroll down for all the instructions on that page.
     353
     354The key instructions are:
     355
     356{{{
     357git clone https://github.com/KinaraAi/kinara-modelzoo-ara2.git
     358pip3 install -r requirements.txt
     359
     360}}}
     361
     362
     363Set runtime:
     364{{{
     365export DV_TGT_ROOT=<Path-to-runtime>
     366}}}
     367
     368Download pre-compiled models:
     369{{{
     370cd kinara-modelzoo-ara2/flows
     371./precompiled_model_download.sh model=mobilenetv1-tf
     372}}}
     373
     374
     375Run an inference:
     376{{{
     377./infer-hw.sh images_folder=../testimages model=mobilenetv1-tf
     378}}}
     379
     380== Troubleshooting
     381
     382Please note software support should be routed through NXP, who produces the ARA240 DNPU Chip.
     383
     384[https://community.nxp.com]
     385