[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] xen-unstable, winxp32 very poor performance on AMD FX-8150, I bisected and changeset is 24770:7f79475d3de7
I ran a bisect to find out when Windows XP 32 bit becomes unusably slow. And I found the changeset that caused it. ========== The problem: ========== Windows 8 64 bit and 32 bit run fast and fine in the newest xen versions. Windows XP 32 bit runs unusably slow in anything new that I built from xen-unstable, but runs fast in 4.1.2 and 4.1.3 stable. While it is running slow, "xm top" or "xl top" show cpu usage around 650% for the domu. The bug might be AMD specific. I'm running an AMD FX-8150. ========== The result: ========== good: 24769:730f6ed72d70 bad: 24770:7f79475d3de7 The change was 8 months ago changeset: 24770:7f79475d3de7 user: Andres Lagar-Cavilla <andres@xxxxxxxxxxxxxxxx> date: Fri Feb 10 16:07:07 2012 +0000 summary: x86/mm: Make p2m lookups fully synchronized wrt modifications ========== My hardware: ========== AMD FX-8150 990 FX chipset Here's a dmidecode: http://pastebin.com/XUZjmiVz ========== My kernel: ========== I compiled the for-linus branch of cmason's linux-btrfs git repo, around August 11th ( git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs.git for-linus ) peter:~/xen # uname -a Linux peter 3.5.0-1-default+ #3 SMP Sat Aug 11 21:30:44 CEST 2012 x86_64 x86_64 x86_64 GNU/Linux Here's the kernel config: http://pastebin.com/1GQbiFZE (only weird thing I set was CONFIG_NR_CPUS=16 for no particular reason; default was 512 or 256) ========== My Windows XP VM config: ========== # grep -vE "^#|^$" windowsxp2 name="windowsxp2" description="None" uuid="292b0651-9913-2459-5cfa-fb828f9c4314" memory=4096 maxmem=4096 vcpus=7 on_poweroff="destroy" on_reboot="restart" on_crash="destroy" localtime=1 keymap="en-us" builder="hvm" device_model="/usr/lib/xen/bin/qemu-dm" kernel="/usr/lib/xen/boot/hvmloader" boot="c" disk=[ 'phy:/dev/data/winxp1_disk1,hda,w', 'file:/var/lib/xen/winxp1_disk2.raw,hdb,w', ] vif=[ 'mac=00:16:3e:4e:c5:0c,bridge=br0,model=e1000', ] sdl=0 vnc=1 vncunused=1 audio=0 soundhw='es1370' viridian=1 usb=1 acpi=1 apic=0 pae=1 usbdevice='tablet' serial="pty" stdvga=1 gfx_passthru=0 # this is an AMD Radeon HD 6770 and it's HDMI audio, and 2 USB ports pci = [ '04:00.0' , '04:00.1' , '00:12.0' , '00:12.2' ] xen_platform_pci=1 pci_msitranslate=1 The Windows 8 32 and 64 bit configs I used are the same except changed mac address, and different disk. Whether or not I use sound or PCI passthrough doesn't (significantly) affect performance. ========== my build process, including how to hack the build so it actually compiles: ========== # Install older libyajl-devel On openSUSE, this would be: zypper install libyajl1-devel # Delete everything (except .hg)... prevents unclean builds from breaking things. make distclean is not enough for very many builds. cd xen-unstable.hg rm -rf * # If you have permission denied errors (caused by running make install as root earlier), make sure to use chown and run rm again, or builds will fail. # Check out the revision hg update --clean "${build}" # hack up a troublesome Makefile that prevents builds vim tools/libxl/Makefile add "-lyajl": at the end of all 4 "$(CC) ..." lines to LIBXL_LIBS to LIBXLU_LIBS to LIBUUID_LIBS (don't know which ones are important... but it works with all of it) make distclean >/tmp/xen.distclean.log 2>&1 ; status=$? ; echo $status if [ -e configure ]; then ./configure else touch .config fi make dist >/tmp/xen.dist.log 2>&1 ; status=$? ; echo $status ========== my install process ========== To install the build, it's important to clean out old lib files... uninstall doesn't get them all. If you miss these, xm, xl, etc. may fail due to shared library issues. Also, "make uninstall" deletes important system files it should not (kernel, kernel modules, vm disks). As it says in the "make help": uninstall - attempt to remove installed Xen tools (use with extreme care!) Here is my process to solve the uninstall issues: http://pastebin.com/nXCavFTp _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |