AccProf: Increasing the Accuracy of Embedded Application Profiling using FPGAs

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

Research output: Chapter in Book/Conference proceedingConference contributionpeer-review

117 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
Title of host publicationInternational Conference on Architecture of Computing Systems
PublisherSpringer Berlin
Pages192-206
Volume14842
DOIs
Publication statusE-pub ahead of print - 1 Aug 2024

Publication series

NameLecture Notes in Computer Science

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