TY - GEN
T1 - A Comparative Evaluation of Modern Architectures for the Non-Local Means Filter using Performance Primitives Libraries and Compiler Directive APIs
AU - Zumbado-Corrales, Manuel
AU - Castro, Jorge
AU - Meneses, Esteban
N1 - Publisher Copyright:
© 2021 IEEE.
PY - 2021
Y1 - 2021
N2 - The performance achieved by an application is limited by architectural features such as program data access and processing patterns. Parallelization approaches exhibit dissimilar performance and have a direct impact in application execution time. Additionally, developing parallel code involves additional complexity and productivity for programmers to accelerate or rewrite the program. In this paper, we present a comparative performance evaluation of a CPU, GPU, and many-core (Xeon Phi KNL) architectures for the Non-Local Means filter. We asses the effect of different data access and processing patterns in two computational optimizations developed for the aforementioned filter. We follow a top-down approach in terms of the parallelization approach chosen, starting from performance primitives as a first step to give easy drop-in acceleration and then compiler directives with frameworks such as OpenMP and OpenACC as an intermediate step to map computing tasks to the underlying hardware. Results show that both libraries and directives are effective at accelerating code with a combination of both being necessary to overcome performance bottlenecks.
AB - The performance achieved by an application is limited by architectural features such as program data access and processing patterns. Parallelization approaches exhibit dissimilar performance and have a direct impact in application execution time. Additionally, developing parallel code involves additional complexity and productivity for programmers to accelerate or rewrite the program. In this paper, we present a comparative performance evaluation of a CPU, GPU, and many-core (Xeon Phi KNL) architectures for the Non-Local Means filter. We asses the effect of different data access and processing patterns in two computational optimizations developed for the aforementioned filter. We follow a top-down approach in terms of the parallelization approach chosen, starting from performance primitives as a first step to give easy drop-in acceleration and then compiler directives with frameworks such as OpenMP and OpenACC as an intermediate step to map computing tasks to the underlying hardware. Results show that both libraries and directives are effective at accelerating code with a combination of both being necessary to overcome performance bottlenecks.
KW - GPU
KW - Image Processing
KW - Non Local Means filter
KW - NVIDIA K40
KW - Optimization
KW - Xeon Phi KNL
UR - http://www.scopus.com/inward/record.url?scp=85123615237&partnerID=8YFLogxK
U2 - 10.1109/BIP53678.2021.9612827
DO - 10.1109/BIP53678.2021.9612827
M3 - Contribución a la conferencia
AN - SCOPUS:85123615237
T3 - 3rd IEEE International Conference on BioInspired Processing, BIP 2021 - Proceedings
BT - 3rd IEEE International Conference on BioInspired Processing, BIP 2021 - Proceedings
PB - Institute of Electrical and Electronics Engineers Inc.
T2 - 3rd IEEE International Conference on BioInspired Processing, BIP 2021
Y2 - 4 November 2021 through 5 November 2021
ER -