What software developers should know about data processing units (DPUs)
Grangrund, Johannes (2025)
Kandidaatintyö
Grangrund, Johannes
2025
School of Engineering Science, Tietotekniikka
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2025052048178
https://urn.fi/URN:NBN:fi-fe2025052048178
Tiivistelmä
Data Processing Units (DPUs) have emerged as a new type of specialized processor designed to offload tasks like networking, storage and, security from CPUs in data centers. Due to their recent appearance on the market, learning resources remain scarce, especially those not produced by and tailored to a particular vendor’s platform. This thesis aimed to explore what aspects surrounding DPUs software developers need to understand to be able to develop on DPU platforms. This study was conducted using qualitative methods, specifically thematic analysis of technical documentation, to find reoccurring themes across multiple DPU ecosystems. The scope was limited to a handful of major DPU vendors who provided enough documentation for a meaningful analysis, the focus was also limited to an introductory overview, leaving out deeper technical details. The result of the thesis showed that platform independent development is currently limited, and most workflows are tightly coupled to vendor-specific Software Development Kits (SDKs) and tools provided by the manufacturer. The thesis compared different DPU models and SDKs to help familiarize the software developer with the tools available on each platform. Tools that appear on multiple different platforms are introduced in more detail. Efforts toward standardization are also briefly discussed as potential paths towards system interoperability in the future.