一般的なSSDの場合、読み書きパフォーマンスが幾つかの理由から低下してしまうことがある。パフォーマンスを高める仕組みと併せて、パフォーマンス低下の主な原因を2つ解説する。
SSDはHDDに比べてデータ読み書きのパフォーマンスに優れるストレージだが、一般的なSSDの場合は本来の能力を引き出せずに読み書きパフォーマンスが低下してしまうことがある。SSDのパフォーマンスを高める仕組みと併せて、何がSSDのパフォーマンス劣化を招く原因になるのかを解説する。
一般的なSSDの場合、コントローラーが内部の制御を自動で実行するため、ユーザーがパフォーマンスを細かく最適化することはできない。それに対して「Open-Channel SSD」は、コントローラーではなくホストマシン(サーバ)のOSが制御タスクの一部を担うことで、パフォーマンスの最適化が可能になる。
ここでは「ガベージコレクション」と「スケジューリング」を例にして、SSDのパフォーマンスが落ちる原因と、それを解消するOpen-Channel SSDの仕組みを見てみよう。
ガベージコレクションとは、部分的に使用されている複数のブロック(データの記録領域をまとめた単位)から有効なページ(データの記録領域をまとめた単位)を別のブロックに移動し、元のブロックを消去することで、NAND型フラッシュメモリ(SSDの記録媒体)のブロックを解放する仕組みだ。ガベージコレクションにより、新しく書き込むデータ用の空き容量を確保できる。
Open-Channel SSDでホストマシンがガベージコレクションを制御する場合、ガベージコレクションのために許容できるタイミングを、アプリケーションがホストマシンに通知する。これにより、ガベージコレクションがアプリケーションのパフォーマンスに与える影響を最小化できる。
ガベージコレクションは、SSDの処理に過度に干渉しないようにバックグラウンドで実行する。しかし、一般的なSSDでは、ガベージコレクションが通常の処理の妨げになることが多い。一般的なSSDではコントローラーがホストマシンからのアクセスパターンを把握できないため、最適なタイミングを推測してガベージコレクションを実行する必要がある。
Open-Channel SSDでは、アプリケーションがワークロードの変化をホストマシンのスケジューラーに事前に通知できる。ワークロードの変化の例としては以下がある。
アプリケーションがしばらくアイドル状態になる予定がある場合にも、アプリケーションはスケジューラーに通知できる。アイドル状態の間にバッファ(一時的な記憶領域)からデータをNAND型フラッシュメモリに書き込んだり、ガベージコレクションを実行したりできる。
一般的なSSDでは、ホストマシンがアプリケーションを実行する。その間、SSDのコントローラーはホストマシンからのランダムなアクセスリクエストの合間に、さまざまな制御タスクを処理するタイミングを見つける必要がある。制御タスクとしては例えば以下がある。
これらの制御タスクは、同じNAND型フラッシュメモリで実行中のアプリケーションからの読み書きタスクと干渉する。ホストマシンのアプリケーションの動作とSSD内の制御タスクが全く連携していないからだ。
一般的なSSDにおいて、この問題に対する解決策は、ホストマシンからのアクセスパターンを推測し、それに合わせたスケジューリングを実行する以外にない。
次回は、Open-Channel SSDの活用状況に焦点を当てる。
米国Informa TechTargetの豊富な記事の中から、さまざまな業種や職種に関する動向やビジネスノウハウなどを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
お知らせ
米国TechTarget Inc.とInforma Techデジタル事業が業務提携したことが発表されました。TechTargetジャパンは従来どおり、アイティメディア(株)が運営を継続します。これからも日本企業のIT選定に役立つ情報を提供してまいります。
TikTokのトレンドに変化 なぜ「1分超え」動画が見られている?
Bufferのデータによると、TikTokでは最近、長めの動画が人気を集めている。
アドビが「10種類のAIエージェント」を発表 顧客体験はどう変わる?
アドビの年次イベント「Adobe Summit 2025」が開催された。初日の基調講演では、アドビの...
「ブランドは叩かれて強くなる」 ジャガーのCMOが語った炎上の乗り越え方
SXSWで開催された「Female Quotient」のイベントにおいて、Jaguar Land Roverの米国CMOは...