Say hello to Adaptyst: a comprehensive and architecture-agnostic performance analysis tool addressing your software, hardware, and system needs. Both today and tomorrow. Open-source and maintained at CERN.
Download the development version My work isn't high-level software. Is Adaptyst for me?The technological landscape is changing very rapidly and tools relevant today may become obsolete tomorrow. Adaptyst will be always up-to-date with the market thanks to its modular design and API for systems/hardware (and workflows soon).
Programming microcontrollers or bare-metal systems? Designing custom hardware at the edge? Using GPUs? Running calculations on standard computers? Working on large-scale computations? Anything in-between? Adaptyst will get you covered as new modules are developed.
Intel CPU? AMD CPU? ARM? RISC-V? NVIDIA GPU? Something else? Don't worry, Adaptyst works everywhere where Linux runs and its modularity will ensure the wide compatibility with various configurations across the computing spectrum.
Thanks to the linuxperf module, Adaptyst profiles and produces code-detailed analyses (such as flame graphs) for both on-CPU and off-CPU activity of any software on Linux, with full stack traces (frame pointers required) and all threads/processes properly traced. Low-level computer interactions can also be processed to the extent supported by your hardware (e.g. cache misses).
Adaptyst is under active development as an open-source project at CERN, originally born as part of the EU-funded SYCLOPS initiative. It is available free of charge on GitHub and development news is posted at least biweekly!
Algorithmic optimisations alone are becoming insufficient. Given your workflow, requirements, and constraints, Adaptyst will propose the best compute solution covering all sides of computation: software + hardware + systems. This includes not just code optimisation, but also selecting and customising compute units (CPUs, GPUs, FPGAs etc.), OS, memory, storage, networking, etc.