Data-parallel Acceleration of PARSEC Black-Scholes Benchmark
KTH, School of Information and Communication Technology (ICT)
KTH, 2013
@article{andren2013data,
title={Data-parallel Acceleration of PARSEC Black-Scholes Benchmark},
author={Andr{‘e}n, August and Hagern{"a}s, Patrik},
year={2013}
}
The way programmers has been relying on processor improvements to gain speedup in their applications is no longer applicable in the same fashion. Programmers usually have to parallelize their code to utilize the CPU cores in the system to gain a significant speedup. To accelerate parallel applications furthermore there are a couple of techniques available. One technique is to vectorize some of the parallel code. Another technique is to move parts of the parallel code to the GPGPU and utilize this very good multi-threading unit of the system. The main focus of this report is to accelerate the data-parallel workload Black-Scholes of PARSEC benchmark suite. We are going to compare three accelerations of this workload, using vector instructions in the CPU, using the GPGPU and using a combination of them both. The two fundamental aspects are to look at the speedup and determine which technique requires more or less programming effort. To accelerate with vectorization in the CPU we use SSE & AVX techniques and to accelerate the workload in the GPGPU we use OpenACC.
September 30, 2013 by hgpu