| Item type |
Trans(1) |
| 公開日 |
2016-09-12 |
| タイトル |
|
|
タイトル |
A Polyhedral Framework for X10 Programs |
| タイトル |
|
|
言語 |
en |
|
タイトル |
A Polyhedral Framework for X10 Programs |
| 言語 |
|
|
言語 |
jpn |
| キーワード |
|
|
主題Scheme |
Other |
|
主題 |
[発表概要] |
| 資源タイプ |
|
|
資源タイプ識別子 |
http://purl.org/coar/resource_type/c_6501 |
|
資源タイプ |
journal article |
| 著者所属 |
|
|
|
IBM Research - Tokyo |
| 著者所属 |
|
|
|
IBM Research - Tokyo |
| 著者所属 |
|
|
|
IBM Research - Tokyo |
| 著者所属(英) |
|
|
|
en |
|
|
IBM Research - Tokyo |
| 著者所属(英) |
|
|
|
en |
|
|
IBM Research - Tokyo |
| 著者所属(英) |
|
|
|
en |
|
|
IBM Research - Tokyo |
| 著者名 |
Michihiro, Horie
Mikio, Takeuchi
Kiyokuni, Kawachiya
|
| 著者名(英) |
Michihiro, Horie
Mikio, Takeuchi
Kiyokuni, Kawachiya
|
| 論文抄録 |
|
|
内容記述タイプ |
Other |
|
内容記述 |
Polyhedral frameworks help programmers in the burdensome task of manual and complex coding of the parallel applications. These frameworks support the traditional parallelism such as OpenMP and MPI. These frameworks analyze each of the loops whether the loop is affine and can be optimized with the polyhedral transformation. Since the serial program is the input for these frameworks, parallelizing any loop nests basically brings better performance. Therefore, existing frameworks do not strictly validate which loop to be parallelized. X10 is a Java-like programming language that introduces new constructs to significantly simplify scale-out programming based on the Asynchronous Partitioned Global Address Space (APGAS) programming model. In this presentation, we propose an X10-based cost-aware polyhedral framework by extending the PolyOpt, which is one of the most popular polyhedral frameworks. Our framework first conducts the global search of parallel loops written in a target application, and estimates the calculation cost on each body of the parallel loops to assess how big calculation to be done in parallel in the application. Based on the estimation of the parallel loops, our framework decides which serial loop to be parallelized with an appropriate number of threads. To demonstrate the applicability of our approach, we investigated the source programs of the realistic X10 application named LULESH. We also applied our optimization to the LULESH and obtained 9% performance improvement. |
| 論文抄録(英) |
|
|
内容記述タイプ |
Other |
|
内容記述 |
Polyhedral frameworks help programmers in the burdensome task of manual and complex coding of the parallel applications. These frameworks support the traditional parallelism such as OpenMP and MPI. These frameworks analyze each of the loops whether the loop is affine and can be optimized with the polyhedral transformation. Since the serial program is the input for these frameworks, parallelizing any loop nests basically brings better performance. Therefore, existing frameworks do not strictly validate which loop to be parallelized. X10 is a Java-like programming language that introduces new constructs to significantly simplify scale-out programming based on the Asynchronous Partitioned Global Address Space (APGAS) programming model. In this presentation, we propose an X10-based cost-aware polyhedral framework by extending the PolyOpt, which is one of the most popular polyhedral frameworks. Our framework first conducts the global search of parallel loops written in a target application, and estimates the calculation cost on each body of the parallel loops to assess how big calculation to be done in parallel in the application. Based on the estimation of the parallel loops, our framework decides which serial loop to be parallelized with an appropriate number of threads. To demonstrate the applicability of our approach, we investigated the source programs of the realistic X10 application named LULESH. We also applied our optimization to the LULESH and obtained 9% performance improvement. |
| 書誌レコードID |
|
|
収録物識別子タイプ |
NCID |
|
収録物識別子 |
AA11464814 |
| 書誌情報 |
情報処理学会論文誌プログラミング(PRO)
巻 9,
号 4,
p. 32-32,
発行日 2016-09-12
|
| ISSN |
|
|
収録物識別子タイプ |
ISSN |
|
収録物識別子 |
1882-7802 |
| 出版者 |
|
|
言語 |
ja |
|
出版者 |
情報処理学会 |