netatalk.io

Netatalk 4.5.0

名前

afp_speedtest — シンプルなAFPファイル転送ベンチマークツール

概要

afp_speedtest [-1234567acDeiLTVvy] [-h host] [-p port] [-s volume] [-P path] [-S volume2] [-u user] [-w password] [-n iterations] [-W warmup] [-t delay] [-d size] [-z sizes] [-q quantum] [-r requests] [-F file] [-f test]

説明

afp_speedtest は、読み取り、書き込み、コピー、またサーバーサイドコピー操作のための AFP ベンチマークテストスイートである。 2つのモードで動作できる:

このツールは、包括的なパフォーマンス分析をサポートしている:

オプション

-1 : AFP 2.1プロトコルバージョンを使用する

-2 : AFP 2.2プロトコルバージョンを使用する

-3 : AFP 3.0プロトコルバージョンを使用する

-4 : AFP 3.1プロトコルバージョンを使用する

-5 : AFP 3.2プロトコルバージョンを使用する

-6 : AFP 3.3プロトコルバージョンを使用する

-7 : AFP 3.4プロトコルバージョンを使用する

-a : 書き込み後にディスクにフラッシュしない

-c : CSV出力モード(自動的に統計と静かなモードを有効にする)

-d size : ファイルサイズ (MB、デフォルト: 64 MB、指定しない場合はデフォルトのサイズスイープ)

-D : ローカルモードでO_DIRECTを無効にする(現実的なAFP比較のためにデフォルトで自動的に有効) : カーネルページキャッシュを使用してバッファードI/Oパフォーマンスをテストするためにこのフラグを使用する : AFPモードでは無視される(O_DIRECTは適用されない)

-e : スパースファイルを使用する

-f tests : 実行するテストのカンマ区切りリスト:Read、Write、Copy、ServerCopy(デフォルト: Write) : 注意:ServerCopyはAFPサーバーが必要なため、ローカルモードでは自動的にスキップされる

-F ファイル : ボリュームのルートフォルダ内の既存のファイルから読み取る(デフォルト: 一時ファイルを作成する)

-h host : サーバーのホスト名またはIPアドレス(デフォルト: localhost、ローカルモードでは無視される)

-i : 対話型モード – 各テストの前にユーザーにプロンプトを表示する(デバッグ専用)

-L : ローカルモード – AFPプロトコルの代わりに直接ファイルシステムI/OのためのPOSIX呼び出しを使用する : ディレクトリパスを指定するために-Pと組み合わせて使用する必要がある : ネットワーク/プロトコルのオーバーヘッドなしのベースラインパフォーマンス測定を提供する

-n 回数 : 実行するテスト反復回数(デフォルト: 1) : 1より大きい場合、自動的に統計出力を有効にする

-p port : サーバーポート番号(デフォルト: 548、ローカルモードでは無視される)

-P path : ローカルモードテスト用のディレクトリパス(-Lを使用する場合に必要)

-q size : パケット/バッファサイズ(KB、デフォルト: AFPモードでは検出されたサーバー量子、ローカルモードでは1024 KB)

-r number : 並列I/O操作のための未処理のパイプライン化されたリクエストの数(デフォルト: 1) : より高い値は、複数の進行中のAFPリクエストを許可し、高遅延接続でのスループットを向上させる : 注意: 値 > 1 は慎重なチューニングが必要であり、すべてのシナリオで利益があるとは限らない

-s volume : テスト用にマウントするボリューム名(AFPモードのみ、ローカルモードでは無視される)

-S ボリューム名 : テスト用の2番目のボリューム名(AFPモードのみ、クロスボリュームコピーのテスト用)

-t seconds : テスト反復間の秒数での遅延(デフォルト: 0) : 反復間のクールダウンや実際の使用パターンのシミュレーションに便利

-T : 統計を表示する(平均、中央値、標準偏差、最小、最大、P95) : 反復回数 > 1 またはサイズスイープを使用する場合に自動的に有効になる

-u user : AFPサーバーの認証用のユーザー名(デフォルト: 現在のuid、ローカルモードでは無視される)

-v : 詳細出力

-V : 超詳細出力

