2024-03-29T03:28:06Zhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_oaipmhoai:ipsj.ixsq.nii.ac.jp:001309272023-11-17T02:17:36Z06504:08126:08127
マクロデータフロー処理における処理とデータ転送のオーバーラップOverlapping of Macro Task Processing and Data Transfer for Macro-dataflow Computationjpnhttp://id.nii.ac.jp/1001/00131112/Conference Paperhttps://ipsj.ixsq.nii.ac.jp/ej/?action=repository_action_common_download&item_id=130927&item_no=1&attribute_id=1&file_no=1早稲田大学理工学部電気電子情報工学科早稲田大学理工学部電気電子情報工学科早稲田大学理工学部電気電子情報工学科早稲田大学理工学部電気電子情報工学科橋本, 茂藤本, 謙作岡本, 雅巳笠原, 博徳マルチプロセッサシステム上でのFORTRANプログラムの並列処理手法として、ループやサブルーチン等の粗粒度タスク間の並列性を利用する粗粒度並列処理 (マクロデータフロー処理)、ループのイタレーション間の並列性を利用する中粒度並列処理 (ループ並列化)、ステートメントレベルの近細粒度並列処理 、さらにそれらを階層的に組み合わせたマルチグレイン並列処理手法が提案されている。マクロデータフロー処理においては、ローカルメモリ経由でマクロタスク間のデータ授受を行なう方法 (データローカライゼーション手法) が提案されている。しかし、このようにプロセッサ間データ転送を最小化しても、必要なデータ転送が残る。また、多くの計算機ではデータ転送を CPUの代わりに行なうデータ転送ユニットを各プロセッサエレメントに持たせ、CPUの処埋と平行してデータ転送を行なえるようになっていて、見かけ上のデータ転送オーバーヘッドを隠蔽することが可能である。しかしながら、ユーザが処理とデータ転送のオーバーラップを考慮したプログラミングを行なうことは困難である。本稿では、マクロデータフロー処理において、処理とデータ転送を効率的にオーバーラップさせデータ転送オーバーヘッドを削減するための、マクロデータフロー処理におけるデータプレロード手法を提案する。本手法を適用することにより、対象マクロタスクの割り当てを待たずにデータロードが行なえるようになり、処理とデータ転送を効率的にオーバーラップさせることが可能となる。AN00349328全国大会講演論文集第54回アーキテクチャ67681997-03-122015-01-20