Automatic SIMD Vectorization of SSA-based Control Flow Graphs - Karrenberg, Ralf.; SpringerLink (Online service) (Wiesbaden : Springer Fachmedien Wiesbaden : Imprint: Springer Vieweg, 2015)
Ralf Karrenberg presents Whole-Function Vectorization (WFV), an approach that allows a compiler to automatically create code that exploits data-parallelism using SIMD instructions. Data-parallel applications such as particle simulations, stock option price estimation, or video decoding require the same computations to be performed on huge amounts of data. Without WFV, one processor core executes a single instance of a data-parallel function. WFV transforms the function to execute multiple instances at once using SIMD instructions. The author describes an advanced WFV algorithm that includes a variety of analyses and code generation techniques. He shows that this approach improves the performance of the generated code in a variety of use cases. Contents Introduction, Foundations & Terminology, Related Work SIMD Property Analyses Whole-Function Vectorization Dynamic Code Variants, Evaluation, Conclusion, Outlook Target Groups Computer science researchers and students working in data-parallel computing Software and compiler engineers in the fields high-performance computing and compiler construction About the Author Ralf Karrenberg received his PhD in computer science at Saarland University in 2015. His seminal research on compilation techniques for SIMD architectures found wide recognition in both academia and the CPU and GPU industry. Currently, he is working for NVIDIA in Berlin. Prior to that, he contributed to research and development for visual effects in blockbuster movies at Weta Digital, New Zealand.
Keywords: Computer science; Computer graphics; Engineering mathematics; Programming Languages, Compilers, Interpreters; Computer Graphics; Mathematical and Computational Engineering