Extending decoupled software pipeline to parallelize Java']Java programs

被引:0
|
作者
Loureiro, Andre [1 ]
Porto, Joao Paulo [1 ]
Araujo, Guido [1 ]
机构
[1] Univ Estadual Campinas, Inst Comp, Lab Sistemas Comp, BR-13083852 Campinas, SP, Brazil
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2013年 / 43卷 / 05期
关键词
parallel programming; pipeline; !text type='Java']Java[!/text; performance;
D O I
10.1002/spe.2120
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Programmers can no longer rely solely on micro-architectural and technology improvements to have their programs running faster. In today's multicore chips, parallel code needs to be explicitly written to extract any benefits from the extra available processing power. A recently proposed technique to parallelize general-purpose programs' loops at the binary level, called decoupled software pipeline (DSWP), has shown good performance numbers only under the assumption of a fast hardware intercore communication queue. In this paper, we propose Java-DSWP, a source-level DSWP-based parallelization technique that is much simpler than original DSWP and can be used to effectively parallelize Java applications. In addition, we propose and evaluate a software intercore communication scheme that enables code parallelized through Java-DSWP to be executed in commodity machines, thus not requiring a hardware intercore communication queue to be efficient, as DSWP does. We analyze three memory communication queue implementations and show experimental results that reveal an average 48% speedup on some SPCjvm2008 benchmarks. Copyright (c) 2012 John Wiley & Sons, Ltd.
引用
收藏
页码:525 / 541
页数:17
相关论文
共 50 条
  • [21] Simplifying the evolution of Java']Java programs
    Seiter, LM
    Lieberherr, KJ
    Orleans, D
    PROCEEDINGS OF THE 1997 INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, 1997, : 655 - 656
  • [22] Functional Testing of Java']Java Programs
    Benac Earle, Clara
    Fredlund, Lars-Ake
    TRENDS IN FUNCTIONAL PROGRAMMING (TFP 2015), 2016, 9547 : 40 - 59
  • [23] Inlining with traces in java']java programs
    Bradel, Borys J.
    Abdelrahman, Tarek S.
    COMPUTER SYSTEMS SCIENCE AND ENGINEERING, 2012, 27 (04): : 251 - 266
  • [24] A refinement method for Java']Java programs
    Grandy, Holger
    Stenzel, Kurt
    Reif, Wolfgang
    FORMAL METHODS FOR OPEN OBJECT-BASED DISTRIBUTED SYSTEMS, PROCEEDINGS, 2007, 4468 : 221 - +
  • [25] Formal techniques for Java']Java programs
    Drossopoulou, S
    Eisenbach, S
    Jacobs, B
    Leavens, GT
    Müller, P
    Poetzsch-Heffter, A
    OBJECT-ORIENTED TECHNOLOGY, PROCEEDINGS, 2000, 1964 : 41 - 54
  • [26] Slicing concurrent Java']Java programs
    Chen, ZQ
    Xu, BW
    ACM SIGPLAN NOTICES, 2001, 36 (04) : 41 - 47
  • [27] The Use of Overloading in JAVA']JAVA Programs
    Gil, Joseph
    Lenz, Keren
    ECOOP 2010: OBJECT-ORIENTED PROGRAMMING, 2010, 6183 : 529 - 551
  • [28] Formal techniques for Java']Java programs
    Jacobs, B
    Leavens, GT
    Müller, P
    Poetzsch-Heffter, A
    OBJECT-ORIENTED TECHNOLOGY, 1999, 1743 : 97 - 115
  • [29] Interactive visualization of Java']Java programs
    Gestwicki, P
    Jayaraman, B
    IEEE 2002 SYMPOSIA ON HUMAN CENTRIC COMPUTING LANGUAGES AND ENVIRONMENTS, PROCEEDINGS, 2002, : 226 - 235
  • [30] A Translator of Java']Java Programs to TADDs
    Rataj, Artur
    Wozna, Bozena
    Zbrzezny, Andrzej
    FUNDAMENTA INFORMATICAE, 2009, 93 (1-3) : 305 - 324