Source code transformations for efficient SIMD code generation
Despite the effort inverted the last years in commercial compilers to generate efficient SIMD instructions based code sequences from conventional sequential programs, the small numbers of compilers that can automatically use these instructions achieve in most cases unsatisfactory results. This work...
| Autores: | , , |
|---|---|
| Formato: | informe técnico |
| Fecha de publicación: | 2012 |
| País: | España |
| Recursos: | Universitat Politècnica de Catalunya (UPC) |
| Repositorio: | UPCommons. Portal del coneixement obert de la UPC |
| Idioma: | inglés |
| OAI Identifier: | oai:upcommons.upc.edu:2117/16307 |
| Acesso em linha: | https://hdl.handle.net/2117/16307 |
| Access Level: | acceso abierto |
| Palavra-chave: | Parallel programming (Computer science) Programació en paral·lel (Informàtica) Àrees temàtiques de la UPC::Informàtica::Programació |
| Resumo: | Despite the effort inverted the last years in commercial compilers to generate efficient SIMD instructions based code sequences from conventional sequential programs, the small numbers of compilers that can automatically use these instructions achieve in most cases unsatisfactory results. This work shows how exposing register level reuse in source codes helps vectorizing compilers as ICC to generate efficient SIMD code that exploits vectorial register reuse. To this end we use reverse-engineering to know the limitations of ICC compiler. We compare performance of compiler generated code to performance of hand-optimized assembly-written numerical libraries achieving around the 72% performance of MKL for example. |
|---|