ベンチマークでは、常に制限を設定する必要があります。なぜなら、そのLANから100MBを取得することを期待するのであれば、あなたは自分をだますだけだからです!
RaspberryPI Model-Bのこのブロックデザインを見てください
したがって、ここで非常に重要な事実を確立します。イーサネットは、私たちが確立したブロック図から、USBハブに接続されているため、USBコントローラーによってボトルネックになります。(別のバスを使用しているのか、単にUSB2を使用しているのか、明確な兆候はありませんか?)
ああ見て-別のブロック図、
状況がさらに明らかになりました。10/100コントローラーはUSBハブに接続されています-残念ながら、仕様のどこにもハブがLANコントローラーと通信する速度は記載されていません-USB速度とLANがネゴシエートされるという重要な事実を期待してください混合速度のUSB環境向け。
SDカードはどこにありますか?
SDカードはBCM2835(65ページ)に直接接続されており、さまざまな構成レベルからパフォーマンスにどのように影響するかが詳細に説明されています。注目すべき重要な点は、SDカードに専用のクロックがある場合、コアCPU / GPUから独立してフルスピードで実行できることです(使用されているカードと標準にかかわらず、いくつかの標準をサポートしていることがわかります)。
それはどういう意味ですか?
より高速なSDカードと安っぽいペンドライブ(4gb / 8gb)のベンチマークを行うと、パフォーマンスに大きな違いが生じる可能性が高いことを意味します。そこで、この素晴らしい組み込みデバイス(usb / lanチップ)との通信をCPU / GPUがどのように処理し、どの速度で通信できるかという疑問が生じます。
ベンチマークを実際に行う前に、理論が実際にどれだけ遠くまで到達できるかおわかりでしょうか?ここでのもう1つの重要なポイントは、CPUがデータのフローをどのように制御するかです。推奨されているように、個別のクロックチャネルを使用しますか?
理想的な世界では、このLAN / USBで処理できると思います。しかし、それにはMCUが必要です。そのブロック図のどこにでもMCYが表示されますか?いいえ!
したがって、CPUはIO DATAにUSBポートを送信するように要求し、LANポートに(同じUSBハブを介して)はい。
また、USBペンドライブにコピーしたり、SDカードからLAN経由でコピーしたりすると、トラフィックが発生する可能性があることに注意してください。
さまざまな側面をベンチマークする必要があります
ベンチマークしようとしているものを確立する際に、現実世界の質問をすることができます。
- 内部USBはSDからのデータをどのくらい速く処理しますか?
- SDからLANへの読み取り/書き込みに使用されるCPUはどれくらいですか?
- USBペンドライブの読み取り/書き込みに使用されるCPUはどれくらいですか?
- データのコピーはCPU使用率に直接影響しますか?
- 埋め込まれたUSB / LANチップは、2つのソースからLANポートへのデータの読み取りをどの程度処理し、CPUに比例して影響しますか?
- lanがUSBハブのある状態によってボトルネックになっているため、lanが完全な10 mb / sを取得するかどうかをテストする必要はありません。
今、あなたはあなたが何のために戦っているのか知っているので、私は彼らにあなた自身に答えるようにあなたに挑戦します。
これは非常に良い出発点になるかもしれません。
参照資料
が、ほとんど、
自分の組み込みの経験に基づいて、自分の技術的な知識と評価を行いました。OPは非常に良い質問をしましたが、システムの理論的な理解がなければ、実際の問題を評価/解決しようとする運命にあることを理解することはできません。
結果
(4) この答えは、現実的な海賊テストにいくらかを示しています。また、激しいデータトランザクションを行うとCPUに直接影響することが証明されています(SDカードまたはBCMチップ内のデータをUSB / LANチップにシフトするプロセスが不明です)
(6)唯一のボトルネックがソース(たとえば、遅いSDカード)になることが証明されていますUSBハブはデータを90%以上で送り出すことができますが、質問4と5への回答はこのパフォーマンスに直接影響します。
したがって、他のユーザーの調査と貢献を行って、予備的な結果を確立して取得し始めています。
ここに、私たちが扱っているものを視覚化するのに役立つ素晴らしいチャートがあります。
sudo hdparm -t /dev/sdx
参考までに、回答者はベンチマークの有用なツールとして使用できます。