xen-devel
RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver
To: |
James Harper <james.harper@xxxxxxxxxxxxxxxx>, <paul.durrant@xxxxxxxxxx> |
Subject: |
RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver |
From: |
MaoXiaoyun <tinnycloud@xxxxxxxxxxx> |
Date: |
Mon, 14 Mar 2011 10:44:38 +0800 |
Cc: |
xen devel <xen-devel@xxxxxxxxxxxxxxxxxxx> |
Delivery-date: |
Sun, 13 Mar 2011 19:45:34 -0700 |
Envelope-to: |
www-data@xxxxxxxxxxxxxxxxxxx |
Importance: |
Normal |
In-reply-to: |
<AEC6C66638C05B468B556EA548C1A77D01C55F28@trantor> |
List-help: |
<mailto:xen-devel-request@lists.xensource.com?subject=help> |
List-id: |
Xen developer discussion <xen-devel.lists.xensource.com> |
List-post: |
<mailto:xen-devel@lists.xensource.com> |
List-subscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe> |
List-unsubscribe: |
<http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe> |
References: |
<BLU157-w6170D9B9C6DC4E4CF04C2FDAC90@xxxxxxx>, <D271C3A4-9B27-4E08-A92A-D55A811736EC@xxxxxxxxxxxxxxxx><BLU157-w82233DE21FFA3AC07FCC3DAC90@xxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55DCB@trantor><BLU157-w58A3CAD3FBB61D96ABE7CCDAC90@xxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55DCF@trantor><BLU157-w54789B64D3FF1F57924AD2DAC80@xxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55E87@trantor>, <291EDFCB1E9E224A99088639C47620228E936E1A88@xxxxxxxxxxxxxxxxxxxxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55E8E@trantor>, <291EDFCB1E9E224A99088639C47620228E936E1A9A@xxxxxxxxxxxxxxxxxxxxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55E91@trantor>, <291EDFCB1E9E224A99088639C47620228E936E1AA0@xxxxxxxxxxxxxxxxxxxxxxxxx> <BLU157-w40A631DA58C4F38FA6AC09DACB0@xxxxxxx>, <AEC6C66638C05B468B556EA548C1A77D01C55F28@trantor> |
Sender: |
xen-devel-bounces@xxxxxxxxxxxxxxxxxxx |
Do you mean if we discard KeSetTargetProcessorDpc(&xi->rx_dpc, 0) , the interrupts
will be processed across on different VCPUS, but will cause serious performance issue?
Where could I find the releated docs?
So actually we need do KeSetImportanceDpc(&xi->rx_dpc, HighImportance) to solve
ping problem. Though performance is not the best, but it should not decrease, right?
many thanks.
> Subject: RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver > Date: Mon, 14 Mar 2011 11:45:46 +1100 > From: james.harper@xxxxxxxxxxxxxxxx > To: tinnycloud@xxxxxxxxxxx; paul.durrant@xxxxxxxxxx > CC: xen-devel@xxxxxxxxxxxxxxxxxxx > > > > > I've just pushed a bit of a rewrite of the rx path in gplpv. It's not > > particularly well tested yet but I can't get it to crash. It should > scale much > > better with SMP too. I'm using more lock free data structures so the > lock's > > are held for much less time. > > > > Unfortunately performance still isn't good. What I've found is that NDIS > really does want you to only process packets on one CPU at one time (eg > CPU0), otherwise they are indicated to NDIS out of order causing serious > performance problems (according to the docs). >
> In addition to KeSetTargetProcessorDpc(&xi->rx_dpc, 0), we also need to > do KeSetImportanceDpc(&xi->rx_dpc, HighImportance) - as Paul stated, > which makes sure the DPC runs immediately even if it is triggered from > another CPU (I assume this has IPI overhead though). I think I could > detect >1 CPU's and schedule the rx and tx onto different CPU's to each > other, but always the same CPU. >
> Windows does support RSS which ensures per-connection in-order > processing of packets. From reading the "Receive-Side Scaling > Enhancements in Windows Server 2008" document, it appears that we would > need to hash various fields in the packet header and compute a CPU > number for that connection, then schedule the DPC onto that CPU. It > shouldn't be that hard except that xennet.sys is an NDIS5.1 driver, not > an NDIS6.0 driver, and in order to support NDIS6.0 I would need to > maintain two trees which I'm reluctant to do without a very good reason. > Other docs state the RSS is supported for Windows 2003 SP2 but I can't > find any specifics - I've asked the question on the ntdev list. > > James
|
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|
<Prev in Thread] |
Current Thread |
[Next in Thread>
|
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, (continued)
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, MaoXiaoyun
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, James Harper
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, James Harper
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver,
MaoXiaoyun <=
- RE: [Xen-devel] RE: Rather slow time of Ping in Windows with GPL PVdriver, James Harper
- RE: [Xen-devel] RE: Rather slow time of Ping in Windows with GPL PVdriver, MaoXiaoyun
- RE: [Xen-devel] RE: Rather slow time of Ping in Windows with GPL PVdriver, James Harper
- RE: [Xen-devel] RE: Rather slow time of Ping in Windows with GPL PVdriver, Paul Durrant
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, Paul Durrant
- RE: [Xen-devel] RE: Rather slow time of Pin in Windows with GPL PVdriver, James Harper
|
|
|