Skip to main content
Solved

Low performance of the Metis M2 on the Raspberry Pi5


Hi! I'm testing the Metis M2 on a Rapsberry Pi 5 using the Ubuntu 22.04 container. I can successfully get results using the inference test suggested by the article:

./inference.py yolov8s-coco-onnx ./media/traffic1_480p.mp4

 

Unfortunately, I get around 4FPS. Is this expected? If I profile the device and the host separately (using --show-host-fps and --show-device-fps) I see that the device is running at ~800FPS while the host is the one bottlenecking at ~4FPS.

I tried enabling GLES processing using 

export AXELERA_OPENGL_BACKEND=gles,3,1

but, unfortunately, it makes not much of a difference. I also tried setting the PCI to gen3 by setting the following in the /boot/firmware/config.txt, without any luck:

dtparam=pciex1_gen=3

As a reference: these are the instructions I'm following:

https://support.axelera.ai/hc/en-us/articles/26362016484114-Bring-up-Voyager-SDK-in-Raspberry-Pi-5

https://support.axelera.ai/hc/en-us/articles/25953148201362-Install-Voyager-SDK-in-a-Docker-Container

Is this performance normal for the Raspberry Pi5? Or am I doing something wrong?

Thanks!

Michael

Best answer by Victor Labian

Hello ​@mgruner , I have been able to reproduce your issue and have found a workaround.

 

Can you please try running like this:

 

AXELERA_USE_DOUBLE_BUFFER=0 ./inference.py yolov8s-coco-onnx ./media/traffic1_480p.mp4 

 

If that crashed, please try:

 

AXELERA_USE_DOUBLE_BUFFER=0 AXELERA_CONFIGURE_BOARD=,30 ./inference.py yolov8s-coco-onnx ./media/traffic1_480p.mp4 

 

For some reason we are investigating, it looks like in some cases something is going wrong with double buffering on Raspberry Pi 5. Note that the two commands I shared are almost not affecting performance.

 

Let us know how it goes.

 

Best,

 

Victor

 

FYI ​@Spanner 

View original
Did this help you find an answer?

Forum|alt.badge.img+2

Hi ​@mgruner ,

That is indeed lower than expected FPS, as our tests run much faster.

  • What M.2 HAT are you using?

I suppose you already did it but can you double check that:

  • The following line has been added to /boot/firmware/config.txt:
    • dtparam=pciex1_gen=3
  • You have rebooted your Raspberry Pi with sudo reboot for these settings to take effect.

Once you have done this, let’s check the actual speed of the PCIe link by doing and share the output with us:

  • sudo lspci -s 0000:01:00.0 -vvv

Note: you have to use the address where Metis is located (which might or might not be 0000:01:00.0), which you can find doing lspci.

 

Kind regards,

Victor


Forum|alt.badge.img+2

Hello ​@mgruner , I have been able to reproduce your issue and have found a workaround.

 

Can you please try running like this:

 

AXELERA_USE_DOUBLE_BUFFER=0 ./inference.py yolov8s-coco-onnx ./media/traffic1_480p.mp4 

 

If that crashed, please try:

 

AXELERA_USE_DOUBLE_BUFFER=0 AXELERA_CONFIGURE_BOARD=,30 ./inference.py yolov8s-coco-onnx ./media/traffic1_480p.mp4 

 

For some reason we are investigating, it looks like in some cases something is going wrong with double buffering on Raspberry Pi 5. Note that the two commands I shared are almost not affecting performance.

 

Let us know how it goes.

 

Best,

 

Victor

 

FYI ​@Spanner 


  • Cadet
  • July 4, 2025

Hey ​@Victor Labian, thanks for the prompt response and workarounds! I don't have the Metis with me right now, but will test next week and report back. 


  • Cadet
  • July 16, 2025

Hi again ​@Victor Labian 

I wanted to confirm your workaround fixes the low framerate issue.

For anyone else reading, we've documented our experience running the Metis M2 in the Raspberry Pi 5 in our blog:

https://www.ridgerun.ai/post/axelera-metis-m2-on-raspberry-pi-5

Thanks again!


Forum|alt.badge.img+2

Hi ​@mgruner ,

Thanks a lot for confirming that solved the issue!

It is also great to see that you shared your experience in your website!

Keep an eye in future releases, as we will keep improving experience and performance.

Feel free to reach us anytime you need it.

Best,

Victor


Reply