2024-03-29T01:16:42Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:000965902023-04-27T10:00:04Z01164:02240:07073:07336
NAS Parallel BenchmarksによるOmni OpenACCコンパイラの評価jpnコンパイラhttp://id.nii.ac.jp/1001/00096568/Technical Reporthttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=96590&item_no=1&attribute_id=1&file_no=1Copyright (c) 2013 by the Information Processing Society of Japan筑波大学大学院システム情報工学研究科筑波大学計算科学研究センター筑波大学大学院システム情報工学研究科/筑波大学計算科学研究センター田渕晶大中尾昌広佐藤三久GPGPU 等のアクセラレータによる高速化が注目されている.しかしそのプログラミングはアクセラレータごとに異なり複雑であるためプログラミングコストが高く,広いアプリケーションに対する適用を妨げてきた.OpenACC はコードの一部をアクセラレータにオフロードするための指示文ベースプログラミングモデルであり,容易に記述が可能である.本研究では,OpenACC 指示文が挿入された C 言語のコードを NVIDIA 社の GPU プログラミング環境 CUDA の API を含むコードに変換するコンパイラを設計・実装した.NAS Parallel Benchmarks に含まれる CG,EP,IS を用いて評価を行った結果,コードからコードへの変換により NVCC で最適化されたマシンコードを生成できることが分かった.それにより CG,EP では命令数が減少し商用コンパイラよりも高い性能を示した.一方でループを並列化する際のループ変数の計算や,リダクション用の配列確保のオーバーヘッドによる性能低下が見られ,いまだ改善の余地がある.AN10463942研究報告ハイパフォーマンスコンピューティング(HPC)2013-HPC-14236162013-12-092013-12-05