Changes between Version 32 and Version 33 of expansion/gw16168


Ignore:
Timestamp:
08/28/2026 05:25:49 PM (5 hours ago)
Author:
Tim Harvey
Comment:

added details about proxy service

Legend:

Unmodified
Added
Removed
Modified
  • expansion/gw16168

    v32 v33  
    496496[=#ara2-runtime]
    497497== Ara Runtime
    498 NXP has a runtime library for the Ara240 which consists of some statically built libraries as well as a dynamic linked GStreamer plugin.
    499 
    500 The Ara runtime includes a couple of Python Wheels. A Python Wheel is a standard built-package format for distributing Python libraries. It is essentially a ZIP-format archive with a .whl extension that contains all the files needed for a package to run immediately after being. It's fairly standard when using Python to run into package version incompatibilities which is why user based Python virtual environments are used.
     498NXP has a runtime environment for the Ara240 which consists of some libraries, config applications and scripts as well as proxy service and a  GStreamer plugin.
    501499
    502500The Ara runtime provides a complete runtime environment for AI/ML acceleration using the Ara240 NPU on for aarch64. This package includes:
     
    507505 * Helper scripts for monitoring, benchmarking, and model management
    508506 * Systemd service for automatic hardware initialization
     507
     508The ara240 proxy {{{proxy_ara240}}} provides a network client/server API for the hardware and is configured via {{{/etc/rt-sdk-ara240/proxy_config.yaml}}}. It is brought up on boot by the {{{rt-sdk-ara2.service}}} and listens on network port 5000 by default.
     509
     510The Ara runtime also includes a couple of Python Wheels. A Python Wheel is a standard built-package format for distributing Python libraries. It is essentially a ZIP-format archive with a .whl extension that contains all the files needed for a package to run immediately after being. It's fairly standard when using Python to run into package version incompatibilities which is why user based Python virtual environments are used.
    509511
    510512Installation on a Gateworks board with Ubuntu based OS:
     
    582584 - /etc/systemd/system/rt-sdk-ara2.service - systemd service that handles the various hw util config
    583585 - /etc/rt-sdk-ara240/cnn_config.yaml - config for nnapp
    584  - /etc/rt-sdk-ara240/proxy_config.yam - config for proxy
     586 - /etc/rt-sdk-ara240/proxy_config.yaml - config for proxy
    585587
    586588Notes:
     
    589591 - the binary tools and libs are all static linked for compatibility
    590592 - the GStreamer libs require GStreamer 1.26 or newer and is dynamic linked
     593 - the {{{rt-sdk-ara2.service}}} brings up the proxy script in the background so if you want to make sure its ready to service you should make sure the port is listening for connections
    591594
    592595Verification steps:
     
    604607ps -eaf | grep proxy_ara240
    605608}}}
     609 1. verify port listening
     610{{{#!bash
     611ss -tulpn | grep :5000
     612}}}
     613
    606614
    607615Examples:
     
    629637[=#gstreamer]
    630638=== GStreamer plugins
    631 The Ara runtime provides an OpenSource GStreamer plugin for detection models:
     639The Ara runtime provides an !OpenSource GStreamer plugin for detection models:
    632640 - [https://github.com/nxp-imx-support/gstreamer-plugins-ara240 dvInf]
    633641