roberto.alfieri:pub:vectorization
Questa è una vecchia versione del documento!
Vectorization
Processor peak performance includes the speed-up provided by the vector instructions, but in order to exploit it you need specific programming techniques.
Auto-vectorization is the easiest and more portable way to get vectorization , but not all loops can be vectorized:
Some examples:
- Loop with dependencies between iterations
for (i=1; i<MAX; i++) { d[i] = e[i] – a[i-1]; a[i] = b[i] + c[i]; }
- Complex loops
- Function calls inside the loop:
for (int i = 0; i < N; i++) a[i] = foo(b[i]); * Loops on data that are not aligned in the memory
roberto.alfieri/pub/vectorization.1497376496.txt.gz · Ultima modifica: 13/06/2017 19:54 da roberto.alfieri