@techreport{oai:ipsj.ixsq.nii.ac.jp:00227136,
 author = {石田, 祐二郎 and 細見, 岳生 and 山下, 晃弘 and 伊達, 進},
 issue = {25},
 month = {Jul},
 note = {近年の HPC 環境で用いられるプロセッサは,高性能化のために一度に複数のデータを処理するベクトル命令 (SIMD 命令)を有している.ユーザは自動ベクトル化コンパイラを用いることで,複雑なハードウェアやベクトル命令についての知見がなくともその性能を享受している.自動ベクトル化コンパイラのベクトル最適化が不十分である場合,ユーザは実行プロファイル情報やコンパイラが出力するベクトル化に関する解析情報を利用して,手作業でベクトル最適化を実施する必要があった.しかしそれらの情報はソースコードの問題点を示すに留まっており,ベクトル最適化についての知見を有さないユーザには,どのようなベクトル最適化が有効かを判断することが困難であった.そこでこの問題を解決するために,ロングベクトル命令向けコード変換ツール PGSLV (Profile Guided Source to Source Transformations for Long Vector Optimizations)を提案する.PGSLV はコンパイラ最適化情報,実行プロファイル情報およびソースコードを入力とし,それら入力から得られるベクトル演算率あるいは平均ベクトル長の情報およびループの解析情報を利用することで,ベクトル最適化のために必要なソースコード変換を実施する.本報告では PGSLV のアプローチの有効性を検証するために,PGSLV の機能の一部を作成した.その機能においてベクトル最適化が不十分な関数を特定し,その関数に対してルールベースでベクトル最適化の方針を定め,関数内のどのループにどのようなベクトル化最適化技術を適用するべきかを判定する.SX-Aurora TSUBASA 上で,NPB および Polybench 合計 38 本のワークロードの内,ベクトル化が不十分であると PGSLV によって検出されたを 12 本を対象に,作成したルールが示す最適化方針およびベクトル最適化技術に従い手動でコード変換を行うことで,平均 10.3 倍性能が向上することを確認した.},
 title = {ロングベクトル環境におけるプロファイルを用いた自動ベクトル化技術},
 year = {2023}
}