Build and test KleidiCV on macOS
Who is this for?
This is an introductory topic for software developers who want to build and test KleidiCV on macOS.
What will you learn?
Upon completion of this Learning Path, you will be able to:
- Install and compile KleidiCV on macOS
- Run KleidiCV example tests
- Enable Scalable Matrix Extensions (SME) and verify increased SME performance
Prerequisites
Before starting, you will need the following:
- A Mac with Apple Silicon (M4 generation or newer)
- Xcode command line tools installed
- Basic familiarity with using the Terminal and command-line tools
Summary
This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
You’ll build Arm KleidiCV from source on macOS and run its bundled tests. You’ll compile the library, execute the API test, and inspect vector-length and test-count output. KleidiCV selects Neon, SVE2, or SME2 implementations based on Apple silicon, so you can validate hardware-specific backends without changing application code.
Frequently asked questions
These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
Run the test binary at
./build-kleidicv-benchmark-SME/test/api/kleidicv-api-test. It prints the number of tests executed and their results to confirm the build works.Expect output similar to a vector length report and a summary of tests run and passed. A clean pass indicates the build and public API are functioning.
KleidiCV auto-detects your CPU and selects the fastest path: Neon, SVE2, or SME2. Review the test output in the SME verification step. On supported Apple silicon, SME support is exercised during the tests.
No. KleidiCV automatically detects the hardware and chooses the optimal implementation, so your code doesn’t need to change.
Confirm the build finished without errors and run the binary from the path shown. If issues persist, confirm that you installed the required tools, then rebuild and rerun the tests.