-w password : AFPサーバーの認証用のパスワード(ローカルモードでは無視される)

-W warmup : 統計から除外されるウォームアップランの数(デフォルト: 1) : ウォームアップランは [W#] プレフィックスでマークされ、統計には含まれない

-y : 実行ごとに新しいファイルを使用する(デフォルト: 同じファイル名を再利用)

-z sizes : ファイルサイズスイープモード – MB単位のサイズのカンマ区切りリスト : 例: -z 0.004,0.008,0.016,0.032,0.064,0.128,0.256,0.512,1,2,4,8,16,32,64,128,256,512 : 最小: 0.004 MB (4 KB)、最大: 1024 MB : -d-zも指定されていない場合、デフォルトの18サイズスイープを使用: 4KB,8KB,16KB,32KB,64KB,128KB,256KB,512KB,1MB,2MB,4MB,8MB,16MB,32MB,64MB,128MB,256MB,512MB

設定

テストランナーの AFP クライアントは現在 ClearTxt UAM のみをサポートしている。netatalk の afp.conf で UAM を設定する。

[Global]
uam list = uams_clrtxt.so

出力モード

テキストモード(デフォルト)

以下を含むフォーマットされたテーブルを表示する:

CSVモード(-c

データ分析のための3つのCSVテーブルを生成する:

  1. テストデータテーブル: 個々の反復結果(test_name、iteration、file_size_mb、microseconds、throughput_mbs)
  2. ファイルサイズサマリーテーブル: ファイルサイズごとの集計統計(平均、中央値、最小、最大のスループットとタイミング)
  3. TCPメトリクス進化テーブル(AFPモードのみ): すべてのテストにおける初期 vs 最終 TCP メトリクス

AFPモードの例

4つのAFPベンチマークテストを5回の反復を実行する:

afp_speedtest -h 10.0.0.10 -s speed1 -u myuser -w mypass -n 5 -f Read,Write,Copy,ServerCopy

64 MB の書き込みテストを一回実行する:

afp_speedtest -h 10.0.0.10 -s speed1 -u myuser -w mypass -d 64 -f Write

ファイルサイズスイープを実行し、サイズごとに10回の反復を行い、CSVにエクスポートする:

afp_speedtest -h 10.0.0.10 -s speed1 -u myuser -w mypass -n 10 -c -f Read,Write > results.csv

ローカルモードの例

ベースラインのファイルシステムパフォーマンスを5回の反復で測定する:

afp_speedtest -L -P /mnt/fast_disk -n 5 -f Read,Write,Copy

ローカルモードでカスタムファイルサイズスイープを実行する:

afp_speedtest -L -P /tmp/test -z 1,4,16,64,256 -n 3 -f Read,Write

ローカルモードでバッファードI/O(O_DIRECT無効)とCSV出力を使用する:

afp_speedtest -L -D -P /mnt/nvme -c -n 10 -f Read,Write > nvme_buffered.csv

ローカルモードでO_DIRECT(デフォルト、AFP比較用)を使用する:

afp_speedtest -L -P /mnt/nvme -c -n 10 -f Read,Write > nvme_direct.csv

出力の例

AFP Speedtest - Configuration
════════════════════════════════════════
 Mode:            Local (Direct Filesystem I/O)
 AFP Version:     N/A (Local)
 Directory:       /tmp/speedtest
 Tests:           Read,Write,Copy
 File Size:       64 MB
 Iterations:      5
 Warmup Runs:     1
 Statistics:      Enabled


===== Test Passes for Read =====
Read quantum 1024 KB, size 64 MB
Warmup: 1 runs, Measured: 5 runs
run   microsec    MB/s
[W1]        11739   5451.91
1        9511   6729.05
2        9700   6597.94
3        9174   6976.24
4        8949   7151.64
5        9050   7071.82

===== Statistics for Read =====
File Size:      64 MB
Iterations:     5
Mean:           9277 μs (6898.93 MB/s)
Median:         9174 μs (6976.24 MB/s)
Std Dev:        284 μs (3.06%)
Min:            8949 μs (7151.64 MB/s)
Max:            9700 μs (6597.94 MB/s)

関連項目

afp_lantest(1), afpd(8)