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

投稿

ラベル(SSD)が付いた投稿を表示しています

I/OスケジューラでSSDのパフォーマンスは変わるのか?

以前、Unbreakable Enterprise KernelのI/O schedulerがdeadlineに変更されたと ブログ に書きました。 また、SSDであればnoopの方が合っているかもしれないとコメントに書きました。 実際のところ、どうなのでしょうか? 検証してみます。 まずは、I/O schedulerを変更してみます。変更するには3通りあるのですが、 1. bootパラメータ(elevator)を変更する 2. /sys/block/<device>/queue/schedulerを直接変更する 3. udevのルールを変更する 今回は、検証なので、2の直接書き換え方式を使っていますが、通常はは、SSDのみをnoopとしたい、かつ、リブートで元に戻って欲しくない等になるので、3のudevルールで対応すると思います。 以下のudevのルールを/etc/udev/rule.dに作成します。 SUBSYSTEM=="block", SYSFS{queue/rotational}=="0", RUN+="/bin/sh -c 'echo noop > /sys$devpath/queue/scheduler'" * queue/rotationalは磁気ディスクであれば1が設定され、SSDであれば0が設定されますが、USBのような安価なフラッシュ   ディスクの場合は1が設定される場合があるようです 今回は、15セッションでTPC-Cのベンチマークを実施してみました。 1. deadline $ su - root -c "echo deadline > /sys/block/sdc/queue/scheduler" $ su - root -c "echo 3 > /proc/sys/vm/drop_caches" Unbreakable Enterprise KernelではデフォルトとなっているdeadlineI/Oスケジューラのパフォーマンスをチェックしておきます。 今回のテストの結果では、平均のレスポンスタイムが22msとなってい...

SSDでのOLTP性能

前回、HDDを使ったOLTPとHDD + SSD(Smart Flash Cache)のパフォーマンス比較を行ないましたが、せっかくなので、SSDにデータを配置した場合のパフォーマンスも計測してみます。 結果は、当然ながら最速となりました。 ベンチマークの結果) 平均のTPMで17822、最高のTPMで20062を記録しました。 ASH Viewerで確認) まず目を引くのはAASの値の低さです。まだまだ、余裕です。今回は、 前回 と条件を合わすため、15セッションでベンチマークを行っていますが、全く余裕でした。 一応、前回同様にUser I/Oの待機イベントの出しておきます。 ここまでのパフォーマンス結果をまとめてみます。ただ、SSDを使用した場合はパフォーマンス限界まで達していないので、ベンチマークでの平均レスポンスタイムを示しておきます。

Flash Cacheのデバイスが壊れたら

先日 、Smart Flash Cacheのテストを行うようテスト環境をセットアップしたのですが、その前からテストで使用する SSDの調子が悪い ことも書いていました。とりあえず、そのままの状態で、Smart Flash Cacheをテストしてみます。まず、テストを始める前に、Smart Flash Cacheが有効になっているか、軽く確認してみることにします。 簡単なSQLを実行して、パフォーマンスを比較、(そもそもエラーにならないか確認)してみます。 set timing on select * from soe.order_items; 細かいテストは次回以降で見ていくとして、ざっくりエラーは発生しません。しかし、パフォーマンスが尋常ではないくらい悪い。何かあるはずだと、アラートログを確認してみます。 ORA-27072: File I/O error Linux-x86_64 Error: 5: Input/output error Additional information: 4 Additional information: 1287652 Additional information: -1 flash cacheへのアクセスに失敗したので、Smart Flash Cache機能を無効にして、通常のBuffer Cacheのみの動作をしているようです。なので、かなり、パフォーマンスが悪化していたのだと思います。 このままでは、どうにもならないので、新たにSSDを調達しました。 今回、調達したSSDは CFDのCSSD-S6M64NMQ にしました。 前回、使用していたreal SSDと同じものですが、128GBを64GBにして構成しています。 とりあえず、これで、テストに支障はないようです。次からしっかりテストします。