Back to Search Start Over

Improving SIMD Parallelism via Dynamic Binary Translation.

Authors :
Hong, Ding-Yong
Liu, Yu-Ping
Fu, Sheng-Yu
Wu, Jan-Jan
Hsu, Wei-Chung
Source :
ACM Transactions on Embedded Computing Systems; Feb2018, Vol. 17 Issue 3, p1-27, 27p
Publication Year :
2018

Abstract

Recent trends in SIMD architecture have tended toward longer vector lengths, and more enhanced SIMD features have been introduced in newer vector instruction sets. However, legacy or proprietary applications compiled with short-SIMD ISA cannot benefit from the long-SIMD architecture that supports improved parallelism and enhanced vector primitives, resulting in only a small fraction of potential peak performance. This article presents a dynamic binary translation technique that enables short-SIMD binaries to exploit benefits of new SIMD architectures by rewriting short-SIMD loop code. We propose a general approach that translates loops consisting of short-SIMD instructions tomachine-independent IR, conducts SIMD loop transformation/ optimization at this IR level, and finally translates to long-SIMD instructions. Two solutions are presented to enforce SIMD load/store alignment, one for the problem caused by the binary translator's internal translation condition and one general approach using dynamic loop peeling optimization. Benchmark results show that average speedups of 1.51× and 2.48× are achieved for an ARM NEON to x86 AVX2 and x86 AVX-512 loop transformation, respectively. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
15399087
Volume :
17
Issue :
3
Database :
Complementary Index
Journal :
ACM Transactions on Embedded Computing Systems
Publication Type :
Academic Journal
Accession number :
127994313
Full Text :
https://doi.org/10.1145/3173456