
Zephelin
Profiling library that captures runtime metrics of Zephyr apps, with a focus on AI/ML inference.
- Follows branch
main: eachwest updatewill get its latest commits. To stay on one version, it is recommended to use a release tag.
Install
# From the workspace root
curl -fsSL https://kartben.github.io/windrose/m/zephelin.yaml \
-o zephyr/submanifests/zephelin.yaml
west update zephelin
# From the workspace root
Invoke-WebRequest https://kartben.github.io/windrose/m/zephelin.yaml `
-OutFile zephyr/submanifests/zephelin.yaml
west update zephelin
- name: zephelin url: https://github.com/antmicro/zephelin revision: main path: modules/debug/zephelin
Add to projects in your west.yml, then run west update zephelin.
Details
- Revision
- main
- License
- Apache-2.0
- Maintainers
- @antmicro
- Last commit
- 21 days ago
About
Zephyr Profiling Library (ZPL), or Zephelin for short, is a library which enables capturing and reporting runtime performance metrics for profiling and detailed analysis of Zephyr applications, with a special focus on applications running AI/ML inference workloads.
In addition to the above, Zephelin also simplifies the analysis of AI runtimes, such as LiteRT and microTVM, allowing you to gain a better understanding of the underlying bottlenecks or potential opportunities for optimization.
Zephelin features:
- Tracing execution of Zephyr applications on hardware
- Obtaining traces over UART, USB or a debug adapter
- Delivering traces in CTF and TEF formats
- Scripts for capturing traces from a device
- Collecting readings of memory (stack, heaps, kernel heaps, memory slabs), sensors such as die temperature, thread CPU usage and AI runtimes such as tensor arena usage in LiteRT
- Details on neural network layers executed in the LiteRT or microTVM runtime: dimensions of inputs, outputs and weights, layer parameters, and time and resources spent per layer
- Compilation-level and runtime-level configuration of the library
- Ability to configure a profiling tier, controlling the subsystems and the amount of data collected
All of the above can be analyzed with Zephelin Trace Viewer.