AccProf: Increasing the Accuracy of Embedded Application Profiling using FPGAs

Emmanouil Skordalakis, Andrew Attwood, Anthony Goodacre, Mikel Luján

Research output: Contribution to conferencePaperpeer-review

55 Downloads (Pure)

Abstract

Accurate software profiling is an essential step in the development of embedded systems. The accuracy of profiling data collected is critically important for embedded systems that operate under fixed timing constraints, which if not met, could lead to system failure. Existing profiling solutions targeting embedded systems introduce an overhead to the running application that distorts the collected profiling data. This paper proposes AccProf for System on Chips with integrated FPGAs. AccProf is a FPGA-assisted profiling framework combining compiler extensions and bespoke hardware. AccProf is composed of (1) an LLVM pass which inserts lightweight instrumentation into the application binary running on general purpose processors , and (2) FPGA-based hardware capable of performing offloaded profiling. Offloading part of the profiling task, and supporting data-structures to the FPGA, reduces pollution of the collected profiling data leading to higher accuracy. This paper addresses on control graph profiling and evaluates AccProf on a range of benchmarks ported to SeL4 microkernel running on the AMD Zynq MpSoC. We measure performance metrics of these benchmarks across a range of processor statistics including cycles, instruction and data cache misses. We show that the impact for certain metrics is reduced for up to 5 times when compared against an equivalent software-based framework.
Original languageEnglish
Publication statusAccepted/In press - 2024

Fingerprint

Dive into the research topics of 'AccProf: Increasing the Accuracy of Embedded Application Profiling using FPGAs'. Together they form a unique fingerprint.

Cite this