スパコンのランキングとしては連立一次方程式を解く性能を競うTop500が有名あるが、偏った評価であるという批判があり、Jack Dongarra教授らは、多面的な性能評価を行うHPC Challengeを開発した。BoFはBird of a Featherの短縮形であり、同好の士の集まりというような意味である。ということでBoFは正式な論文発表や講演と比べて格下の扱いで、SC07では49のBoFが開かれたが、その開催時間は、昼休みの12:15~13:15と、正式な論文発表などが終わった後の17:30~19:00という時間帯である。

このHPC ChallengeのBoFは、11月13日の12:15~13:15に開催され、これに出席していると、まともな昼食は取れない。それはともかく、HPC Challenge(HPCC)にはClass-1とClass-2という表彰カテゴリがあり、Class-1は、連立一次方程式を解くHPL、メモリバンド幅を測定するSTREAM triad、インタコネクトを含めたシステム全体のランダムなメモリアクセス性能を測るRandomAccess、そしてフーリエ変換を行うFFTEの4種のベンチマークの性能を競う。HPCCはベンチマークのソースプログラムを変更しても良く、Class-2は、これらのベンチマークのエレガントなコーディングを競う。従って、性能のように絶対的尺度は無く10人の審査委員の合議で決めることになっている。

HPCC審査委員のリスト。日本からは筑波大の高橋先生が入っている。

今年のClass-1のHPLは、1位はLawrence Livermore国立研究所(LLNL)のBG/Lで259TFlops、2位がSandia国立研究所(SNL)のRed Storm(Cray XT3とほぼ同じマシン)の95TFlops、3位がIBMのワトソン研究所のBG/Lの67TFlopsと発表された。そして、STREAMは、1位、2位はHPLと同じで、それぞれ160TB/s、77TB/sである。そして3位はLLNLのPOWER5マシンの55TB/sであった。次のRandomAccessは、1位から3位までSTREAMと同じで、1位が35.5GUPs、2位が33.6GUPs、3位が17.3GUPsであった。

ここまで、1位はLLNLのBG/L、2位はSNLのRed Stormであるが、その性能差は順に縮まっており、最後のFFTEでは、ついにSNLのRed Stormが2870GFlops、LLNLのBG/Lが2311GFlopsと順位が逆転した。そして3位はOak Ridge国立研究所のCray XT3の1122GFlopsとCrayのXT3が強みを発揮した。

そして、Class-2では、商用言語部門では、Interactive Supercomputing社のPythonによるベンチマークのコーディングと同社のStar-Pによる並列化が受賞した。HPCCベンチマークとしてダウンロードできるMPI版のコードではHPLは15608行、STREAMは658行、RandomAccessは1883行、FFTEは1748行のプログラムであるが、このPython/Star-Pでは63行のフレームワークが必要であるが、HPLは13行、STREAMは6行、RandomAccessは46行と71行のC++プログラム、FFTEは8行と標準のMPI版と比べて大幅に少ないプログラム量で記述できるという。そして、128コア程度までの範囲で、ほぼリニアにコア数に比例して性能が伸びており、この範囲では、Star-Pの使用により十分な並列性が得られているという結果が示された。

そして、Class-2の研究段階の言語部門では、IBMのX10による実装が表彰を受けた。X10言語による記述では、HPLは291行、STREAMは47行、RandomAccessは79行、FFTEは137行である。HPLでは、MPI版、UPC(Unified Parallel C)版などに比べて大幅に少ない行数で、ほぼ同じ性能を実現、STREAMではMPI版と同等、UPC(Unified Parallel C)よりも性能が高いという結果が示された。また、RandomAccessでもUPCより良く、FFTEでも規模に比例して性能があがるというデータが示された。