課題の進め方

並列化などの高速化手法を用いて、 できるだけ高速なプログラムを作成することが大まかな課題である。 高速化においては各自の創意工夫を期待する。 プログラムは基本的にはC言語で作成し、 手動でマルチプロセッサ(マルチコア)計算機向けの並列化を行うこととする。 並列化には POSIX スレッドライブラリと共有メモリ向けマクロを用いる。 まず逐次版プログラム(並列化を行う前のプログラム)の作成し, その高速化を行い、 その後並列プログラムを作成する。

2F計算室のLinuxワークステーション(FMV D5380)は、 Core2 Quad 3GHz のマルチコア構成であるので、 基本的にはこれを用いて計算を行い。計算時間などを測定する。 また、できるだけ計算サーバ (SPARC64VII 2.4GHz 4 core × 4)も利用できるようにする予定である。

本実験・演習では、正しいプログラムかという点だけでなく、 速く動くプログラムかという点も重視するので、 実験履修者間でスピード競争ができることが望ましい。 他の実験履修者とアイデア等について議論してもよい。


Masahiro Yasugi: yasugi@kuis.kyoto-u.ac.jp