|
|
|
|
|
|
|
|
|
|
xen-devel
[Xen-devel][Pv-ops][PATCH] Netback multiple tasklet support
Current netback uses one pair of tasklets for Tx/Rx data transaction. Netback
tasklet could only run at one CPU at a time, and it is used to serve all the
netfronts. Therefore it has become a performance bottle neck. This patch is to
use multiple tasklet pairs to replace the current single pair in dom0.
Assuming that Dom0 has CPUNR VCPUs, we define CPUNR kinds of tasklets
pair (CPUNR for Tx, and CPUNR for Rx). Each pare of tasklets serve specific
group of netfronts. Also for those global and static variables, we duplicated
them for each group in order to avoid the spinlock.
Test senario:
We use ten 1G NIC interface to talk with 10 VMs (netfront) in server. So the
total bandwidth is 10G.
For host machine, bind each guest's netfront with each NIC interface.
For client machine, do netperf testing with each guest.
Test Case Packet Size Throughput(Mbps) Dom0 CPU Util Guests
CPU Util
w/o patch 1400 4304.30 400.33% 112.21%
w/ patch 1400 9533.13 461.64% 243.81%
BTW, when we test this patch, we found that the domain_lock in grant table
operation becomes a bottle neck. We temporarily remove the global domain_lock
to achieve good performance.
Best Regards,
-- Dongxiao
0001-Netback-multiple-tasklets-support.patch
Description: 0001-Netback-multiple-tasklets-support.patch
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- [Xen-devel][Pv-ops][PATCH] Netback multiple tasklet support,
Xu, Dongxiao <=
|
|
|
|
|