On the energy consumption of Load/Store AVX instructions
Thomas Jakobs, Gudula Rünger · Annals of Computer Science and Information Systems · 2018
The energy efficiency of program executions is an active research field in recent years and the influence of different programming styles on the energy consumption is part of the research effort.In this article, we concentrate on SIMD programming and study the effect of vectorization on performance as well as on power and energy consumption.Especially, SIMD programs using AVX instructions are considered and the focus is on the AVX load and store instruction set.Several semantically similar but different load and store instructions are selected and are used to build different program versions of for the same algorithm.As example application, the Gaussian elimination has been chosen due to its interesting feature of using arrays of varying length in each factorization step.Five different SIMD program versions of the Gaussian elimination have been implemented, each of which uses different load and store instructions.Performance, power, and energy measurements for all program versions are provided for the Intel Sandy Bridge, Haswell and Skylake architectures and the results are discussed and analyzed.