Skip to content

Installation

The EdgeFirst Profiler is distributed three ways. Each ships the matching native binary for your host's OS and architecture (x86_64 / aarch64, Linux / macOS / Windows) — the source and the CLI are identical, only the compiled artifact differs.

  • pip install edgefirst-profiler — the convenience path. Pulls the binary plus the few Python-side helpers needed for end-to-end workflows. This is the recommended default.
  • Platform installer scripts (install.sh / install.ps1) — the right choice for environments where Python is not available, or where the binary needs to land in a system-wide path like /usr/local/bin.
  • Vendor-shipped EdgeFirst images — pre-installed and pinned to the BSP version for that target. Nothing to do.

Per-target pages below cover the runtime libraries, NPU delegates, daemons, and quirks that apply once the binary is in place.

Supported targets

Target Architecture Default backend Optional accelerator
Linux x86_64, aarch64 ONNX Runtime (CPU) TFLite XNNPACK
macOS Apple Silicon ONNX Runtime (CPU) CoreML execution provider
Windows x86_64 ONNX Runtime (CPU)
NVIDIA Jetson Orin aarch64 ONNX Runtime (CUDA EP) TensorRT (via libtrt_shim.so)
NXP i.MX 95 aarch64 TFLite Neutron NPU delegate
NXP i.MX 8M Plus aarch64 TFLite VSI NPU delegate
Raspberry Pi 5 aarch64 ONNX Runtime (CPU) Hailo-8 / 8L (via HailoRT)
Kinara Ara-2 x86_64 / aarch64 host DVM via ara2-proxy
Hailo-8 / 8L any host with HailoRT HailoRT

The profiler CLI and the workflow it drives are the same on every target — what varies (besides the OS/arch-matched binary) is which runtime libraries must be present on the system so the matching backend can dlopen them. Every backend loads its vendor library dynamically; nothing is statically linked, so a missing library on one target never breaks the profiler on another.

Backends and how they are selected

The inference backend is chosen automatically from the model file extension:

Extension Backend Runtime dependency
.onnx ONNX Runtime libonnxruntime.so (Linux) / libonnxruntime.dylib (macOS) / onnxruntime.dll (Windows)
.tflite TensorFlow Lite libtensorflowlite_c.so (Linux only)
.dvm Kinara Ara-2 ara2-proxy daemon (Linux only)
.hef Hailo libhailort.so (Linux only)
.engine / .trt TensorRT libtrt_shim.so on Jetson

When the runtime library is missing, the profiler reports a clear error pointing at the per-target installation guide — not a dlopen traceback.