Announcement

Collapse
No announcement yet.

Ubuntu 22.04 LTS Disables 3D Acceleration For Guest VMs With GNOME Boxes / Virt-Manager

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    no it doesn't. what you quoted means you can install virtualbox inside of a VM or that you can install other hypervisors like KVM inside of virtualbox. not that the VM will use kvm for acceleration.

    Comment


    • #22
      Originally posted by calc View Post

      VMware Workstation is even worse than VirtualBox, if you use it much. It has a long standing bug even after several years, that it frequently causes the kernel to get stuck in kcompactd at 100% usage even when the system still has over 40GB+ Available memory left. Which slows the whole system down so much you can easily type faster than it can display.

      VMware ESXi likely does not have this problem though.
      interesting, I haven't run into that myself. I use vmware for windows VMs since I use the gpu acceleration

      Comment


      • #23
        Virt-manager does have its issues, but I overall find it and the speed way better than VirtualBox. The reason I left VirtualBox was the spotty and crashy USB support, and the nonfree extension pack, because it was too easy to accidentally depend on it while using VirtualBox on commercial projects. USB has been known to cause VMs to just flat out crash and show up as "Aborted" for me.

        USB 2.0 should not be a nonfree feature in 2022. Or really any year since maybe 2010 at the least.

        Comment


        • #24
          The other reason I left VirtualBox was consistent Linux guest odd behaviour like always being multiple frames behind when 3D acceleration was enabled. So you'd think eg a command hadn't completed, but you just needed to hit ENTER a few times to get the screen to refresh.

          If anyone has any insight on this last issue, I'd like to know what causes it. I've seen it outside of VMs too, occasionally.

          Comment


          • #25
            Originally posted by Quackdoc View Post
            interesting, I haven't run into that myself. I use vmware for windows VMs since I use the gpu acceleration
            I think this only happens with VMware Workstation with Linux as the host OS. The easiest way that I have found to trigger the issue is to have 2-3 VMs running at the same time doing light disk io, the more the quicker it happens. My system has 64GB ram and the VMs generally have 1-4GB ram configured so I still have a huge amount of "available" memory when it happens. I also have conky setup to show process utilization so I can see when kcompactd starts eating 100% cpu on a core.

            edit:

            Just found the following information, it might help but it does so by just disabling Linux memory compaction entirely:

            VMWare workstation in a fistfight with Linux Memory Compactor kcompact

            Documentation for /proc/sys/vm/
            Last edited by calc; 24 April 2022, 08:05 PM.

            Comment


            • #26
              VirtualBox vs VMWare on Windows, I think VirtualBox probably provided the least frustrating experience. I didn't use them for much, I had cloned some disks with Clonezilla and used a VM guest to restore them to virtual disk images. Both required editing their config files for some parts as the GUIs did not enable me to adjust some settings, one I think was to enable UEFI and another boot order?

              I wanted to use my USB disk in the guests but recall having trouble with each. VMWare I think was just outright buggy and wasn't going to happen for some reason (always failed to pass to guest), and VirtualBox required installing some other support software on the host side otherwise you're stuck with USB 1.1. Ended up trying shared folders instead. I recall that being worse experience for VMWare, and having trouble with the information I came across on the net to get it working, there was also some weird permission issues even though I was root in the guest at some point, no clue if that had anything to do with the Windows host.

              One of them when using guest tools support for copy/paste also implicitly forced you into waiting for a copy transfer of any file you had copied on the host...I had copied a 4GB ISO on the host and nothing else on the clipboard since when I changed over to the guest I had to wait for it to slowly copy over from the host HDD to the host HDD shared folder location for the guest... One guest was also weird with graphics and cursor being inaccurate (clicking had an offset), but this was resolved once guest drivers were installed IIRC.

              QEMU / virt-manager on the other hand was a smoother experience, virtio-fs was easier to setup too for shared folder access. On linux host I haven't tried VMWare yet, but VirtualBox was okay-ish. Had to install kernel module requiring a reboot (VMware requires the same), along with the extra host packages for better USB support, I did have some issues with boot order for UEFI guest, along with it not detecting disks with one of the interfaces(virtio-scsi I think, guest was EndeavourOS), at one point I was dropped to UEFI shell and had to manually figure out commands to boot the disk with FAT32 partition (flagged as boot type) that had EFI/BOOT/bootx64.efi (I think that's meant to be the default that's usually implicitly detected?) this was rEFInd which once booted would scan the other disks and provide easy booting.

              VirtualBox 3D accel was a bit disappointing in the linux guest on linux host. Haven't had luck with getting that to work yet on QEMU/virt-manager, I have nvidia GPU unfortunately, so it's not as seamless like with Mesa drivers. Apparently I can configure a headless egl driver and tell the SPICE graphics adapter to use that for 3D accel, then video driver Virtio-GPU will work with 3D accel. I recall last time VMWare had the best 3D accel if passthrough isn't an option.

              For me, I am wanting a guest that can have decent 3D accel (no games, just DE effects and common apps to virtually isolate my projects, such as web browser windows/tabs), I want to be able to just "pause" the guest and free up resources so that I can switch to another VM or shut down the host and restore my projects to where I last had them with everything sorted instead of manually piecing the state back. Sadly virtio-fs among other features seems to prohibit the "pausing" and snapshot support.

              VirtualBox already showed it performs poorly with 3D accel, so here's hoping VMWare does a better job. One VM guest needs multi-display support (virtualized a host system), but since bother QEMU and VirtualBox needed guest drivers for that to work, I assume it'll be the same with VMWare. I have read that VMWare uses DX12 on windows hosts and Vulkan on linux hosts to forward the 3D accel to, but if anyone knows if the other two can perform as well (no passthrough, I want state snapshots to work), that'd be great to know!

              Originally posted by mantide View Post
              Side question. I have been using QEMU command line for many years. Why everyone is using virt-manager? Is being user-friendly the only reason? I honestly cannot think of any advantage of adding this middle layer between QEMU and myself.
              I am not a heavy VM user, mostly Docker these days. Recently I started trying out different hypervisors with last time being about 5 years ago.

              Virt-Manager defaults have changed to nicer ones, eg pretty much Virtio where possible. Is that also the case when using qemu directly, or do you have to specify that?

              I recall when I last used virt-manager, I was doing GPU passthrough back then and some changes were not possible via GUI, I used virsh to edit some libvirt XML to add suspend/hibernate support, and also for pulseaudio config to route audio to host I believe. I haven't bothered with such yet but it looks like I'd still need to use virsh to apply such changes.

              I do also remember needing to run some extra QEMU specific command line options, I don't recall what those were but I was able to add them with virsh for libvirt to call QEMU with as additional options. Other than that I just preferred a quick GUI or virsh commands rather than maintaining a script. I think one advantage QEMU offered was the GTK or SDL window being different from whatever embedded view virt-manager was using (virt-viewer?), virt-manager also cannot handle multiple displays, I've used remote-viewer for that, but like other hypervisors it seems to require having guest packages installed/enabled (SPICE in this case).

              Originally posted by Quackdoc View Post
              I still find myself writing launch scripts myself every now and then since I do some more complicated stuff than virt-manager allows.
              Do you have some examples of what those more complicated things are that virt-manager doesn't support? I often hear about QEMU having extra features/benefits to use directly instead of through libvirt (which I'm aware can lag behind sometimes), but I'm not aware of any list of such differences.

              Comment


              • #27
                Originally posted by Jabberwocky View Post

                I've been using GNU/Linux for 20+ years. This ideology is the biggest hurdle that it has to become a popular. Proprietary vendor/distro lock-in like CUDA or Snap are close second.

                It's not about being low IQ or lazy, people simply don't have the time or interest to study manuals or Wiki pages. I personally don't mind because I am a technical person. That said, sometimes the man pages and wikis are hit and miss. QEMU's man pages or readthedocs are not the best IMO and I don't blame the devs for it, it's not easy to write and maintain it.

                In QEMU's case I would argue it's easier to write an user friendly UI than to maintain the technical docs that covers the entire QEMU in detail.
                No, I do blame developers for poor documentation. Yes it's hard. Yes it's tedious and time consuming. But it's even more part of the job of being a developer than writing the code. If people want people to "RTFM" then the first step is to have a functional and accurate manual to begin with. Linux sucks at this. Hands down. No, code does not document itself.

                The BSDs have this part of the developer and user experience exactly right because the developers realize it's part of their job to contribute towards documentation as they write code.

                Comment


                • #28
                  Originally posted by Volta View Post
                  then slow virtualbox is indeed for you.
                  Not sure how much of that was a deliberate lie to support your "superiority" and how much was just misleading phrasing, but outside of accelerated graphics (which VB does indeed suck at) it's not "slow" at all: CPU- and IO- bound work inside a VM is around 95-99% of bare metal performance.

                  Comment


                  • #29
                    Originally posted by Leinad View Post
                    I tried virt-manager a few months ago after reading, how Virtualbox "is bad". It was eye opening experience to actually find, how much Virtualbox is better than this broken thing.
                    Virtual box once stopped working after an update of Tumbleweed.
                    Although kvm is not as easy to set up as virtual box, it works much better and I never had any issues after any Tumbleweed update.

                    Comment


                    • #30
                      Originally posted by arQon View Post

                      Not sure how much of that was a deliberate lie to support your "superiority" and how much was just misleading phrasing, but outside of accelerated graphics (which VB does indeed suck at) it's not "slow" at all: CPU- and IO- bound work inside a VM is around 95-99% of bare metal performance.
                      i'd love to see those numbers. vbox is always far worse for me personally. the fact that it can't use kvm is a big blow to vbox preformance.

                      Comment

                      Working...
                      X