The emergence of new architectures create a recurring challenge to ensure that existing programs still work on them. Manually porting legacy code is often impractical. Static binary …
Vector processing has become commonplace in today's CPU microarchitectures. Vector instructions improve performance and energy which is crucial for resource-constraint mobile …
System virtualization is a fundamental technology that enables many important applications. However, existing virtualization techniques suffer from a critical limitation due to their limited …
B Liu, A Laird, WH Tsang, B Mahjour… - Proceedings of the …, 2022 - dl.acm.org
SIMD (Single Instruction Multiple Data) instructions apply the same operation to multiple elements simultaneously. Compilers transform codes to exploit SIMD instructions through …
JK Lin, YL Yang, HM Lai, JK Lee - Workshop Proceedings of the 53rd …, 2024 - dl.acm.org
Advanced processors incorporate SIMD extensions to execute data-parallel operations efficiently. As technology advances, new generations of SIMD extensions evolve with longer …
Production compilers have achieved a high level of maturity in terms of generating efficient code. Compilers are embedded with numerous code optimization techniques, with special …
First, we present goSLP, a framework that uses integer linear programming to find a globally pairwise-optimal statement packing strategy to achieve superior vectorization performance …
Program synthesis is a promising method for building efficient, flexible software by deriving low-level implementations from high-level specifications. In this thesis, I use programming …