BenchQuorum
ワークフロー

ディスク速度テスト:再現できる実行を順番に

03
シナリオ

自分のドライブと回線を確認する

ディスク速度テストは、大きなファイルでのシーケンシャル速度と、多数の小さな読み書きでのランダム速度を測ります。この2つは別の数値です。このガイドでは、まず自分のドライブを、次にルーターをpingで確認し、どちらも記録します。CPUベンチマークの比較サイトに載っているのは他人のハードウェアと設定だけなので、自分で記録した実行のほうが重要です。

01

作業フォルダーを開く

スクリプトと結果を置くフォルダーを選びます。ファイルツールはその中でだけ動作します。

02

テストを説明する

どのドライブか、テストファイルの大きさ、何回実行したいかを伝えます。記録する設定も指定します。

03

各ステップを承認する

Ask firstモードでは、OKを押す前に各カードを読みます。ファイルの書き込みはすべてdiffとして表示されます。

04

結果を確認する

記録された数値をコンソールの出力と自分で突き合わせ、もう一度実行してばらつきを確認します。

例:bench.pyの計測パターン

bench.py
import time

def work():
    total = 0
    for i in range(1000000):
        total += i * i % 7
    return total

work()  # warm-up call, not timed
runs = []
for n in range(5):
    start = time.perf_counter()
    work()
    runs.append(time.perf_counter() - start)
runs.sort()
print("median seconds:", runs[2])

bench.pyはCPUの計測の例で、ディスクテストにも使い回せるパターンを示しています。ウォームアップの呼び出しを1回、計測を5回、そして中央値です。ネットワークは使わず、ファイルも書き込みません。

初心者向けの2つの確認

大きなファイルでドライブをテストする

ディスクのベンチマーク結果を読む前に、テストファイルのサイズを確認します。RAMやキャッシュより大きくする必要があり、そうでないとドライブではなくキャッシュを測ってしまいます。使っているディスクテストのコマンドをエージェントに伝えるか、短いPythonスクリプトを書いてもらい、何かを実行する前にdiffを読みます。その後、Shellが実行して終了コードを報告します。シーケンシャル速度とランダム速度は別々の数値として記録し、終わったらテストファイルを削除し、重要なデータの唯一のコピーが入っているドライブは決してテストしないでください。実行を5回繰り返し、中央値を自分で確認します。

PCとルーターの間のネットワーク遅延をテストする

遅延とは、小さなメッセージの往復時間のことです。エージェントに、ルーターまたは自分のサーバーのアドレスを付けてping -n 20を実行してもらうと、Shellが時間を表示します。次にwrite_fileがそれをlatency.txtとして保存し、grepが時間を含む行を取り出します。経路のホップを見たい場合は、同じアドレスでtracertを追加してください。トラフィックは小さく短くし、自分が所有していないサーバーには決して向けないでください。同じ確認を数日間繰り返すと、遅延がどう変わるかが分かります。pingが示すのは実行した瞬間の往復時間だけで、VPSが稼働し続けたかどうかは分かりません。そのため、VPSの稼働時間のベンチマークにはこの確認以上のものが必要です。今日のファイルを以前のファイルと比べ、数値は自分で確認してください。

Windows用BenchQuorum

小さな1回の実行から始める

BenchQuorumをダウンロード ↗