Skip to main content

Tutorial Setup

Complete this setup once before starting a tutorial. Choose the environment that matches the tutorial category; the Neat Library and PCIe bundles are not interchangeable.

1. Choose your environment

Tutorial categoryRun onPython environment
Models & Inference, Graphs & Pipelines, Cameras & Streaming, GenAIModalix DevKit or the environment named by the tutorial~/pyneat
PCIe Co-ProcessingHost connected to a Modalix PCIe Card~/pyneatpcie

PCIe tutorials run on the host, not inside the SDK container or directly on the card.

2. Set up Neat Library tutorials

Make sure the Neat Library is installed, then run these commands from the directory where you want the tutorial bundle:

sima-cli neat install core -t extrascd sima-neat-*-Linux-extras

For Python tutorials running directly on a DevKit, activate PyNeat and verify the import:

source ~/pyneat/bin/activatepython3 -c "import pyneat; print('pyneat ready')"

3. Set up PCIe tutorials

First install and verify the PCIe host package. Then download the tutorial bundle for the Ubuntu version running on the host. Run the command from the directory where you want the bundle.

Ubuntu 22.04:

sima-cli neat install core/pciehost/ubuntu22/amd64 -t extrascd sima-pcie-host-*-Linux-amd64-extras

Ubuntu 24.04:

sima-cli neat install core/pciehost/ubuntu24/amd64 -t extrascd sima-pcie-host-*-Linux-amd64-extras

Verify PCIe PyNeat:

source ~/pyneatpcie/bin/activatepython3 -c "import pyneatpcie; print('pyneatpcie ready')"

4. Prepare model archives

Use Model Zoo to download the model named by the tutorial. For example:

sima-cli modelzoo get resnet_50sima-cli modelzoo get yolo_v8s

Neat Library tutorials accept --model, so you can pass the downloaded archive directly. PCIe tutorials use fixed filenames in the PCIe extras root:

PCIe tutorialRequired model file
Run Your First Model over PCIeyolo_v8s_mpk.tar.gz
Run PCIe Inference Asyncyolo_v8s_mpk.tar.gz
Run Multiple Modelsresnet_50_mpk.tar.gz and yolo_v8s_mpk.tar.gz

Model Zoo output names and locations can vary. If necessary, copy the archives into the PCIe extras root using the required names:

cp /absolute/path/to/downloaded-resnet-archive.tar.gz resnet_50_mpk.tar.gzcp /absolute/path/to/downloaded-yolov8s-archive.tar.gz yolo_v8s_mpk.tar.gz

5. Verify paths and expected output

Run tutorial commands from the extracted extras root. Confirm that it contains the build helper, prebuilt C++ programs, and tutorial source:

test -x build.shls lib/*/tutorials/ls share/*/tutorials/
  • Prebuilt C++ programs are under lib/<package>/tutorials/.
  • C++ and Python source is under share/<package>/tutorials/.
  • ./build.sh --list-targets lists the C++ programs you can rebuild.
  • Successful C++ tutorials finish with [OK]; Python tutorials print a compact result such as top1=..., completed=..., or detections=....

If a tutorial reports a missing file, first check the current directory and the model filename. For more help, see Troubleshooting.