まず、私の悪い英語を申し訳ありません。マルチプロセッサ用のCPUがアイドル状態で安定しています
私はUbuntuサーバーでmpstatツールを使用して毎秒cpu percent idleの値を表示しています。クライアント側では、毎秒UDPリクエストを送信しようとしましたが、リクエスト数は60秒ごとに増加しています。サーバーは8つのコアを使用していますが、mpstatの結果はアイドル状態の減少です(100%→安定化率80%)。私は合計CPU使用量を(100%からアイドル状態を引いたもの)とみなします。サーバーで実行されるソフトウェアはROOTとして実行されます(私はmpstatで%パラメータを使用できません)
しかし、私は負荷を増やすので、CPU使用率が80%アイドル状態。これは正しい仮定ですか?私はパフォーマンスに関するOSの動作についての参考文献を参照しようとしましたが、100%から80%にジャンプした後、何故ロードする数が何であれ安定します。私はこれがサーバー側のソフトウェアが使用するロック機構、したがってそれ以上の増分を達成することができるためだと仮定します。
は、任意のポインタのお願い申し上げます。..
Kosmulki:はい、あなたは正しいです。毎秒udpパケットを送信するインターフェイスをログに記録しようとしました。意図は、5000のUDPパケットでサーバーをロードすることでしたが、私が得た数は約1000パケット/秒であり、送信側の観点からその時点で安定していることがわかりました。だからあなたが言及したことに基づいて、私は代わりにTCPを使用する必要がありますか?または? – heike
notherなことは、実際にサーバーを約50パケット/秒で実際にロードすると、アイドル状態は実際にはまだ約80%です(どちらも5000パケット/秒を送信する場合と同じです)。これは理にかなっていません。使用しているインターフェイスがギガビットイーサネットであるため、より多くのパケットを処理できるようになり、約20パケット/秒が飽和しないようにしてください。 – heike
TCPソケットを使用しようとしました。同じパターン。実際には違いはありませんが、まだアイドル状態の80%を占めています。 – heike