DocumentCode
2128950
Title
Design of a custom vector operation API exploiting SIMD intrinsics within Java
Author
Parri, Jonathan ; Desmarais, John-Marc ; Shapiro, Daniel ; Bolic, Miodrag ; Groza, Voicu
Author_Institution
Comput. Archit. Res. Group, Univ. of Ottawa, Ottawa, ON, Canada
fYear
2010
fDate
2-5 May 2010
Firstpage
1
Lastpage
4
Abstract
The use of Single Instruction Multiple Data (SIMD) operations can be instrumental in meeting the needs of high performance computations. Most languages, including C/C++, give a user the power to directly exploit this hardware and inherent parallelism. We have created a retargetable native SIMD library which Java programmers are now able to use to directly access SIMD intrinsics including MMX, SSE1, SSE2 and SSE3 through prescribed Java methods in an API. This API gives users direct control over their high-performance computations instead of solely relying on the SIMD optimizations of the Java Virtual Machine (JVM), or relying on a GPU which must send and receive the data from the CPU. Through the use of this Java API and the included backing library, substantial performance gains can be achieved on large and complex vector operations. We show an example for which the API obtains a 2x to 3x speedup for both small and large data sets as compared to solely relying on the SIMD optimizations in the JVM.
Keywords
Java; application program interfaces; coprocessors; parallel processing; software libraries; virtual machines; GPU; Java Virtual Machine; custom vector operation API; native SIMD library; single instruction multiple data operation; Computer architecture; Java; Libraries; Manuals; Optimization; Parallel processing; Registers; Java API; Parallelism; SIMD; SSE; Streaming SIMD Extensions; Vector Operations;
fLanguage
English
Publisher
ieee
Conference_Titel
Electrical and Computer Engineering (CCECE), 2010 23rd Canadian Conference on
Conference_Location
Calgary, AB
ISSN
0840-7789
Print_ISBN
978-1-4244-5376-4
Electronic_ISBN
0840-7789
Type
conf
DOI
10.1109/CCECE.2010.5575190
Filename
5575190
Link To Document