Vectorization for Java

Abstract : Java is one of the most popular programming languages in today's software development, but the adoption of Java in some areas like high performance computing, gaming, and media processing is not as universal as in general-purpose computing. A major drawback preventing it from being extensively adopted in those areas is its lower performance than the traditional or domain-specific languages. This paper describes two approaches to improve Java's usability in those areas by introducing vector processing capability to Java. The first approach is to provide a Java vectorization interface (JVI) that developers can program with, to explicitly expose the programs' data parallelism. The other approach is to use automatic vectorization to generate vector instructions for Java programs. It does not require programmers to modify the original source code. We evaluate the two vectorization approaches with SPECjvm2008 benchmark. The performances of scimark.fft and scimark.lu are improved up to 55% and 107% respectively when running in single thread. We also investigate some factors that impact the vectorization effects, including the memory bus bandwidth and the superscalar micro-architecture.
Type de document :
Communication dans un congrès
Chen Ding; Zhiyuan Shao; Ran Zheng. IFIP International Conference on Network and Parallel Computing (NPC), Sep 2010, Zhengzhou, China. Springer, Lecture Notes in Computer Science, LNCS-6289, pp.3-17, 2010, Network and Parallel Computing. 〈10.1007/978-3-642-15672-4_3〉
Liste complète des métadonnées

Littérature citée [9 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01054962
Contributeur : Hal Ifip <>
Soumis le : lundi 11 août 2014 - 09:43:01
Dernière modification le : vendredi 11 août 2017 - 17:44:38
Document(s) archivé(s) le : jeudi 27 novembre 2014 - 10:57:13

Fichier

javavect.pdf
Fichiers produits par l'(les) auteur(s)

Licence


Distributed under a Creative Commons Paternité 4.0 International License

Identifiants

Citation

Jiutao Nie, Buqi Cheng, Shisheng Li, Ligang Wang, Xiao-Feng Li. Vectorization for Java. Chen Ding; Zhiyuan Shao; Ran Zheng. IFIP International Conference on Network and Parallel Computing (NPC), Sep 2010, Zhengzhou, China. Springer, Lecture Notes in Computer Science, LNCS-6289, pp.3-17, 2010, Network and Parallel Computing. 〈10.1007/978-3-642-15672-4_3〉. 〈hal-01054962〉

Partager

Métriques

Consultations de la notice

80

Téléchargements de fichiers

126