研究日誌。

大規模なグラフ処理に対してメモリ階層構造を考慮した高性能なソフトウェアを開発。

HugeTLBfs @ IBM

2010-03-10 19:37:22 | Weblog
Leverage transparent huge pages on Linux on POWER

IBM POWER 向けの HugeTLBfs の記事だが、Linux にもそのまま使える。
libHugeTLBfs による HugeTLBfs の利用方法が詳しく書かれている。

1. POWER{4,5,5+} は HugePage が 16MB
2. SLES 10 と RHEL 5 は使える。
3. readelf での .text は実行バイナリ、.bss は初期化されていない領域、.data は初期化された領域を示している
4. libhugetlbfs の install
5. mount / HugePage の確保
6. libhugetlbfs.so ありで compile


Tuning stream with libhugetlbfs
Stream のお話。
global 変数で確保している array を malloc で確保するように書きなおし、 libhugetlbfs による largepage を利用方法がメインであるが、コンパイルの仕方やどのような演算を行っているかという stream 自体のから始まり、benckmark に使用する array size を変えたり、コンパイル時の最適化オプション指定の方法、OpenMP の適用、thread の bind など充実な内容だ。