How to make sure "hailortcli monitor" picks up your inference

  • Path A (single process):

  • Path B (multi-process service):

TL;DR

  • Set HAILO_MONITOR=1 in the same process that creates/uses the VDevice before it starts.

  • If you’re using the system service, set HAILO_MONITOR=1 in /etc/default/hailort_service and restart the service.

  • Run hailortcli monitor from a different terminal to see the three tables.


Path A - Single process (Python script using @local or an AIServer launched from a shell)

(Only if multi-process service is NOT running, check systemctl status hailort.service)

  1. Set the env var in the terminal you’ll use to launch the script or AIServer:

export HAILO_MONITOR=1

# (Optional) Change refresh rate (default 1000ms):

export HAILO_MONITOR_TIME_INTERVAL=500

  1. Start your inference script / AIServer from that same terminal (so the process inherits the env):

python your_inference.py

# or launch AIServer here and then run inference on it using any SDK.

  1. From a second terminal, run:

hailortcli monitor


Path B - If multi-process service is running or necessary

(Only if multi-process service IS running, check systemctl status hailort.service)

  1. Edit the HailoRT service env file:

sudo nano /etc/default/hailort_service

Find the line:


HAILO_MONITOR=0

Flip it to:


HAILO_MONITOR=1

(Optional) Add/adjust the interval:


HAILO_MONITOR_TIME_INTERVAL=500

  1. Reload systemd unit files:

sudo systemctl daemon-reload

  1. Enable (if needed) and start/restart the service:

sudo systemctl enable --now hailort.service

sudo systemctl restart hailort.service

  1. Run the monitor from another shell:

hailortcli monitor


What you should see

hailortcli monitor refreshes every second and prints three tables.

If these tables are populated, the scheduler is active and your process is being tracked.