What problem does it solve?
Verifying MNN changes across host builds, Android devices, and iPhones requires juggling multiple scripts, stage matrices, and device quirks; this Skill consolidates the regression suite and iOS LLM benchmarking into one guided workflow.
Core Features & Use Cases
- Regression / CI suite: Run static checks, host CPU tests, and the on-device Android arm64 matrix via
./test.sh with declarative stage configuration in test_stages.json, including filters for CPU, OpenCL, Vulkan, and low-memory stages.
- iOS real-device LLM benchmarking: Measure prefill/decode tokens-per-second on iPhone/iPad with
ios_llm_bench.sh, compare branches, and validate Metal kernel changes with documented pitfalls and recovery procedures.
- Stage management: Add, skip, or retune test stages and add new operator tests without editing shell scripts.
- Use Case: After modifying a Metal attention kernel, run the Android unit matrix on an attached device, then benchmark prefill/decode speed on an iPad to confirm no performance regression.
Quick Start
Ask the agent to run the MNN test suite locally or on a connected device, for example: run ./test.sh local for host regression or benchmark the LLM on my iPhone with the iOS bench script.