MX3 on Intel N5105 SBC - illegal instruction

Hi folks,

I’m setting up a Frigate instance on Odroid H3 + Debian 13. SDK install went smooth until the very last step - mx_nc –version. mx_nc crashes with illegal instruction and initial digging points to vmovq (in neural_compiler) that belongs to AVX/AVX2 instruction set. Odroid H3 is sporting Celeron N5105 (~2021) that only supports SSE4.2.

What are my choices here?

Do you guys need AVX?

Would it be too much trouble to recompile the SDK for SSE4 or make AVX dependency conditional?

Should I abandon H3? If MX3 worked with it, it would be such a good fit for Frigate…

Thanks!

Hi Andrey,

Thanks for reaching out.

  1. The MemryX SDK depends on several third-party libraries, such as TensorFlow, TensorFlow Lite, and PyTorch, that require AVX support on x86 CPUs. So, the prebuilt SDK packages currently expect an AVX-capable CPU.

  2. Frigate’s default object detection pipeline also typically requires AVX on x86 CPUs. This has been discussed in the Frigate community here: https://github.com/blakeblackshear/frigate/issues/14712

  3. There is a workaround to use MemryX on systems without AVX by building the required runtime components manually and skipping AVX-dependent plugins.

  • First, build MXAccl and mxa_manager from source:
    https://github.com/memryx/MxAccl

    • During the build process, you can skip the pre/post-processing plugins, since those depend on TensorFlow/TFLite and other libraries that require AVX.
  • Next, install the MemryX Python package:
    https://github.com/memryx/mx_accl_frigate

    • Frigate’s Docker setup installs the MemryX Python integration from this repository.
  • Notes:

    • This setup installs the runtime components only, which lets you run applications using a pre-built .dfp.
    • Model compilation (mx_nc) still requires a compiler build that expects AVX.

Please follow the instructions in those repositories, and let us know if you run into any issues during setup — we’d be happy to help.

Thank you for your interest in using MemryX with Frigate.