Blocknetマイナーの性能を測定する方法

· 4 分で読めます

seineの内蔵ベンチマークで自分のマシンを測定し、後で比較できる記録を残します。本記事は公開版v0.2.36とCPUのみの例を使い、新しいハードウェア測定結果は提示しません。まずセットアップガイドで導入してください。既存の測定と条件はハードウェアガイドにあります。

seineをどうベンチマークしますか?

簡単な答え

--benchでバックエンドと測定モードを選び、ウォームアップを加えてJSONを保存します。1設定を変える前に、同じ処理を比較可能な条件で繰り返します。プールやデーモンは不要です。通常のマイニングに戻ったら承認済みシェアを別途確認します。

ウォームアップの後に3回の測定とレポート保存が続き、別の構成も同じ手順を繰り返します。

一定の開始条件を用意する

バージョン、OS、正確なCPU型番、利用可能なRAM、コマンドを記録します。NVIDIAを含めるならGPU型番とドライバーも記録します。バックグラウンド負荷をそろえ、一方のテスト中だけゲーム、コンパイル、別のマイナーを動かさないようにします。

CPUの基準値、スレッド数、メモリページのどれを調べるか決めます。試す変数以外のCPU配置、電源、メモリ設定は固定します。RAMガイドと巨大ページガイドで準備を確認し、要求したページモードと実際に得られたモードの両方を記録します。

CPUテストを実行してレポートを保存する

展開したマイナーのディレクトリで、最初のコマンドはLinux/macOS、次はWindows PowerShell用です。どちらもCPUのみのbackend、ウォームアップ1回、測定3回を選び、各回20秒を要求します。出力先は作業ディレクトリからの相対パスです。毎回別のファイル名を使います。

./seine --bench --bench-kind backend --backend cpu --bench-secs 20 --bench-rounds 3 --bench-warmup-rounds 1 --bench-output cpu-baseline.json
.\seine.exe --bench --bench-kind backend --backend cpu --bench-secs 20 --bench-rounds 3 --bench-warmup-rounds 1 --bench-output cpu-baseline.json

スレッド数と計算カーネルは自動選択のままです。準備や調整に時間がかかり、開始済みの処理が指定時間後に終わる場合もあります。cpu-baseline.jsonの書き込み完了を待ちます。ウォームアップは測定集計に入りません。全体は4区間より長くなることがあり、20秒はコマンド全体の実行時間ではありません。

レポートでは何を読みますか?

集計速度より先にモード、実際の設定、各回を確認します。JSONにはavg_hps、median_hps、min_hps、max_hps、runsと構成・環境情報が含まれます。最大値だけ転記せず原本を残します。フラグ資料に出力と基準比較の説明があります。

ハッシュレートは1秒に完了した仕事です。数える仕事と経過時間の定義をそろえます。実測時間と回ごとのばらつきを見てください。単発のピークでは全体を表せません。変動が大きければ条件を安定させるか測定を長くします。結果を共有するときは構成も示します。

1つの変更を反復ペアで比較する

元の構成をA、変更後をBとします。A、Bの順に実行してペアを繰り返し、先に実行する側を交替します。時間とウォームアップ方針は固定します。cpu-a-1.jsonとcpu-b-1.jsonのように別々に保存すると、順序や環境の影響を見つけやすくなります。

キャッシュ方針もそろえます。新しい調整データでの初回起動と、保存済み選択を使う再起動は別の問いです。普段のデータディレクトリは残し、新規状態の比較には別のテスト用ディレクトリを使います。自動調整ガイドに再利用の説明があります。--threadsは調整動作を変えるため、その選択を記録します。

なぜ測定モードを合わせる必要がありますか?

backendはマイニングバックエンド、kernelはハッシュ計算経路を測ります。kernel-effectiveはライフサイクル時間とバックエンドのターゲット・評価経路を含みます。同じマシンでも範囲が異なります。速度にはモードを添え、単位が同じだけで同等の測定とみなさないでください。

end-to-endはより多くのマイニングライフサイクルを含みます。バージョンと時間指標の意味もそろえます。ベンチマークラボ資料はペア実行、環境記録、互換性確認を説明しています。小さな差が判断を左右する場合に使い、最速だけでなく全実行を残します。

マイニングに戻って有効な仕事を確認する

テスト終了後、意図したアドレスとデータディレクトリで通常のコマンドを起動します。ダッシュボードのデバイス行と承認済みシェアを確認します。ベンチマークはローカル性能、シェアは接続と仕事の配送を確認します。日常設定の記録には両方を含めます。

プールのハッシュレートは時間をかけて届くシェアからの推定で、短いローカルテストとは別の観測です。プール追跡ガイドで計上を確認します。バージョン、コマンド、マシン、メモリ・ページ、キャッシュ、背景条件、全JSONを保存すると再現しやすくなります。

よくある質問

seineのベンチマークはプールにシェアを送信しますか?

いいえ。--benchは通常のマイニングの代わりにローカルテストを実行するため、プールもデーモンも不要です。選択したローカル処理を測定します。接続と承認済みシェアは、その後の通常セッションで別途確認してください。

最初はどのモードを使いますか?

選択したバックエンドを実用的に確認するにはbackendから始めます。比較時はモード、バージョン、設定をそろえます。Kernel、kernel-effective、end-to-endは測定範囲が異なるため、ハッシュレートとともにモードと時間情報を保存してください。

2回の実行を比較可能にするには?

同じマシン、バージョン、バックエンド、メモリ、バックグラウンド負荷、キャッシュ方針を使います。一度に1設定を変え、両構成を順序を替えて反復し、すべてのレポートを保存します。短い1回だけでは小さな差を立証できません。