High Performance Computing

概要

近年、オープンソースソフトウェア(以降、OSS)の普及により、ソフトウェアの開発がこれまで以上に盛んに行われています。 OSSとはAndroidやchrome、Firefoxなどのように当該ライセンスの条件のもとならば、誰でも使えて、誰でも開発に参加できるソフトウェアのことです。 ソフトウェア開発時には、多くの知識や開発経験が必要であるうえに、どれだけ注意しようともバグ(ソフトウェアの誤りや不具合)が混入してしまうこともあります。 そのため、効率的にソフトウェアの開発ができるように工夫したり、開発したソフトウェアにバグ(ソフトウェアの誤りや不具合)がないか調査することなどは重要です。 しかし、年々ソフトウェアの規模や複雑さは増大しており、一般に普及して使われているようなサーバーなどで調査することは難しくなってきています。

そこで我々は、高性能計算(High Performance Computing)(以降、HPC)の利用に着目しました。 HPCとは、スーパーコンピュータやHadoop(OSSの並列処理フレームワーク)といった計算処理の高いサーバー群のことで、 1台のサーバーでは処理できない計算を、複数台のサーバーで分散して計算する技術です。 HPCの利用事例として、科学技術計算の分野におけるコンピュータシュミレーションや生物学の分野における遺伝子解析などが挙げられるが、ソフトウェア研究の分野における利用事例はあまりありません。 その理由の一つとして、HPCを使った研究は専門の知識が必要でハードルが高いと考えられていたためです。 そこで効率的にHPCをソフトウェア研究でも利用することを目的として、次のような研究を我々は行っています。

プロジェクトメンバー

Publications

POSL publications link