Language extensions in support of compiler parallelization

被引:3
|
作者
Shirako, Jun [1 ,2 ]
Kasahara, Hironori [1 ,3 ]
Sarkar, Vivek [4 ]
机构
[1] Waseda Univ, Dept Comp Sci, Tokyo, Tokyo, Japan
[2] Waseda Univ, Japan Society Promot Sci, Res Fellow, Tokyo, Japan
[3] Waseda Univ, Adv Chip Multiproc Res Inst, Tokyo, Japan
[4] Rice Univ, Dept Comp Sci, Houston, TX 77251 USA
关键词
D O I
10.1007/978-3-540-85261-2_6
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
In this paper, we propose an approach to automatic compiler parallelization based on language extensions that is applicable to a broader range of program structures and application domains than in past work. As a complement to ongoing work on high productivity languages for explicit parallelism, the basic idea in this paper is to make sequential languages more amenable to compiler parallelization by adding enforceable declarations and annotations. Specifically, we propose the addition of annotations and declarations related to multidimensional arrays, points, regions, array views, parameter intents, array and object privatization, pure methods, absence of exceptions, and gather/reduce computations. In many cases, these extensions are also motivated by best practices in software engineering, and can also contribute to performance improvements in sequential code. A detailed case study of the Java Grande Forum benchmark suite illustrates the obstacles to compiler parallelization in current object-oriented languages, and shows that the extensions proposed in this paper can be effective in enabling compiler parallelization. The results in this paper motivate future work on building an automatically parallelizing compiler for the language extensions proposed in this paper.
引用
收藏
页码:78 / +
页数:3
相关论文
共 50 条
  • [1] Compiler support for Java']Java parallelization
    Bik, AJC
    Breg, F
    Gannon, DB
    [J]. COMPUTERS IN PHYSICS, 1998, 12 (01): : 45 - 52
  • [2] A novel compiler support for automatic parallelization on multicore systems
    Andion, Jose M.
    Arenaz, Manuel
    Rodriguez, Gabriel
    Tourino, Juan
    [J]. PARALLEL COMPUTING, 2013, 39 (09) : 442 - 460
  • [3] Compiler and runtime support for shared memory parallelization of data mining algorithms
    Li, XG
    Jin, RM
    Agrawal, G
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2005, 2481 : 265 - 279
  • [4] Language and compiler support for adaptive distributed applications
    Adve, V
    Lam, VV
    Ensink, B
    [J]. ACM SIGPLAN NOTICES, 2001, 36 (08) : 238 - 246
  • [5] Unified Parallel C for GPU Clusters: Language Extensions and Compiler Implementation
    Chen, Li
    Liu, Lei
    Tang, Shenglin
    Huang, Lei
    Jing, Zheng
    Xu, Shixiong
    Zhang, Dingfei
    Shou, Baojiang
    [J]. LANGUAGES AND COMPILERS FOR PARALLEL COMPUTING, 2011, 6548 : 151 - +
  • [6] V-PASCAL - AN AUTOMATIC VECTORIZING COMPILER FOR PASCAL WITH NO LANGUAGE EXTENSIONS
    TSUDA, T
    KUNIEDA, Y
    [J]. JOURNAL OF SUPERCOMPUTING, 1990, 4 (03): : 251 - 275
  • [7] A compiler cost model for speculative parallelization
    Dou, Jialin
    Cintra, Marcelo
    [J]. ACM TRANSACTIONS ON ARCHITECTURE AND CODE OPTIMIZATION, 2007, 4 (02) : 12
  • [8] Language support and compiler optimizations for STM and transactional boosting
    Eddon, Guy
    Herlihy, Maurice
    [J]. DISTRIBUTED COMPUTING AND INTERNET TECHNOLOGY, PROCEEDINGS, 2007, 4882 : 209 - 224
  • [9] COMPILER SUPPORT FOR GARBAGE COLLECTION IN A STATICALLY TYPED LANGUAGE
    DIWAN, A
    MOSS, E
    HUDSON, R
    [J]. SIGPLAN NOTICES, 1992, 27 (07): : 273 - 282
  • [10] Prospect: A Compiler Framework for Speculative Parallelization
    Suesskraut, Martin
    Knauth, Thomas
    Weigert, Stefan
    Schiffel, Ute
    Meinhold, Martin
    Fetzer, Christof
    [J]. CGO 2010: THE EIGHTH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, PROCEEDINGS, 2010, : 131 - +