Modern microprocessors are equipped with single instruction multiple data (SIMD) or vector instruction sets which allow compilers to exploit superword level parallelism (SLP), a type of fine-grained parallelism. Current SLP auto-vectorization techniques use heuristics to discover vectorization opportunities in high-level language code. These heuristics are fragile, local and typically only present one vectorization strategy that is either accepted or rejected by a cost model. We present goSLP, a novel SLP auto-vectorization framework which solves the statement packing problem in a pairwise optimal manner. Using an integer linear programming (ILP) solver, goSLP searches the entire space of statement packing opportunities for a whole function...
© 2018 ACM. Compiler-based vectorization represents a promising solution to automatically generate c...
(Submitted for Publication) The real-time execution of contemporary complex media applications requi...
A plethora of program analysis and optimization techniques rely on linear programming at their heart...
Abstract—SIMD vectors are widely adopted in modern general purpose processors as they can boost perf...
© 2019 Neural information processing systems foundation. All rights reserved. Modern microprocessors...
Existing vectorization techniques are ineffective for loops that exhibit little loop-level paralleli...
Accelerating program performance via SIMD vector units is very common in modern processors, as evide...
Increasing focus on multimedia applications has prompted the addition of multimedia extensions to mo...
© 2016 ACM.Compiler-based auto-vectorization is a promising solution to automatically generate code ...
International audienceMany embedded processors do not support floating-point arithmetic in order to ...
Vectorization support in hardware continues to expand and grow as well we still continue on supersca...
An emerging trend in processor design is the addition of short vector instructions to general-purpos...
The goal of this paper is to show that instruction level parallelism (ILP) and data-level parallelis...
The goal of this paper is to show that instruction level parallelism (ILP) and data-level parallelis...
Vectorization support in hardware continues to expand and grow as we still continue on superscalar a...
© 2018 ACM. Compiler-based vectorization represents a promising solution to automatically generate c...
(Submitted for Publication) The real-time execution of contemporary complex media applications requi...
A plethora of program analysis and optimization techniques rely on linear programming at their heart...
Abstract—SIMD vectors are widely adopted in modern general purpose processors as they can boost perf...
© 2019 Neural information processing systems foundation. All rights reserved. Modern microprocessors...
Existing vectorization techniques are ineffective for loops that exhibit little loop-level paralleli...
Accelerating program performance via SIMD vector units is very common in modern processors, as evide...
Increasing focus on multimedia applications has prompted the addition of multimedia extensions to mo...
© 2016 ACM.Compiler-based auto-vectorization is a promising solution to automatically generate code ...
International audienceMany embedded processors do not support floating-point arithmetic in order to ...
Vectorization support in hardware continues to expand and grow as well we still continue on supersca...
An emerging trend in processor design is the addition of short vector instructions to general-purpos...
The goal of this paper is to show that instruction level parallelism (ILP) and data-level parallelis...
The goal of this paper is to show that instruction level parallelism (ILP) and data-level parallelis...
Vectorization support in hardware continues to expand and grow as we still continue on superscalar a...
© 2018 ACM. Compiler-based vectorization represents a promising solution to automatically generate c...
(Submitted for Publication) The real-time execution of contemporary complex media applications requi...
A plethora of program analysis and optimization techniques rely on linear programming at their heart...