ベンチマークについて †LinuxサーバのHDDベンチマークを取得したい場合bonnie++を使えば簡単に出来る。 ただし、これも個人的にだけど、ベンチマークを取ったとしても、それがいい数値なのか、そうじゃないのか、非常に見極め画難しい。 bonnie++ †ここで試してみたのがbonnie++というツール。 環境 インストール †今回はソースファイルを使用してのインストール。 バージョン:bonnie++-1.03e # tar zxvf bonnie++-1.03e.tgz # cd bonnie++-1.03e # vim bonnie.h ※短い時間でも計測できるように修正~ #define MinTime (0.5) ↓ #define MinTime (0.01)~ # make makeすると同ディレクトリに"bonnie++"という実行ファイルが出来上がる。
計測 †今回は以下のコマンドで実行 # time ./bonnie++ -d /home/ -s 512 -r 256 -u root オプション説明~ -d = 測定対象ディレクトリ -s 一時ファイルの最大サイズ(MB) -r メモリサイズ(MB) -u ユーザ指定 今回のパターンだと、rootユーザで256MBメモリを使用し、/homeディレクトリに512MBのファイルを作成する また、bonnieコマンドの前にtimeをしているのは、どのくらいの時間で実行出来たかも重要な目安になるので入れておくことをお勧め。 以下がサクラの結果 # time ./bonnie++ -d /home/ -s 512 -r 256 -u root Using uid:0, gid:0. Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP XXXXXXXXXX.sak 512M 61152 98 197277 28 87165 26 66210 99 3649001 100 203735 196 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 36818 97 400977 100 54285 99 52472 99 779335 99 84122 100 XXXXXXXXXX.sakura.ne.jp,512M,61152,98,197277,28,87165,26,66210,99,3649001,100,203735.2,196,16,36818,97,400977,100,54285,99,52472,99,779335,99,84122,100 real 0m31.989s user 0m14.832s sys 0m5.745s 続いてdtiサーバの結果 # time ./bonnie++ -d /home/ -s 512 -r 256 -u root Using uid:0, gid:0. Writing with putc()...done Writing intelligently...done Rewriting...done Reading with getc()...done Reading intelligently...done start 'em...done...done...done... Create files in sequential order...done. Stat files in sequential order...done. Delete files in sequential order...done. Create files in random order...done. Stat files in random order...done. Delete files in random order...done. Version 1.03e ------Sequential Output------ --Sequential Input- --Random- -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks-- Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP XXXXXXXXXXXXXX 512M 17591 37 149945 38 176794 21 15444 31 730109 39 114079 77 ------Sequential Create------ --------Random Create-------- -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete-- files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP 16 29979 69 85451 37 22179 39 14437 35 85331 33 21810 38 XXXXXXXXXXXXXX,512M,17591,37,149945,38,176794,21,15444,31,730109,39,114078.8,77,16,29979,69,85451,37,22179,39,14437,35,85331,33,21810,38 real 1m20.521s user 0m19.785s sys 0m6.396s この結果を見ると、timeコマンドの結果を見るだけで火を見るより明らかな性能差が分かる。 ベンチマーク結果の見方 †上記の結果を以下の説明に当てはめてみると分かりやすい。 Sequential Output:連続での書き込み Per Cha:キャラクタ単位でのアクセス Sequential Input:連続での読み込み Random:ランダムアクセス Sequential Create:連続でのファイル作成・読み込み・削除 Random Create:ランダムでのファイル作成・読み込み・削除 個人的に重視しているのが、 ・サクラ ・DTI サクラのほうが書き込みが4倍くらい早い。 これが512MBのファイルを作成したときに3倍近く時間がかかっているのも納得できる。 冒頭で説明したように、この結果を見るだけだと、その数値が良いのか悪いのかが自分には判断出来ないので、別のサーバと比べてみるということをお勧め。 ※重要※ 2013/9/03 |