WEKO3
アイテム
Evaluation of Libraries for Parallel Computing in Haskell ― A Case Study with a Super-resolution Application
https://ipsj.ixsq.nii.ac.jp/records/177699
https://ipsj.ixsq.nii.ac.jp/records/1776991eb10d4b-5d60-4fc8-b92c-4c5a1fd0284b
名前 / ファイル | ライセンス | アクション |
---|---|---|
![]() |
Copyright (c) 2017 by the Information Processing Society of Japan
|
|
オープンアクセス |
Item type | Trans(1) | |||||||||
---|---|---|---|---|---|---|---|---|---|---|
公開日 | 2017-02-27 | |||||||||
タイトル | ||||||||||
タイトル | Evaluation of Libraries for Parallel Computing in Haskell ― A Case Study with a Super-resolution Application | |||||||||
タイトル | ||||||||||
言語 | en | |||||||||
タイトル | Evaluation of Libraries for Parallel Computing in Haskell ― A Case Study with a Super-resolution Application | |||||||||
言語 | ||||||||||
言語 | eng | |||||||||
キーワード | ||||||||||
主題Scheme | Other | |||||||||
主題 | [通常論文] parallel programming, Haskell, GPGPU | |||||||||
資源タイプ | ||||||||||
資源タイプ識別子 | http://purl.org/coar/resource_type/c_6501 | |||||||||
資源タイプ | journal article | |||||||||
著者所属 | ||||||||||
Graduate School of Engineering, Kochi University of Technology | ||||||||||
著者所属 | ||||||||||
School of Information, Kochi University of Technology | ||||||||||
著者所属(英) | ||||||||||
en | ||||||||||
Graduate School of Engineering, Kochi University of Technology | ||||||||||
著者所属(英) | ||||||||||
en | ||||||||||
School of Information, Kochi University of Technology | ||||||||||
著者名 |
Takuya, Matsumoto
× Takuya, Matsumoto
× Kiminori, Matsuzaki
|
|||||||||
著者名(英) |
Takuya, Matsumoto
× Takuya, Matsumoto
× Kiminori, Matsuzaki
|
|||||||||
論文抄録 | ||||||||||
内容記述タイプ | Other | |||||||||
内容記述 | Haskell is a functional language featuring lazy evaluation and referential transparency. On one hand, Referential transparency is useful for parallel computing because the results do not depend on the evaluation order, but on the other hand, parallel computing requires an evaluation order that is different from that of lazy evaluation. There are some parallel programming libraries for Haskell, such as Repa (regular parallel arrays) and Accelerate. However, little research has been conducted on evaluation with real applications, and the usefulness of these libraries remains unclear. In this study, we evaluated the usefulness of parallel programming libraries for Haskell with an application that applies a super-resolution technique to fMRI images. We developed a CPU-based parallel program with Repa and GPU-based parallel program with Accelerate and compared their performance. We obtained reasonable speedups for the program with Repa, but not for the program with Accelerate. We also investigated Accelerate's performance issues with an implementation in C and CUDA and the log from the Accelerate program. In this paper, we report our findings through a case study, focusing on the advantages and difficulties in parallel program development with Haskell. ------------------------------ This is a preprint of an article intended for publication Journal of Information Processing(JIP). This preprint should not be cited. This article should be cited as: Journal of Information Processing Vol.25(2017) (online) ------------------------------ |
|||||||||
論文抄録(英) | ||||||||||
内容記述タイプ | Other | |||||||||
内容記述 | Haskell is a functional language featuring lazy evaluation and referential transparency. On one hand, Referential transparency is useful for parallel computing because the results do not depend on the evaluation order, but on the other hand, parallel computing requires an evaluation order that is different from that of lazy evaluation. There are some parallel programming libraries for Haskell, such as Repa (regular parallel arrays) and Accelerate. However, little research has been conducted on evaluation with real applications, and the usefulness of these libraries remains unclear. In this study, we evaluated the usefulness of parallel programming libraries for Haskell with an application that applies a super-resolution technique to fMRI images. We developed a CPU-based parallel program with Repa and GPU-based parallel program with Accelerate and compared their performance. We obtained reasonable speedups for the program with Repa, but not for the program with Accelerate. We also investigated Accelerate's performance issues with an implementation in C and CUDA and the log from the Accelerate program. In this paper, we report our findings through a case study, focusing on the advantages and difficulties in parallel program development with Haskell. ------------------------------ This is a preprint of an article intended for publication Journal of Information Processing(JIP). This preprint should not be cited. This article should be cited as: Journal of Information Processing Vol.25(2017) (online) ------------------------------ |
|||||||||
書誌レコードID | ||||||||||
収録物識別子タイプ | NCID | |||||||||
収録物識別子 | AA11464814 | |||||||||
書誌情報 |
情報処理学会論文誌プログラミング(PRO) 巻 10, 号 2, 発行日 2017-02-27 |
|||||||||
ISSN | ||||||||||
収録物識別子タイプ | ISSN | |||||||||
収録物識別子 | 1882-7802 | |||||||||
出版者 | ||||||||||
言語 | ja | |||||||||
出版者 | 情報処理学会 |