Polygonal Iteration Space Partitioning

被引:1
|
作者
Shivam, Aniket [1 ]
Nicolau, Alexandru [1 ]
Veidenbaum, Alexander V. [1 ]
Furnari, Mario Mango [3 ]
Cammarota, Rosario [2 ]
机构
[1] Univ Calif Irvine, Irvine, CA 92697 USA
[2] Qualcomm Res, San Diego, CA 92121 USA
[3] ICIB Natl Council Res, Pozzuoli, Italy
关键词
Polygonal partitions; Shape and size independent tiling; Temporal locality; Polyhedral model;
D O I
10.1007/978-3-319-52709-3_11
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
This work presents a new set of loop transformations to expose and maximize data locality in loop-nests with non-uniform reuse patterns. The proposed set of transformations use the norms of the Polyhedral Model to represent loop-nests and then leverages such a representation to partition the iteration space into polygonally shaped partitions with maximum locality. However, the partitioning algorithm tends to produce partitions with complex geometry (shape) and with progressively smaller number of iterations, which, in practice, introduces much run-time overhead. This work also focuses on containing the number of partitions and properly manage their geometry at run-time, to contain unnecessary overhead. The proposed transformations also exposes loop level parallelism, by grouping together independent iterations, thus improving performance of both serial and parallel execution. In parallel execution a selective mapping of partitions to threads based on the type of reuse these partitions exhibit is proposed. The proposed transformations show a consistent performance speedup on serial execution (up to 1.2x over Polly) and parallel execution (up to 3.17x over PLuTo) of some loop-nests.
引用
收藏
页码:121 / 136
页数:16
相关论文
共 50 条
  • [1] Iteration space partitioning
    Bik, AJC
    Wijshoff, HAG
    [J]. FUTURE GENERATION COMPUTER SYSTEMS, 1997, 12 (05) : 421 - 429
  • [2] Cache-Aware Iteration Space Partitioning
    Kejariwal, Arun
    Nicolau, Alexandru
    Banerjee, Utpal
    Veidenbaum, Alexander V.
    Polychronopoulos, Constantine D.
    [J]. PPOPP'08: PROCEEDINGS OF THE 2008 ACM SIGPLAN SYMPOSIUM ON PRINCIPLES AND PRACTICE OF PARALLEL PROGRAMMING, 2008, : 269 - 270
  • [3] Binary Space Partitioning Visibility Tree for Polygonal Light Rendering
    Okuno, Hiroki
    Iwasaki, Kei
    [J]. SA'19: SIGGRAPH ASIA 2019 TECHNICAL BRIEFS, 2019, : 79 - 82
  • [4] The use of iteration space partitioning to construct representative simple sections
    Bik, AJC
    Wijshoff, HAG
    [J]. JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1996, 34 (01) : 95 - 110
  • [5] Binary space partitioning visibility tree for polygonal and environment light rendering
    Hiroki Okuno
    Kei Iwasaki
    [J]. The Visual Computer, 2021, 37 : 2499 - 2511
  • [6] Binary space partitioning visibility tree for polygonal and environment light rendering
    Okuno, Hiroki
    Iwasaki, Kei
    [J]. VISUAL COMPUTER, 2021, 37 (9-11): : 2499 - 2511
  • [7] PARTITIONING A POLYGONAL REGION INTO TRAPEZOIDS
    ASANO, T
    ASANO, T
    IMAI, H
    [J]. JOURNAL OF THE ACM, 1986, 33 (02) : 290 - 312
  • [8] An Efficient Approach for Image Border Handling on GPUs via Iteration Space Partitioning
    Qiao, Bo
    Teich, Juergen
    Hannig, Frank
    [J]. 2021 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM WORKSHOPS (IPDPSW), 2021, : 387 - 396
  • [9] NUMBER OF VERTICES FOR POLYGONAL FUNCTIONS UNDER ITERATION
    Li, Lin
    [J]. JOURNAL OF THE KOREAN SOCIETY OF MATHEMATICAL EDUCATION SERIES B-PURE AND APPLIED MATHEMATICS, 2007, 14 (02): : 99 - 109
  • [10] 90.03 Partitioning sets of polygonal numbers
    Maynard, Philip
    [J]. MATHEMATICAL GAZETTE, 2006, 90 (517): : 77 - +