dealii/dealii — pull request #252 by kronbichler (2014-11-17 09:49:44+00:00)
Title: Enable vectorization of vector updates in Chebyshev preconditioner

Use VectorizedArray to force the compiler to generate vectorized code.
Using DEAL_II_OPENMP_SIMD_PRAGMA on the three loops does not make the compiler
generate vectorized code. I tried -O3, I tried __restrict, but gcc-4.9 did
not want to help me, thus this commit. Note that the speed difference is
a factor of 2-2.5 for float as long as the vector fits the L3 cache (for L1 cache,
even double is a factor 2.5 faster than the DEAL_II_OPENMP_SIMD_PRAGMA
annotated version).