Project/Area Number |
22K11984
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Kyoto Tachibana University |
Principal Investigator |
平石 拓 京都橘大学, 工学部, 専任講師 (60528222)
|
Project Period (FY) |
2022-04-01 – 2026-03-31
|
Project Status |
Granted (Fiscal Year 2023)
|
Budget Amount *help |
¥4,030,000 (Direct Cost: ¥3,100,000、Indirect Cost: ¥930,000)
Fiscal Year 2025: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2024: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2023: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2022: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
|
Keywords | プログラミング言語 / 並列・分散処理 / 高性能計算 |
Outline of Research at the Start |
我々はこれまで,グラフ探索など不規則な構造を持つデータや計算を扱うアプリケーションを,スパコン等で効率良く並列化するためのプログラミング言語の開発に取り組んでいる.その成果として後戻り方式と呼ぶ独自の並列計算機構を提案し,それを取り入れて開発した並列言語は非常に優れた性能を実現している.しかし,この言語はCやFORTRAN言語等で開発された既存のプログラムを移植して用いたり,他の既存のプログラムの一部に組み込む形で使うのは非常に難しくなっている.この研究は,後戻り方式の並列計算機構の実装方式を改めることで,この機構をC言語ライブラリ等のより使いやすい形で提供することを主な目的とする.
|
Outline of Annual Research Achievements |
これまで入れ子関数を用いたコードを変換先とするコード変換器としてして提供してきた「一時後戻りによる動的負荷分散」機能を,非標準のC言語機能である入れ子関数を用いず,ヒープ上に確保したスタックに「一時的後戻り」に必要な情報を保存することで,木探索アルゴリズムを,プログラマが必ずしも再帰呼び出しの書き方によらずに書けるようなプログラミングモデルを提案し,その構想についてポスター発表を行った.これは,昨年度に動作実験を行った実装方式を実際に利用するためのプログラミングモデルを提案したものとなる.この実装は,現時点では並列で動作するものではないが,ヒープ上に確保したスタックのトレースをワークスティール時に実施することで,従来のTascellと同等のワークスティール機構を実現するような具体的な実装方式の検討を行った. Tascellの入れ子関数によらない他の実現方式として,C++の機能を利用した実現方法の検討・実装・評価を学外の研究者との共同研究により引き続き実施した.これは,具体的には入れ子関数のかわりにC++11のラムダ式を利用するものだが,今年度はラムダ式を単純に用いた場合に生じる大きなオーバーヘッドを削減するための実装手法の提案や,従来の入れ子関数方式の種々の実装の性能比較も行った.これらの成果は国際会議で発表した. 加えて,TascellとOpenACCを組み合わせることで,TascellのワーカがGPUを利用できるようにする機能拡張およびベンチマークアプリケーションによる予備評価も行った.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
入れ子関数ではなくヒープ上に確保したスタック上で一時的バックトラックを実現する方式のためのプログラミングモデルの設計および実装方式の検討に想定より時間がかかったため,研究の第二段階としていた「独自スケジューラの利用廃止」には至っていないが,開発そのものは進展している. 別に検討している方式の,C++のラムダ式を用いる実現方式の研究が進展していることもあり,総合的には現時点でおおむね順調に進展しているといえる.
|
Strategy for Future Research Activity |
今年度までに提案したプログラミングモデルの実装の完成を急ぐとともに,次の研究段階である独自スケジューラの利用廃止に向けた検討および実装を進める.
|