Monitoring FPGA-Based Devices Through Database in Cloud-Edge Infrastructures
Creators: name: Puliga, Sandro
name: Rubattu, Claudio
name: Meloni, Giuseppe
name: Secondi, Alberto
Publisher: name: Zenodo
Year: 2025

description: Bachelor's Thesis for a BSc Degree in Computer Engineering at the University of Sassari (UNISS)

Abstract:

This abstract refers to a bachelor thesis work supervised by the University of Sassari and Abinsula S.r.l. in the context of the Horizon Europe MYRTUS project. MYRTUS aims to integrate computational resources between edge, fog and cloud, in line with the European Union's CloudEdgeIOT initiative, with the goal of maximizing synergy between heterogeneous components to develop dynamic, high-performance infrastructures. In particular, this work has been focused on the study and development of software interfaces (i.e., APIs) for reading and writing to databases for the management of heterogeneous devices at the edge, in order to monitor their state, adapt them to different operational situations, and optimize their performance. Such heterogeneous devices are particularly suitable for the container-based application orchestration envisioned in MYRTUS. The heterogeneous hardware platform on which they are based is composed of ARM processors and programmable logic (i.e., the FPGA), which allow orchestration requests to be handled by an operating system and hardware acceleration, respectively. This strategy offers a good trade-off in terms of efficiency and flexibility, especially when combined with the adoption of a lightweight and customizable embedded operating system. For these reasons, this work proposes an implementation based on a custom Linux distribution created through the YOCTO ecosystem, which is oriented to monitoring and managing containers on a heterogeneous device at the edge, i.e., the AMD Kria KV260. In addition, both the monitoring and the container execution profile are managed by ad-hoc developed services that leverage dedicated APIs for exchanging data via databases with the upper layers of the MYRTUS infrastructure. In more detail, these APIs are designed i) to collect data about non-functional metrics (such as hardware resource utilization and power consumption), and ii) to reconfigure hardware acceleration on the FPGA according to execution directives.For this implementation, a test scenario has been defined that involved i) the creation of a Lightweigth Kubernetes cluster (a version of Kubernetes more suitable at the edge) in order to deploy a container with software and hardware components enabling hardware acceleration of a parametric encryption algorithm (i.e., AES-128/256); and ii) the use of a Moockon server for emulating a gateway at the fog connected to non-relational databases. In comparison with the generic distribution available for the target device (Kria Ubuntu 22.04 LTS), the implemented custom distribution was more efficient in terms of size and CPU/RAM usage, reducing them by about 50% and 80%, respectively. In addition, API execution times are in line with the state of the art (in the order of ms). These results demonstrate how this work can contribute to the creation of an advanced monitoring system and adaptive control for heterogeneous devices, with the goal of supporting efficiency and flexibility in the execution of containerized applications in cloud-edge infrastructures.