| システム構成 |
結果 (sec) | ||||||||
| HPC-DPr490 Q/C Xeon 5160 3.0GHz DDR2-667 8GBメモリ Sys. HDD: 250GB ext3 G03 D02 PGIビルド |
Scratch Disk |
File System | |||||||
| user | system | g03 cpu time (user +system に近い ) |
elapsed | idle time ( elapsedから job cpu timeを 引いた値 ) |
|||||
| Input File | |||||||||
| test415 (シリアル実行) File Size: 1GB + 2GB |
SATA 250GB |
ext2 | 832 | 185 | 1016 | 1018 | 2 | ||
| XFS | 832 | 47 | 878 | 881 | 3 | ||||
| SAS 10k 300GB |
ext2 | 834 | 214 | 1047 | 1068 | 21 | |||
| XFS | 835 | 50 | 884 | 916 | 32 | ||||
| SAS RAID0 300GB x2 |
ext2 | 837 | 390 | 1226 | 1232 | 6 | |||
| XFS | 840 | 50 | 890 | 892 | 2 | ||||
| test567 (シリアル実行) File Size: 30MB + 6GB |
SATA 250GB |
ext2 | 2808 | 354 | 3161 | 3168 | 7 | ||
| XFS | 2820 | 97 | 2915 | 2968 | 53 | ||||
| SAS 10k 300GB |
ext2 | 2822 | 411 | 3231 | 3242 | 11 | |||
| XFS | 2815 | 99 | 2914 | 3011 | 97 | ||||
| SAS RAID0 300GB x2 |
ext2 | 2834 | 742 | 3575 | 3583 | 8 | |||
| XFS | 2840 | 101 | 2940 | 2977 | 37 | ||||
| test637 (シリアル実行) File Size: 8GB |
SATA 250GB |
ext2 | 1696 | 475 | 2170 | 2236 | 66 | ||
| XFS | 1688 | 66 | 1753 | 1870 | 117 | ||||
| SAS 10k 300GB |
ext2 | 1718 | 561 | 2278 | 2321 | 43 | |||
| XFS | 1683 | 65 | 1747 | 1832 | 85 | ||||
| SAS RAID0 300GB x2 |
ext2 | 1724 | 1085 | 2808 | 2844 | 36 | |||
| XFS | 1654 | 69 | 1721 | 1770 | 49 | ||||
| test653 (シリアル実行) File Size: 4GB + 4GB |
SATA 250GB |
ext2 | 688 | 426 | 1112 | 1116 | 4 | ||
| XFS | 688 | 52 | 738 | 845 | 107 | ||||
| SAS 10k 300GB |
ext2 | 690 | 505 | 1193 | 1197 | 4 | |||
| XFS | 689 | 54 | 741 | 765 | 24 | ||||
| SAS RAID0 300GB x2 |
ext2 | - | - | - | - | - | |||
| XFS | 691 | 53 | 743 | 767 | 24 | ||||
| HPC-DPr490 Q/C Xeon 5160 3.0GHz DDR2-667 8GBメモリ Sys. HDD: 250GB ext3 G03 D02 PGIビルド (シリアル実行) |
SATA 250GB |
ext2 | 13471 | 3931 | 17400 | 28127 | 10727 | ||
| XFS | 13474 | 2164 | 15637 | 24851 | 9214 | ||||
| SAS 10k 300GB |
ext2 | - | - | - | - | - | |||
| XFS | 13539 | 2218 | 15756 | 21671 | 5915 | ||||
| SAS RAID0 300GB x2 |
ext2 | 13578 | 6672 | 20248 | 23313 | 3065 | |||
| XFS | 13576 | 2285 | 15859 | 18455 | 2596 | ||||
| 参考資料 (ディスクのI/O速度) | |||||||||
| ファイル読み書きテスト File Size: 20GB |
Scratch Disk |
F/S | 動き | 速度 | user | system | - | elapsed | idle time |
| SATA 7200 rpm 250GB x1 |
ext2 | write | 52MB/s | 0 | 23 | - | 384 | 361 | |
| read | 59MB/s | 0 | 16 | - | 337 | 321 | |||
| XFS | write | 68MB/s | 0 | 20 | - | 295 | 275 | ||
| read | 59MB/s | 0 | 17 | - | 341 | 324 | |||
| SAS 10k rpm 300GB x1 |
ext2 | write | - | - | - | - | - | - | |
| read | - | - | - | - | - | - | |||
| XFS | write | 87MB/s | 0 | 23 | - | 230 | 207 | ||
| read | 83MB/s | 0 | 16 | - | 240 | 224 | |||
| SAS RAID0 10k rpm 300GB x2 |
ext2 | write | 137MB/s | 0 | 21 | - | 146 | 125 | |
| read | 160MB/s | 0 | 17 | - | 125 | 108 | |||
| XFS | write | 172MB/s | 0 | 22 | - | 116 | 94 | ||
| read | 165MB/s | 0 | 16 | - | 121 | 105 | |||
※ 上表は弊社システムを納入する際に実施したGaussian 03動作確認テスト用のアウトプットファイルを整理した作成したものなので最新のデータではありません。また、計算機の挙動をわかりやすくするためシリアル実行の結果だけを抽出しています。
Gaussian 03用の計算機ではスクラッチファイルを読み書きするための高速スクラッチディスク (含メモリーファイルシステム) の実装が実際の計算速度を大きく左右します。システムには6種類のスクラッチディスクシステムが搭載されています。
SATA 7200rpm 250GB ext2
SATA 7200rpm 250GB XFS
SAS 10k rpm 300GB ext2
SAS 10k rpm 300GB XFS
SAS 10k rpm 600GB RAID0 (300GB x2) ext2
SAS 10k rpm 600GB RAID0 (300GB x2) XFS
上表には参考として上記6種類のディスクの実際のI/O速度を20GBのファイルの読み書きを行い確認しています。このテストではext2とXFSの差はみられません。単体ディスクとRAID0の差異はI/O速度だけしか顕在化していません。SATAディスクとSASディスクはI/O速度差がみえています。
計算機の挙動をわかりやすくするためシリアル実行の結果のみを検討に用いています。並列動作の検討は別の機会に行います。
Gaussian 03に付属のテストジョブから大きなスクラッチファイルを用いるジョブとしてtest415、test567、test637、test653をの結果を用いています。これとは別にLarge File Size tes jobはお客様のGaussian 03 CCSD計算の結果を用いています。
※ Job cpu time以外はtimeコマンドによる計測。
test 415、test 567、test 637、test 653では廉価なSATA 250GBドライブ + XFSの構成でも十分に高速です。job cpu time と elapsed timeとの差も小さいです。
Job cpu timeとelapsed timeの差が大きいです。表ではidle timeとして表記しています。system timeも大きくなっています。このクラスのジョブになると、高速スクラッチファイルシステムの威力が発揮され始めます。SAS RAID0 + XFSが良いです。
40GBのスクラッチファイルを用いる計算でも2500秒〜10000秒のidle時間を空費しています。このファイルサイズがさらに大きくなると、この空費時間はさらに増大します。
Linuxの前世代の主要ファイルシステムがext2です。通常の利用ではジャーナリングを備えていない難点がある反面、書き込み速度低下のオーバーヘッドがないので高速です。そのため、スクラッチディスクには適したファイルシステムです。
ext2にジャーナリング機能などを追加・拡張した現在のLinuxの主要ファイルシステムとして広く利用されています。弊社でもext3を標準的ファイルシステムとして採用しています。
XFSはLinuxのファイルシステムのひとつで、高速性に優れるとされています。スクラッチファイル用として優ています。
ユーザが使用したCPU時間。マルチスレッドジョブをマルチコア環境で動作させると、各コアのCPU時間の合計となるため、実時間よりも長くなる。
ユーザが使用したシステム時間。ディスクI/Oなどでシステムが動作すると増加します。Gaussianジョブでディスクを多用する際にはsystem timeに費やす時間が増加し、このオーバーヘッドに注意が必要。
Gaussianの出力ファイルに記載されるCPU利用時間。シリアル計算の場合は、user timeとsystem timeの合計値にほぼ等しい。並列処理でも実際の時間を表示する。また、ファイルI/O負荷が小さい場合はelapsed timeとも近い時間となる。 ところが、I/O負荷が高い計算では、I/O待ちのためCPUが空費される時間が多くなるが、これはJob cpu timeには反映されない。従って、Job cpu timeと実時間とは大きく異なるケースがある。今回の例ではidleと表記した時間がこれに該当します。Large File Size test jobでは10,000秒を超えるケースも記録されていました。
ジョブの投入から終了までの実時間。実際の計算時間を考える場合には、この時間が重要。