Open this publication in new window or tab >>2025 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]
With the end of Dennard scaling, hardware performance improvements now stem from increased architectural complexity, which in turn demands more sophisticated programming models. Today’s computing landscape includes a broad spectrum of hardware targets—CPUs, GPUs, FPGAs, and domain-specific ASICs—each requiring substantial manual effort and low-level tuning to fully exploit their potential. Performance programming has evolved beyond traditional code optimization and increasingly depends on domain-specific compilers, constraint-solving frameworks, advanced performance models, and automatic or learned strategies for code generation.
Conventional implementations of numerical libraries often rely on handwritten, platform-specific kernels. While such kernels may achieve high performance for selected routines, they typically underperform in others, and their lack of portability results in high development overhead and performance bottlenecks. This impedes scalability across heterogeneous hardware systems.
To address these challenges, this thesis presents the design and implementation of end-to-end domain-specific compilers for numerical workloads, with a focus on applications such as Fast Fourier Transform (FFT) and Finite Difference Time Domain (FDTD) solvers. The proposed framework is built on the Multi-Level Intermediate Representation (MLIR) and Low-Level Virtual Machine (LLVM) infrastructures. It models compute kernels as operations on 3D tensor abstractions with explicit computational semantics. High-level optimizations—including loop tiling, fusion, and vectorization—are automatically applied by the compiler.
We evaluate the proposed code generation pipeline across diverse hardware platforms, including Intel, AMD, and ARM CPUs, as well as GPUs. Experimental results demonstrate the approach’s ability to deliver both high performance and portability across heterogeneous architectures.
Abstract [sv]
När Dennard-skalningen tog slut, började förbättringar i hårdvarans prestanda komma från mer komplexa arkitekturer. Detta kräver avancerade sätt att skriva program. Idag finns många olika typer av hårdvara — CPU:er, GPU:er, FPGA:er och specialbyggda chip (ASIC) — som alla kräver manuellt arbete och lågnivå-optimering för att fungera bra. Prestandaprogrammering handlar inte längre bara om att förbättra kod, utan bygger allt mer på domänspecifika kompilatorer, smarta prestandamodeller och automatiska metoder för att generera bra kod. Vanliga numeriska bibliotek bygger ofta på handskriven kod anpassad för en viss plattform. Sådan kod kan vara snabb för vissa delar, men är ofta långsam för andra och svår att flytta mellan olika system. Det gör utveckling dyr och skapar flaskhalsar som gör det svårt att använda kod på många typer av hårdvara. För att lösa dessa problem presenterar denna avhandling en metod för att bygga domäspecifika kompilatorer för numeriska beräkningar. Fokus ligger på två typer av metoder: Snabb Fouriertransform (FFT) och Finita Differens i Tidsdomän (FDTD). Ramverket bygger på MLIR (Multi-Level Intermediate Representation) och LLVM, och använder 3D-tensorer med explicit beräkningslogik. Kompilatorn gör automatiska optimeringar som loop-delning, sammanslagning och vektorisering.Vi testar detta på olika typer av hårdvara: CPU:er från Intel, AMD och ARM samt GPU:er. Resultaten visar både hög prestanda och god portabilitet mellan olika plattformar.
Place, publisher, year, edition, pages
Stockholm: KTH Royal Institute of Technology, 2025. p. vii, 70
Series
TRITA-EECS-AVL ; 2025:67
Keywords
Numerical Libraries, Fast Fourier Transform (FFT), Finite Difference Time Domain (FDTD), Domain-Specific Compilers, Multilevel Intermediate Representation (MLIR), Low-Level Virtual Machine (LLVM), Numeriska bibliotek, Snabb Fouriertransform (FFT), Ändlig differens i tidsdomän (FDTD), Domänspecifika kompilatorer, Flerskikts mellanrepresentation (MLIR), Lågnivå virtuell maskin (LLVM)
National Category
Computer Sciences
Research subject
Computer Science
Identifiers
urn:nbn:se:kth:diva-363493 (URN)978-91-8106-311-0 (ISBN)
Public defence
2025-06-12, Sal D3, Lindstedtsvägen 9, KTH Campus, Stockholm, 14:00 (English)
Opponent
Supervisors
Note
QC 20250519
2025-05-192025-05-162025-05-20Bibliographically approved