著者
小久保 翔平 伊波 立樹 河野 真治
雑誌
研究報告システム・アーキテクチャ(ARC) (ISSN:21888574)
巻号頁・発行日
vol.2015-ARC-215, no.16, pp.1-6, 2015-05-19

本研究室では Code Gear, Data Gear を用いた並列フレームワークの開発を行なっている.Code Gear, Data Gear は処理とデータの単位である.並列実行に必要な Meta な機能を関数型言語における Monad の原理に基づいて,実現する.今回設計した Gears OS では Code Gear, Data Gear それぞれに Meta Code Gear と Meta Data Gear を対応させる.Code Gear が実行されるとそれに対応する Meta Code Gear が実行され,Meta Computation が行われる.Meta Computation は OS が行うネットワーク管理,メモリ管理等の資源制御を行う.本論文では基本的な機能を設計し,CbC(Continuation based C) で実装する.
著者
小久保 翔平 河野 真治
出版者
一般社団法人情報処理学会
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS)
巻号頁・発行日
vol.2014, no.4, pp.1-7, 2014-05-07

当研究室では、PS3, Linux 及び MacOS X 上で動作する並列プログラミングフレームワーク Cerium を提案している。MacOS X 上で GPGPU を行うには、OpenCL または CUDA を用いる方法が考えられる。OpenCL, CUDA の API に対応した API を Cerium に用意することでデータ並列に対応した。タスク並列で実行する場合、データ転送がオーバーヘッドになる。このオーバヘッドを解決するためには、kernel の実行中にデータ転送を行うことでデータ転送をオーバーラップする必要がある。OpenCL では CommandQueue、CUDA では Stream を複数用いることでデータ転送や kernel の実行を並列に行うことができる。複数の CommandQueue, Stream を用いて、自動で並列実行を行うスケジューラーを実装した。実装したスケジューラーを WordCount、FFT を例題に測定し、考察を行う。We are developing parallel programming framework Cerium, that is running on the PS3, Linux, Mac OS X and GPGPU. As GPGPU support on Mac OS X, OpenCL or CUDA can be used in an API set. Data Parallel on GPUGPU is also working on CPUs. In Task Parallel, data transfer causes overhead. To resolve this, pipeline data transfer is used both on GPGPU and Many Cores. OpenCL and CUDA have slightly different behavior on Data Parallel and out of order task execution. In WordCount and FFT examples, we show the different and its analysis.