[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] VGA passthrough and AMD drivers
>>>>>>>> Hi all, >>>>>>>> I have made some tests to find a good driver for FirePro V8800 >>>>>>>> on windows 7 64bit HVM. >>>>>>>> I have been focused on ?advanced features?: quad buffer and >>>>>>>> active stereoscopy, synchronization ? >>>>>>>> The results, for all FirePro drivers (of this year); I can?t get >>>>>>>> the quad buffer/active stereoscopy feature. >>>>>>>> But they work on a native installation. >>>>>>> Can you describe the setup a little more? >>>>>> I?ve got 2 HP Z800 workstation with FirePro V8800, one per computer. >>>>>> >>>>>> It?s a setup used in CAVE system, I try (and its works, minus some >>>>>> issues) to virtualize ?virtual reality contexts? that needs full >>>>>> graphics card features. >>>>>> >>>>>> Intel Xeon E5640 CPU with Intel 5520 chipset >>>>>> >>>>>> cores_per_socket : 4 >>>>>> >>>>>> threads_per_core : 2 >>>>>> >>>>>> cpu_mhz : 2660 >>>>>> >>>>>> total_memory : 4079 >>>>>> >>>>>>> How many graphic cards per guest? >>>>>> One card per guest. >>>>>> >>>>>>> How many guests? On how many hosts? >>>>>> One guest per computer. >>>>>> >>>>> And of course, I just thought of some other questions: >>>>> What version of Xen are you using? >>>>> What kernel are you using in Dom0? >>>> release : 2.6.32-5-xen-amd64 >>>> version : #1 SMP Sun May 6 08:57:29 UTC 2012 >>>> machine : x86_64 >>>> nr_cpus : 8 >>>> nr_nodes : 1 >>>> cores_per_socket : 4 >>>> threads_per_core : 2 >>>> cpu_mhz : 2660 >>>> hw_caps : >>>> bfebfbff:2c100800:00000000:00003f40:029ee3ff:00000000:00000001:00000000 >>>> virt_caps : hvm hvm_directio >>>> total_memory : 4079 >>>> free_cpus : 0 >>>> xen_major : 4 >>>> xen_minor : 2 >>>> xen_extra : -unstable >>>> xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 >>>> hvm-3.0-x86_32p hvm-3.0-x86_64 >>>> xen_scheduler : credit >>>> xen_pagesize : 4096 >>>> platform_params : virt_start=0xffff800000000000 >>>> xen_changeset : Sun Jul 22 16:37:25 2012 +0100 25622:3c426da4788e >>>> xen_commandline : placeholder >>>> cc_compiler : gcc version 4.4.5 (Debian 4.4.5-8) >>>> xend_config_format : 4 >>>> >>>> I will change to a newer version and use xl toolstack when VGA >>>> passthrough will be supported. >>>> >>>>> And just to be clear, there is only Dom0 and one Windows 7 HVM guest on >>>>> each machine? >>>> Yes >>>> >>>>>>>> The only driver that allows this feature is a Radeon HD driver >>>>>>>> (Catalyst 12.10 WHQL). >>>>>>>> But this driver becomes unstable when an application using >>>>>>>> active stereo and synchronization is closed: >>>>>>>> -The synchronization between two computers is lost. >>>>>>>> -The CCC can crash when the synchronization is made again. >>>>>>>> Someone have any clues about this? >>>>>>> I don't know exactly how this works on AMD/ATI graphics cards, >>>>>>> but I have worked with synchronisation on other graphics cards >>>>>>> about 7 years ago, so I have some idea of how you solve the >>>>>>> various problems. >>>>>>> What I don't quite understand is why it would be different >>>>>>> between a virtual environment and the bare-metal ("native") >>>>>>> install. My immediate guess is that there is a timing difference, >>>>>>> for one of two reasons: >>>>>>> 1. IOMMU is adding extra delays to the graphics card reading system >>>>>>> memory. >>>>>>> 2. Interrupt delays due to hypervisor. >>>>>>> 3. Dom0 or other guest domains "stealing" CPU from the guest. >>>>>>> I don't think those are easy to work around (as they all have to >>>>>>> "happen" in a virtual system), but I also don't REALLY understand >>>>>>> why this should cause problems in the first place, as there isn't >>>>>>> any guarantee as to the timings of either memory reads, interrupt >>>>>>> latency/responsiveness or CPU availability in Windows, so the >>>>>>> same problem would appear in native systems as well, given "the right" >>>>>>> circumstances. >>>>>>> What exactly is the crash in CCC? >>>>>>> (CCC stands for "Catalyst Control Center" - which I think is a >>>>>>> Windows "service" to handle certain requests from the driver that >>>>>>> can't be done in kernel mode [or shouldn't be done in the driver >>>>>>> in general]). >>>>>> After the application is closed, I launch the Catalyst Control >>>>> Center, the synchronization state seems to be good. But there is >>>>>> no synchronization. >>>>>> >>>>>> If I try to apply any modifications of synchronization (synchro >>>>>> server or client), CCC freeze and I need to kill it manually. >>>>>> >>>>>> I can set the synchronization back after this. >>>>>> >>>>> This clearly sounds like a software issue in the CCC itself. I could be >>>>> wrong, but that's what I think right now. It would be rather difficult to >>>>> figure out what is going wrong without at least a repro environment. >>>> I've made a bunch of tests this morning: >>>> -CCC crash when I've got two displays: I set one to be the synchronization >>>> server and the other a client at the same time. When I set the server, >>>> apply this configuration and set the client after, it didn't crash. >>>> -If my application (Virtools) crash, synchronization is reset. >>>> -Eyes are sometimes inverted with the same trigger edge. >>>I saw that problem with the product I was working on once or twice. >>>Makes it look really "confusing". This was a settings problem in my case >>>(because I wrote my own "controls", I could set almost every aspect of >>>everything that could possibly be changed, with a very basic command line >>>>>application that interacted pretty straight down to the driver - with the >>>usual caveat of "make sure you know what you are doing" - the normal GUI >>>Control panel setup was much more "you can only set things that make sense >>>>>for you to set"). That is probably not really what your problem is... But >>>could be a configuration of driver or application issue, of course. >>> >>>> >>>> I've got all this behaviors with both HVM and native installation under 7 >>>> 64bits. So I think it's clearly a software issue. >>>> >>>> Next step: 7 32bits. >>>So, this is not a Xen issue... Report it to the ATI/AMD folks! >>> >> Yes, but it doesn't explain why I can't get active stereoscopy with FirePro >> drivers on HVM. > >>>>> Whilst I'm all for using Xen for everything, there are sometimes >>>>> situations when "not using Xen" may actually be the right choice. Can you >>>>> explain why running your guests in Xen is of benefit? [If you'd like to >>>>> answer "none >of >>>your business", that's fine, but it may help to >>>>> understand what the "business case" is for this]. >>>> The objective is to mutualize graphical cluster for immersive systems. >>>> Virtual Reality applications are sensitive in their configurations; it's a >>>> pain to manage multiple users and it's nearly impossible to have different >>>> >configurations for these users. Usually immersive systems are stuck in >>>> one configuration (OS, drivers, applications ...), and only few people are >>>> allowed to change settings. >>>> The idea is to use Xen and VGA passthrough, for create personals >>>> environments that allow every user to make their own configurations >>>> without impacts on others. >>>> >>>> Be able to have VR configurations in virtual machines and to able to run >>>> it with 3D features, is a serious benefit for Virtual Reality users. >>> >>>Thanks for your explanation. Makes some sense, however, I feel that it also >>>makes things more complex - if the system is so sensitive, it may get >>>"upset" simply by having the differences in system behaviour that you >>>>>automatically get from running on a virtual machine vs. "bare metal". >>>Don't let that stop you, I'm just saying there may be issues caused by Xen >>>(or other Virtualisation products) are not quite as transparent as they >>>really should >>be. >>>>> > >> It's not the hardware configurations that is so sensitive but more the >> software configurations and drivers versions. >> I've already made some demonstrations of Xen capabilities in our use case, >> there is no negative feedback. I think that HVM behavior is perfect for our >> uses, except these driver issues. >> >> I found one minor bug (for us), if the first HVM executed (id=1) has the VGA >> card, the computer reboot without logs. >> My workaround is to launch an HVM without VGA first, stop it properly, and >> launch my usual HVM with VGA passthrough. >> I think, it's a bug due to my installation (Xen 4.2.0-unstable). >> >> I just got a new test computer, a Dell Precision T7500 with a V9800 FirePro, >> maybe I will have the time to test something tomorrow! Exactly the same behaviors with this computer. > >Hi, > >My experiences with CCC and vga passthrough aren't great either (bluescreen >most of the time). >It works now with the 12.11 catalyst beta drivers and not installing CCC, but >just installing the driver and opencl packages from the c:\AMD\packages dir >after stopping the install after the total package is unpacked. >Don't know if the stereoscopy also comes in a seperate package. > >It runs opencl fine now, with near native performance (with luxmark benchmark) >:-) (with xen-unstable, qemu-upstream, linux 3.7 dom0, win7 guest, 12.11 >catalyst drivers, ati radeon HD 6570 at the moment) > Thanks for the feedbacks! I will try what you said. But for my use case I need CCC, even if it isn't works properly, users know how to use it and make it work. Aurelien >-- >Sander > > Aurelien >>-- >>Mats >> _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |