Adam Wead
2009-Apr-30 18:08 UTC
[Xen-users] Increasing network performance on Windows DomUs
Hi all, I''m preparing to deploy some Windows servers under Xen on Red Hat 5 and would like to maximize network performance. I''ve been looking over some previous posts and it looks like the present situation is this, and please do correct me if I''m wrong: - Windows guests get slower network performance than their Dom0''s because of the fully-virtualized hardware (HVM) - Assigning the Dom0 and DomU its own processor core can improve this slightly - It''s possible to use Windows paravirtual (PV) drivers from XenExpress or other commercial products, but they will only work with commercial versions of Xen and not open-source ones such as Red Hat''s version If the last point is true, what options are there? If I have a Dom0 machine with lots of NICs, can I assign one of the NICs to my DomU and bypass the whole HVM, network bridge, etc? At this point, I''m only interested in getting one of the windows guests with optimal network speed. For now, I can deal with less-than-optical network performance on my other windows guests, but it would be nice to know all the options. Here are some details about my environment: Dom0 = IBM 3550, Dual-core 3.0 Ghz Xeon DomU = 2 paravirtual linux guests. 1 fully-virtual Windows 2008 Server Right now, an iperf test to a server on the same subnet yields 850 Mb/ s from either Dom0 or one of the linux DomUs, but only about 30 Mb/s from the Windows DomU. Any ideas will be greatly appreciated, and I''m happy to share the results. thanks, ...adam _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Javier Guerra
2009-Apr-30 20:54 UTC
Re: [Xen-users] Increasing network performance on Windows DomUs
On Thu, Apr 30, 2009 at 1:08 PM, Adam Wead <awead@indiana.edu> wrote:> Hi all, > > I''m preparing to deploy some Windows servers under Xen on Red Hat 5 and > would like to maximize network performance. I''ve been looking over some > previous posts and it looks like the present situation is this, and please > do correct me if I''m wrong: > > - Windows guests get slower network performance than their Dom0''s because of > the fully-virtualized hardware (HVM)nitpicking: - HVM isn''t "fully-virtualized hardware", it''s the hardware support (on the CPU) for virtualization. before that was available, it was possible to do fully virtualized hardware (qemu is an example); but it was too slow. HVM lets you have a full set of priviledge rings in a VM, making it far faster than software emulation. - HVM is slower than PV, because the new context switches are slower than usual context switches when crossing rings, and the software is more complex, but it''s not the biggest bottleneck that concerns you. - out-of-the-box systems (usually windows) do run, thanks not only to HVM, but also thanks to a modified qemu process running on Dom0, that receives all the hardware access of an HVM DomU, and does all the device emulation. this emulation is totally done in software, so it''s not as fast as one would wish. - qemu emulated hardware is (on purpose) very generic and a little old, usually IDE drives, and simple network cards. that makes it easy to support a wide variety of systems, but also means that the drivers used by the guest OS have to do a lot of bit-twiddling to make it work. each of these small accesses means a full context switch, limiting performance. - PV drivers help (a lot!) both because the corresponding Dom0 software is far simpler than emulating every detail of a hardware card; but also because there are a lot less context switches per transfer, and also it''s easier to make a single hypercall manage a bigger chunk of data than what old emulated chips can handle. now, to your real question... commercial PV drivers are somewhat expensive, and usually locked to very specific Xen versions; but there''s a version of Open Source drivers, called "GPLPV drivers", thanks to James Harper, a common contributor to this list. they''re not perfect, but several users can report that they work reliably and efficiently. -- Javier _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Fajar A. Nugraha
2009-May-01 03:42 UTC
Re: [Xen-users] Increasing network performance on Windows DomUs
On Fri, May 1, 2009 at 1:08 AM, Adam Wead <awead@indiana.edu> wrote:> - It''s possible to use Windows paravirtual (PV) drivers from XenExpress or > other commercial products, but they will only work with commercial versions > of Xen and not open-source ones such as Red Hat''s version > > If the last point is true, what options are there?Try gplpv : - http://wiki.xensource.com/xenwiki/XenWindowsGplPv/Installing (a little out of date) - http://lists.xensource.com/archives/html/xen-users/2009-04/msg00058.html - http://meadowcourt.org/downloads/ The other option is using stubdom (http://wiki.xensource.com/xenwiki/StubDom) Regards, Fajar _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Fajar A. Nugraha
2009-May-05 03:33 UTC
Re: [Xen-users] Increasing network performance on Windows DomUs
On Tue, May 5, 2009 at 8:13 AM, Adam Wead <awead@indiana.edu> wrote:> Thanks, Fajar, and thanks to Javier for the posts to this thread. > > I was able to install gplpv_chk_wlh_AMD64_0.10.0.55.msi on a new install of > Windows Server 2008 Enterprise, and the network speed did increase. > Previously, with the old drivers, iperf tests reported about 40 Mb/s, now > with the GplPv drivers it''s about 140 Mb/s, and the NIC on the guest > actually says it''s running at gigabit speed. Not bad.Ehm, you didn''t say that you''re running Windows 2008 x64. BE CAREFUL. When not installed correctly, it can cause disk corruption. Please check : - how many disks you have now? If previously you have one (c:) but now suddenly you have two (c: and d:) wit the same content, then most likely your disk is corrupted already - open device manager. Which NIC is active? Is it Realtek, or is it the Xen Net?>From my experience I had to do some specific setup (not simply click"Next" and reboot) to get it working correctly. If you had it working correctly, great! Just to be safe though, you should check the above.> > The Shutdown Monitor also installed automagically, and now the guest > restarts gracefully... Thank you, James Harper! > > Now, if I can only figure out how to sign the driver so I don''t have to go > through that annoying process of disabling driver signature enforcement. > I''d love to hear anyone''s experiences with that. It seems all I need is > the signtool on Windows, but I can''t figure out how to actually get that. > > Any suggestions are appreciated.Again, from experience, testsigning doesn''t work correctly with GPLPV. Or rather, disk driver works but NIC driver doesn''t. I suggest you use Ready Driver Plus (try Google for it). Basically it automate some key press to select "disable driver signing enforcement" on every boot. Regards, Fajar _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users
Adam Wead
2009-May-05 17:06 UTC
Re: [Xen-users] Increasing network performance on Windows DomUs
On May 4, 2009, at 11:33 PM, Fajar A. Nugraha wrote:> On Tue, May 5, 2009 at 8:13 AM, Adam Wead <awead@indiana.edu> wrote: >> Thanks, Fajar, and thanks to Javier for the posts to this thread. >> >> I was able to install gplpv_chk_wlh_AMD64_0.10.0.55.msi on a new >> install of >> Windows Server 2008 Enterprise, and the network speed did increase. >> Previously, with the old drivers, iperf tests reported about 40 >> Mb/s, now >> with the GplPv drivers it''s about 140 Mb/s, and the NIC on the guest >> actually says it''s running at gigabit speed. Not bad. > > Ehm, you didn''t say that you''re running Windows 2008 x64. BE CAREFUL. > > When not installed correctly, it can cause disk corruption. > Please check : > - how many disks you have now? If previously you have one (c:) but now > suddenly you have two (c: and d:) wit the same content, then most > likely your disk is corrupted alreadyNo, I''m still at one disk.> - open device manager. Which NIC is active? Is it Realtek, or is it > the Xen Net?When I first installed the GplPV drivers, both the Realtek and the Xen Net Device driver were active, the latter appearing as Local Area Connection 2. I disabled the Realtek connection and activated the Xen driver. All seems well after a couple of reboots. I could go ahead and remove the Realtek driver completely, but maybe it''s a good idea to keep it around in case the other goes haywire?> > From my experience I had to do some specific setup (not simply click > "Next" and reboot) to get it working correctly. > If you had it working correctly, great! Just to be safe though, you > should check the above.Thanks for the caveat. Other than the disabling/enabling of the drivers, it was pretty simple, but I will keep an eye on it.> >> >> The Shutdown Monitor also installed automagically, and now the guest >> restarts gracefully... Thank you, James Harper! >> >> Now, if I can only figure out how to sign the driver so I don''t >> have to go >> through that annoying process of disabling driver signature >> enforcement. >> I''d love to hear anyone''s experiences with that. It seems all I >> need is >> the signtool on Windows, but I can''t figure out how to actually >> get that. >> >> Any suggestions are appreciated. > > Again, from experience, testsigning doesn''t work correctly with GPLPV. > Or rather, disk driver works but NIC driver doesn''t. I suggest you use > Ready Driver Plus (try Google for it). Basically it automate some key > press to select "disable driver signing enforcement" on every boot.Great. Testsigning looks to be a pain anyway. I''ll give that a try. Thanks again for the help. It''s very appreciated! best, ...adam _______________________________________________ Xen-users mailing list Xen-users@lists.xensource.com http://lists.xensource.com/xen-users