スキップしてメイン コンテンツに移動

WD20EARSで超簡単なベンチを取ってみる

2TBなのに9000円割れを起こしているWestern DigitalのWD20EARSだが物理セクターが4KiB(4096 byte)で論理セクターを512byteにエミュレートしている代物なのでパーティションの切り方に注意しないとパフォーマンスが低下する。

詳しい内容についてはLinux Kernel Watchを参照。

要はパーティションの開始位置が8の倍数(8は4096÷512の結果)であればいい。
通常、fdiskなどでパーティションを切っていると以下のように第一パーティションが第63セクターから始まるのでこのケースだとパフォーマンスが落ちます。(63は8で割り切れないため)
[root@enterprise ~]# parted /dev/sda
GNU Parted 1.8.1
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit s
(parted) p

Model: ATA WDC WD20EADS-22R (scsi)
Disk /dev/sda: 3907029167s
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start        End          Size         Type     File system  Flags
 1      63s          1953134504s  1953134442s  primary               raid

今回は書き込み性能だけパフォーマンスの増減を確認した。

time dd if=/dev/zero of=test1 bs=128k count=32768
32768+0 records in
32768+0 records out
4294967296 bytes (4.3 GB) copied, 78.149 seconds, 55.0 MB/s

real    1m18.721s
user    0m0.055s
sys     0m8.456s

time dd if=/dev/zero of=test2 bs=128k count=32768
32768+0 records in
32768+0 records out
4294967296 bytes (4.3 GB) copied, 133.031 seconds, 32.3 MB/s

real    2m19.676s
user    0m0.064s
sys     0m8.659s

time dd if=/dev/zero of=test3 bs=128k count=32768
32768+0 records in
32768+0 records out
4294967296 bytes (4.3 GB) copied, 103.591 seconds, 41.5 MB/s

real    1m49.534s
user    0m0.049s
sys     0m8.402s

time dd if=/dev/zero of=test4 bs=128k count=32768
32768+0 records in
32768+0 records out
4294967296 bytes (4.3 GB) copied, 92.4522 seconds, 46.5 MB/s

real    1m33.231s
user    0m0.044s
sys     0m8.058s

time dd if=/dev/zero of=test5 bs=128k count=32768
32768+0 records in
32768+0 records out
4294967296 bytes (4.3 GB) copied, 96.5241 seconds, 44.5 MB/s

real    1m42.806s
user    0m0.050s
sys     0m8.364s

● partedを使ってGPTでパーティション開始位置が8の倍数になるように設定した場合
[root@enterprise ~]# parted /dev/sdd
(parted) unit s
(parted) mkpart primary 40 1953125039
(parted) mkpart primary 1953125040 3906250039
(parted) p

Model: ATA WDC WD20EARS-00M (scsi)
Disk /dev/sdd: 3907029167s
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start        End          Size         File system  Name     Flags
 1      40s          1953125039s  1953125000s  ext3         primary
 2      1953125040s  3906250039s  1953125000s               primary
(parted) unit GB
(parted) p

Model: ATA WDC WD20EARS-00M (scsi)
Disk /dev/sdd: 2000GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system  Name     Flags
 1      0.00GB  1000GB  1000GB  ext3         primary
 2      1000GB  2000GB  1000GB               primary

[root@enterprise ~]# time /sbin/mkfs.ext3 /dev/sdd1
real    4m4.347s
user    0m0.763s
sys     0m19.149s

先ほどと同様にddでwriteの速度を5回検証。先ほどよりも2倍ちょっと速い
[root@enterprise ~]# mount /dev/sdd1 /data3
time dd if=/dev/zero of=test1 bs=128k count=32768
4294967296 bytes (4.3 GB) copied, 39.2418 seconds, 109 MB/s

real    0m40.107s
user    0m0.053s
sys     0m8.217s

time dd if=/dev/zero of=test2 bs=128k count=32768
4294967296 bytes (4.3 GB) copied, 54.6037 seconds, 78.7 MB/s

real    0m55.010s
user    0m0.063s
sys     0m8.313s

time dd if=/dev/zero of=test3 bs=128k count=32768
4294967296 bytes (4.3 GB) copied, 47.1927 seconds, 91.0 MB/s

real    0m48.051s
user    0m0.048s
sys     0m8.491s

time dd if=/dev/zero of=test4 bs=128k count=32768
4294967296 bytes (4.3 GB) copied, 50.3923 seconds, 85.2 MB/s

real    0m51.414s
user    0m0.055s
sys     0m8.230s

time dd if=/dev/zero of=test5 bs=128k count=32768
4294967296 bytes (4.3 GB) copied, 55.192 seconds, 77.8 MB/s

real    0m56.192s
user    0m0.064s
sys     0m8.125s

コメント

このブログの人気の投稿

kickstartで最小限の構成でインストール

最小限の手間でサーバーを配備できるようにしたいのでkickstartインストールをやってみました。 とりあえずの目標としては以下の2点。 最小構成でインストール。必要なdaemonはsshdだけ DAGリポジトリからPuppetをインストール。これは次回以降の自動設定の布石 設定ファイルを作った手順は以下のような感じ 実際に手動で最小限の構成でインストールしてみる インストール後に/root/anaconda-ks.cfgを参考に編集。オプションの詳しい説明は RedHatのマニュアル や ウノウラボさんのblog を参考にした。 編集した設定ファイル(ks.cfg)をhttpでアクセスできる場所にアップロード。自分はDropboxのPublic領域にコピー。これで自前のWebサーバーを準備する手間が省ける VMWare Playerで実際にkickstartインストールできるか確認。思ったとおりにいってない箇所があれば2に戻る。 で、できた設定ファイルが以下のようになります。一部()で囲っている部分は適宜置き換えてください。 install url --url http://ftp.iij.ad.jp/pub/linux/centos/5.5/os/i386 lang ja_JP.UTF-8 keyboard jp106 timezone Asia/Tokyo network --device eth0 --bootproto dhcp --hostname (ホスト名) --noipv6 firewall --enabled --port=22:tcp rootpw --iscrypted (暗号化パスワード) authconfig --enableshadow --enablemd5 selinux --permissive bootloader --location=mbr --driveorder=sda clearpart --all --initlabel --drives=sda part /boot --fstype ext3 --size=100 --ondisk=sda part pv.2 --size=0 --grow --ondisk=sda volgroup VolGroup00 pv....

Windowsのエクスプローラーがフリーズする現象

ここ数ヶ月の間Windowsのエクスプローラーの調子がおかしかったのでぐぐって直した。 症状 アイコンをダブルクリックしてもエクスプローラーがハングアップする。数分待つと関連付けされたアプリが起動する。 アイコンを右クリックするとエクスプローラーがハングアップする。待つとメニューが出る。 普通にアプリにドラッグアンドドロップする分にはフリーズしない。 ググッたところ同様に悩んでいる方がいた。 ファイルの起動が遅い レジストリに存在しないマシンへのファイル共有のリンクがあるとフリーズするらしい。 大体の原因がわかったのでregeditでレジストリをエクスポートしてテキストエディタから「\\\\」(UNCの最初の\\を\でエスケープした文字列)で検索して片っ端からファイル共有へのリンクがないかチェックした。 案の定4,5個ぐらい存在しないマシンの共有ファイルへリンクしていた。やった覚えはないんだけどなぁ。。 当該箇所を削除したところ再起動なしでエクスプローラーがフリーズしなくなりました。 再インストールも考えていたので助かりました。