Title :
Automatic Vectorization by Runtime Binary Translation
Author :
Nakamura, Takashi ; Miki, Satoshi ; Oikawa, Shuichi
Author_Institution :
Fixstars Multi-Core Lab. Corp., Tokyo, Japan
fDate :
Nov. 30 2011-Dec. 2 2011
Abstract :
Today, most general desktop PCs uses processors that incorporate SIMD (Single Instruction Multiple Data) units. These SIMD units, however, are for the most part underutilized with the exception of a few multimedia applications. As a result, the processing power of modern processors is not fully unleashed. In this research, we propose a system that applies automatic vectorization techniques to binary code at runtime to increase the utilization ratio of SIMD units, which will speed up the execution of programs. We will refer to this system as Selftrans. Selftrans extracts parallelism from binary x86 machine code without requiring its source code, and translates it into a binary code that utilizes the SIMD units. This paper describes the design and implementation of Selftrans. We will show that Selftrans is (1) capable of automatic vectorization of binary machine code, (2) that SIMDization can significantly improve performance, and (3) that it is possible to perform architecture-specific optimization for various processors.
Keywords :
parallel processing; program interpreters; SIMD unit; Selftrans system; automatic vectorization technique; binary code; binary x86 machine code; program execution; runtime binary translation; single instruction multiple data; Monitoring; Optimization; Parallel processing; Program processors; Registers; Runtime; Automatic vectorization; Binary translation; SIMD;
Conference_Titel :
Networking and Computing (ICNC), 2011 Second International Conference on
Conference_Location :
Osaka
Print_ISBN :
978-1-4577-1796-3
DOI :
10.1109/ICNC.2011.21