シェルでパイプスループットを測定する


35

データが通過する速度を測定できるシェルコマンドがあるため、パイプ内のコマンドの出力速度を測定できます。代わりに:

$ somecommand | anothercommand

次のようなことができます:

$ somecommand | ??? | anothercommand

そして、スループット統計(バイト/秒)がstderrに出力されると思います。しかし、私は一生その命令が何であったかを思い出すことができません。

回答:


47

cpipeはこれらの目的にはおそらく優れていますが、別の関連プログラムはpv(Pipe Viewer)です。

pvホームページのpvのスクリーンショット

あなたはそれを与える場合は--rateフラグをそれは転送速度が表示されます


それが1つでした!
アレックスB

17

cpipeというユーティリティが必要です

使用法:

tar cCf / - usr | cpipe -vr -vw -vt > /dev/null

出力:

...
  in:  19.541ms at    6.4MB/s (   4.7MB/s avg)    2.0MB
 out:   0.004ms at   30.5GB/s (  27.1GB/s avg)    2.0MB
thru:  19.865ms at    6.3MB/s (   4.6MB/s avg)    2.0MB
... 

2
cpipe... への有効な参照が見つかりませんが、pv同等です。
イヴマーティン

1

Python 2または3とpip(sudo apt-get install python-pip)がある場合、インストールできますtqdm

    python -m pip install tqdm

それから単に:

    somecommand | tqdm | anothercommand

ヘルプが必要な場合は、を実行しtqdm --helpます。それは持っている多くのオプションを。https://github.com/tqdm/tqdmで詳細を読んで提案してください


1

https://askubuntu.com/a/620234で見られるようpvに、少なくとも、スループットが大幅に低下する可能性があることに注意してください。記事はカバーddにリンクされていますが、ポイントはpvあなたのものを遅くすることができるということです。気にしている場合、たとえばテラバイトのデータを転送している場合。


0

すでに実行中のプロセスのファイルアクセスを検査し、進行状況とスループットの推定を表示する新しいツールが利用可能になりました:https : //github.com/Xfennec/cv

あなたの場合somecommandまたはがanothercommand既にで知られているcvように、それを使用して同じように簡単ですwatch cv -wq、あなたが使用する必要があり、さもなければ-c、特にあなたのプロセスを監視するためのオプションを。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.