Performance of "kirqd" in SMP Internet Server

From: Eunsung Kim
Date: Fri Sep 12 2008 - 03:00:22 EST

Hi there.

I am looking for improving network interrupt balancing mechanism in SMP
internet server.
So I have analyzed kirqd in Linux kernel and I have done the following
experiment to realize impact of kirqd.


- Server spec.
CPU: AMD Phenom 9550 Quad-Core (each core 2.2 GHz)
Network card: RealTek Gigabit Ethernet
Network driver: R8169 disabled NAPI

- Client spec.
CPU: Intel Pentium 4 CPU 3.20GHz
Network card: Marvell Gigabit Ethernet

- Network
Connected with gigabit switch

- Benchmark tool
Netperf (throughput for TCP_STREAM in 10 mins)

- Comparison (throughput)
1. kernel (smp_affinity of network irq is CPU 0.)
2. kernel enabled kirqd


Experimental result present that there is no difference between 1 and 2.
Both have achieved throughput of about 940 Mbps via the experiment.
Throughput of 1 describes that netperf traffic can't saturate the server
system and then it is normal traffic.

I have thought that kirqd will
- get "good" performance due to removing "receive livelock" of a CPU under
high traffic.
- get "poor" performance due to cache miss under low or normal traffic.

But the result for normal traffic doesn't so.
Is it correct?

I had no idea of how to generate high traffic and couldn't perform it.
How can I generate high traffic to saturate the server system?

I wonder whether my experimental setup is correct or not.
How do I have to configure experiment to discover a strong or weak point of

Please comment on my experiment result and setup, and
tell me the web link if there are experiment materials for the system
performance of kirqd


-- Eunsung

 Eunsung Kim
 PhD candidate
 Distibuted Computing System Laboratory
 School of Computer Science and Engineering
 Seoul National University
 Tel: +82-2-876-2159
 Email: eskim@xxxxxxxxxxxxxxxx

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at