|
| 1 | +--- |
| 2 | +title: "AdaptivePerf SYCLOPS" |
| 3 | +date: 2024-06-27 |
| 4 | +layout: update |
| 5 | +tags: |
| 6 | + - press-release |
| 7 | + - linux |
| 8 | + - performance |
| 9 | + - github |
| 10 | +--- |
| 11 | + |
| 12 | +AdaptivePerf is an open-source architecture-agnostic code profiler for Linux, based on the custom-patched "perf". Using |
| 13 | +just one single command adaptiveperf `"<command to be profiled>"`, the tool: |
| 14 | + |
| 15 | +* samples both on-CPU and off-CPU activity, |
| 16 | +* traces every spawned thread and process, |
| 17 | +* minimises the risk of broken profiled stacks by detecting inappropriate kernel and CPU configurations automatically ( |
| 18 | + provided that the profiled program has been compiled with frame pointers), |
| 19 | +* produces data for rendering interactive non-time-ordered and time-ordered flame graphs in a web browser, also on |
| 20 | + non-Linux operating systems. |
| 21 | + |
| 22 | +Moreover, with extra adaptiveperf command flags, low-level interactions with hardware can be profiled and result |
| 23 | +processing can be moved to a separate Linux or non-Linux machine through real-time TCP streaming. |
| 24 | + |
| 25 | +The tool has been already tested on the x86-64 and RISC-V architectures, with arm64 to follow soon. You can download the |
| 26 | +development version from GitHub: <https://github.com/AdaptivePerf/AdaptivePerf>. |
| 27 | + |
| 28 | +AdaptivePerf has been created to help profile and benchmark the SYCLOPS stack in high-energy physics data processing, |
| 29 | +genomics analysis, and autonomous systems by addressing the shortcomings of the original “perf”. More features are |
| 30 | +planned to be added soon, including roofline profiling (thanks to the collaboration with INESC-ID) and |
| 31 | +heterogeneous/non-CPU architecture support. |
| 32 | + |
| 33 | + |
| 34 | + |
| 35 | +[](https://www.youtube.com/watch?v=utluBAY3a2Q) |
0 commit comments