測定すること:CPUのパフォーマンスとCPUがパケット処理に割り当てられる時間
測定方法:topコマンドを用いてCPUのパフォーマンスを測る。また、10秒間TCPストリーム又はping pongパケットを送信し、受信側のパケット処理を行うプロセスで時間を計り、CPUが10秒間にどのくらいパケット受信処理に割り当てられたかを比較する。
このプロジェクトから学べること:Linuxカーネルにおけるパケット処理、割り込み処理
スケジュール:
- Final approval of projects,
implementation begins: May 26 - Weekly reviews begin: June 2
- Implemention finishes: June 15
- Mid-term progress review, evaluation begins: June 16
- Final evaluation of projects (face-to-face): July 14-23

This idea of trying to understand interrupt coalescing is fine, but I'm not sure that you have proposed how to accurately measure it yet.
返信削除First, you need to confirm that you have hardware available that supports coalescing!
In measuring the performance, you need to plan to vary the rate at which packets arrive. Using some simple packet generator that can produce 1 packet/sec, 10 packets/sec, ... 10,000 packets/sec., up to total flooding.
Do you have a mechanism for counting the interrupts? Do you have a mechanism for counting the CPU time used?
This is a good idea, but doing good measurements will be harder than you think...
頑張れ。
Also, take a look at netperf, and ideally you should monitor the traffic using a third computer running wireshark or tcpdump. This needs to be run on an isolated system.
返信削除One of the key questions to determine will be at what packet rate interrupt coalescing takes place (how many seconds between packets?). The other is how much of a positive effect it has on high-bandwidth operations.
Simple ping-pong through a TCP connection won't be fast enough to test coalescing well.