研究課題/領域番号 |
22K11972
|
研究種目 |
基盤研究(C)
|
配分区分 | 基金 |
応募区分 | 一般 |
審査区分 |
小区分60050:ソフトウェア関連
|
研究機関 | 大阪大学 |
研究代表者 |
置田 真生 大阪大学, 大学院情報科学研究科, 准教授 (50563988)
|
研究期間 (年度) |
2022-04-01 – 2025-03-31
|
研究課題ステータス |
交付 (2022年度)
|
配分額 *注記 |
4,290千円 (直接経費: 3,300千円、間接経費: 990千円)
2024年度: 780千円 (直接経費: 600千円、間接経費: 180千円)
2023年度: 780千円 (直接経費: 600千円、間接経費: 180千円)
2022年度: 2,730千円 (直接経費: 2,100千円、間接経費: 630千円)
|
キーワード | 自動並列化 / Transformer / OpenMP / 文脈理解 / ソースコード解析 / 並列化ディレクティブ |
研究開始時の研究の概要 |
本研究では,深層学習に基づく機械翻訳技術を応用して,C言語プログラムを自動的に並列化することを試みる.そのために,ソースコード解析技術と深層学習モデルを組み合わせて,プログラムに含まれる並列性・並列化可能性の抽出を実現する.具体的には,OpenMPプログラムに付与された並列化ディレクティブを正解ラベルとして深層学習モデルを訓練し,並列プログラムの構造・文脈を学習する教師あり学習手法を確立する.さらに,訓練した学習モデルを用いて,逐次のC言語プログラムにディレクティブを自動挿入するシステムの開発を目指す.
|
研究実績の概要 |
本研究の全体構想は,静的プログラム解析技術と自然言語処理向けの深層学習モデル(Transformer;以降,TX)を組み合わせて,並列プログラムの構造を学習する教師あり学習手法を開発し,プログラムに含まれる本質的な並列性・並列化可能性の抽出を実現することである.この構想の下,本研究では次の2つの目的の達成を目指している.(1)プログラムの並列性解析に適したTX向け表現形式の探求,および(2)TXを応用したOpenMP並列プログラムの自動生成. 令和4年度は,目的(1)の研究を対象に,「TXはforループの並列化可能性を理解できるか?」という問いを探求した.具体的には,OpenMP並列プログラムを学習データとして,プログラミング言語向けに拡張を施したTXを訓練し,訓練したTXを用いてC言語プログラムにおけるforループの並列化可能性を判定する手法を考案した.その結果,データ依存関係が明示的な場合については,0.9を越える高い適合率で並列化可能性を判定できた.この研究過程を通じて,自然言語と同様の単語分散埋め込み表現がプログラミング言語に対しても有用であること,およびプログラミング言語特有の概念である変数を一般化することでTXの理解を促進できることの2点を明らかにした.この結果は,高度な自然言語処理向けに開発されている様々なTXの拡張を,わずかな変更でプログラミング言語処理に応用可能であると示した点で重要である.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
3: やや遅れている
理由
令和4年度は,当初の計画通り,深層学習モデルTransformer(TX)によるプログラムの並列性解析の準備として,その目的に適した表現形式の探求に取り組んだ. 具体的には,C言語プログラムにおけるforループの並列化可能性をTXを用いて判定する手法を開発し,その過程を通じてプログラムの並列性の理解を促進するための拡張表現形式を考案した.この成果をまとめ,高性能計算分野における国内最大のワークショップSWoPPにて発表を行った.該当発表は,学生優秀論文賞の候補に選出されている.さらに,発表を通じて得たフィードバックをもとに改良を重ね,その結果をまとめて国際会議に投稿するための英語論文を執筆中である.令和5年度の国際会議での発表を見込んでいる. ただし,TXを用いたプログラム並列性の理解には課題が残っており,令和4年度内に望ましい表現形式を確立することは至らなかった.
|
今後の研究の推進方策 |
研究の進捗を鑑みて,研究計画の一部を変更する. 当初の予定では,令和5年度は深層学習モデルTransformer(TX)を応用したOpenMP並列プログラムの自動生成に取り組む予定であった.しかし,令和5年度の前半は,前年度に引き続き表現形式の探求に取り組む.令和5年度の後半から,並行してOpenMPプログラムの自動生成に着手する予定である.
|