7 Years Late is Better than Never. - Nvidia GPU Passthrough

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments

I do agree with some things, but some of the things where kinda exagerated. Like "janky solutions" Confused in vendor ID, KVM flag off. And some other things I just find kinda meh. But it does bring some of the points.

And like I don't think we should give nvidia any prase for fixing something so incredibley stupid. Like there is 0 reason for them to add it and now we say there doing good cuz they removed it. It's like somebody stealing your phone, and then giving you it back but broken. Cuz they still haven't removed all VM lock shit.

πŸ‘οΈŽ︎ 57 πŸ‘€οΈŽ︎ u/Stetsed πŸ“…οΈŽ︎ Apr 25 2021 πŸ—«︎ replies

It even features posts from r/VFIO. Some of which you might have come across

πŸ‘οΈŽ︎ 16 πŸ‘€οΈŽ︎ u/marku01 πŸ“…οΈŽ︎ Apr 25 2021 πŸ—«︎ replies

Its nice when such a niche (in the context of regular people with regular gear, ignoring the enterprise scene) gets covered on such a large channel.

The removal of the Code 43 error is a good thing in general but I can't help but not praise them for it. The YouTube video's title says it all.

πŸ‘οΈŽ︎ 9 πŸ‘€οΈŽ︎ u/ipaqmaster πŸ“…οΈŽ︎ Apr 25 2021 πŸ—«︎ replies

I really wish they'd put some useful information in their video titles. I often skip LTT videos if I think they're not relevant, but this one was, not that I'd have known...

πŸ‘οΈŽ︎ 8 πŸ‘€οΈŽ︎ u/g9icy πŸ“…οΈŽ︎ Apr 26 2021 πŸ—«︎ replies

I just tried this with the latest drivers, but does not seem to work (code 43). Is there any limitation still in place?

Driver: 466.11, card: 1050

Edit: there’s already a post about this and I think, I might have to check my proxmox config.

πŸ‘οΈŽ︎ 8 πŸ‘€οΈŽ︎ u/Oryk576 πŸ“…οΈŽ︎ Apr 25 2021 πŸ—«︎ replies

Pretty cool how many times he featured /r/vfio posts. Might bring some new users or just an increased general awareness.

πŸ‘οΈŽ︎ 2 πŸ‘€οΈŽ︎ u/steve_is_bland πŸ“…οΈŽ︎ Apr 26 2021 πŸ—«︎ replies

He should cover the hacked drivers that let you do GRID stuff

πŸ‘οΈŽ︎ 2 πŸ‘€οΈŽ︎ u/TheEdes πŸ“…οΈŽ︎ Apr 26 2021 πŸ—«︎ replies
Captions
- Imagine a world where if you wanted to occasionally run small business errands in your car, manufacturers could force you to buy their work grade vehicles. You'd be pretty pissed off, right? Well, that's essentially what Nvidia did. GeForce users who wanted to pass their GPUs through to a Virtual Machine were suddenly greeted with the infamous Code 43 error when they tried to install drivers. And they've had to spend the last seven years dealing with janky workarounds, until today. Nvidia seems to have finally decided that it is time to make amends. So let's learn a bit more and see if maybe, just maybe, Nvidia is turning over a new leaf. What I'll never turn over is my segues to sponsors like Honey. Honey is the free to use shopping tool that helps search for some of the best promo codes at lots of your favorite sites. Get it today. Join honey.com/ltt. (upbeat music) Code 43 has been a huge deal in certain circles for a long time, in no small part because of how ridiculous it is, because there's no technical reason why like most PCI Express devices, a GeForce card can't function just fine when passed through to a Virtual Machine, like in our 2 Gamers, 1 CPU project. And there's definitely no reason why a Quadro which uses the exact same silicon and often the same board layout would do it any better. And yet if the GeForce driver detected that it was running in a virtual environment, it would effectively say to you, what Linus Torvalds famously said to Nvidia. - So, Nvidia, you. - To understand why any of this matters though we need to go back to the beginning. Virtualization has been common on desktop computers since as far back as the nineties, when Connectix Virtual PC allowed Mac users to use Windows on their PowerPC based machines. Now back then everything had to be emulated, so performance kind of sucked. But as technology improved and especially as hardware-assisted virtualization support became common, more and more of the host machines resources became available with very little overhead to a guest operating system on a Virtual Machine or VM. That includes the ability to assign a device entirely to the guest using a feature called passthrough. Major players like VMware and Microsoft with Hyper-V have supported these features since very early on. And while hardware support for passthrough began in 2007 with AMD's K10 family of CPU's, in 2008 with Intel's Wolfdale, Chipset and BIOS support from motherboard manufacturers was sporadic on both sides. And it wasn't until AMD's 900 series chipsets in 2012, and Intel's Haswell Refresh in 2014, that consumer hardware started really handling it. Well, AMD branded this feature AMD-Vi and Intel went with VT-d, but the technology is more commonly called input-output memory management unit or IOMMU. And it is incredibly important for Virtual Machines. Not only does IOMMU allow pretty much any PCI device to be passed through to a VM, it can be used to sandbox faulty or even malicious hardware without worrying about compromising the rest of the system. This makes it useful, not only from a functionality standpoint, but also for security. Oh, and performance too. While devices like network adapters and drive controllers could be emulated, passing through a dedicated card, could save that emulation overhead and allow a Virtual Machine to have IO performance that was nearly on par with a bare metal one. Over time, however, this last point has become less and less relevant. Thanks to the broad adoption of paravirtualization. The ability for very fast virtual devices to communicate directly with the host without the need to emulate or pass a full device through. One network card for example, can service multiple VMs with very little overhead. However, one somewhat important piece of hardware still has no viable pair of virtualization support. The GPU. And one group that heavily relied on GPU passthrough back then, was the Linux community. It let them daily drive Linux and game in a virtual Windows environment with like bare metal performance. Perfect. That is until Nvidia's 337.88 driver release in May, 2014, just days before Intel announced the pass through friendly Haswell Refresh. This was one of Nvidia's first major middle fingers to the Linux community, and it wouldn't be the last. But get subscribed because Nvidia has been doing a lot of things lately to try to make up for it and we've got some videos planned to talk about them. The question though is why did they do this? Because whenever a newbie inevitably stumbled across Code 43, their outrage was swift and it was consistent, because not only did it just hand a win to AMD who decided not to laugh down Radeon, it was just totally ridiculous. I mean, it's not like passing a GPU through to a VM, unlock some super secret performance enhancement that would directly eat into Nvidia's Quadro sales, but apparently they thought differently, or at least thought the collateral damage was low enough not to matter. Lttstore.com by the way. Now at the time, that bet probably looked pretty good because back when this policy was enacted Ryzen was but a twinkle in Lisa Su's eye and AMD was staring down bankruptcy. Quad-Core was as high as it went on the desktop and it would stay that way till 2017, so from Nvidia's perspective, realistically, what gamer was gonna sacrifice precious course for this kind of use case when they had so few? Anyone passing through must be a professional user. But then everything changed. The overwhelming majority of new systems these days now have six cores or more and there are a growing number of people looking to legitimately take advantage of all that extra horsepower that goes woefully under utilized, and even the most multi-threaded games. Take someone like our camera guy, David. He wants his Android NAS to give him high-speed storage for personal video projects, act as a Plex media server, and serve as a capture PC for his streaming rig with Nvidia NVENC doing the encoding, using passthrough of course. Or take someone like Anthony who has somehow managed to game on Linux everyday at home since Proton came out, and yet still runs into games that straight up run only on Windows. But hold on a minute Linus, you might say, "Those are projects that you guys did before this change. "So what's the difference?" Okay, there were work arounds to Code 43. Some of them are even pretty simple but Nvidia's meddling caused no end of headaches for novices who were just as likely to abandon the idea entirely as to find a solution which sucks because it opens up a lot of possibilities and the hardware's freaking capable of it. Now though, it's as simple as passing through your GPU and installing the driver as normal, just like you would do on AMD. So let's say you're a Linux user like Anthony. You can split your CPU and RAM up and then use an AMD GPU for its superior Linux experience, while using an Nvidia GPU for, in my opinion still, superior Windows gaming experience, completely hack free. Got Xbox Game Pass, I'm gonna play Microsoft store games? You can do that. Wanna play Epic Games Store or EA Origin exclusives? You can do that too. Want real-time ray tracing and DLSS? Go for it. And this is really cool. With Looking Glass, you don't even need to change the inputs on your display although it should be noted that at high resolutions and refresh rates, you can run into PCI-Express bottlenecks. For our part though our Ryzen 5000 Series running PCI-Express Gen 4 managed 1440P, 144 Hertz despite only running eight lanes to each of our GPU's. If you're okay switching inputs to play your Windows exclusives though, you don't need to worry about any of that because it's all native. There are some drawbacks to this approach however. While you do get the full capabilities of the GPU including features like shadowplay and Nvidia Broadcast, you might still run into problems with anti-cheat software. Engines like BattlEye and Easy Anti-Cheat are able to detect when a user is running in a Virtual Machine. And the situation with cheating using Virtual Machines has unfortunately become bad enough that they've begun kicking players who are running them as a preventative measure. This is because anti-cheat running inside a VM has no idea what the host operating system is doing. And that host OS just happens to be able to manipulate the Virtual Machines memory in ways that are undetectable by anti-cheat hence the ban on VMs. They do say that users running in a VM will be banned outright, but there are reports of exactly that happening. So just be careful if you decide to try playing Fortnite or Rainbow Six Siege. Are there ways around these limitations? Probably, but I'll leave that up to you to research on your own. For now, the bottom line is that Nvidia is making changes to how they handle Linux and virtualization, and many people myself included could not be happier about it. I don't agree with everything they do, but damn it, you gotta give credit where credit is due. Just like I give credit to our sponsors. Manscaped offers all-in-one men's grooming tools that have you covered from head to toe. Their perfect package 3.0 kit is designed to make grooming below the waist easier than ever with their Lawn Mower 3.0, plus some other goodies. It includes both their Crop Preserver and Crop Reviver sprays to keep things fresh down under and a portion of every purchase goes toward the Testicular Cancer Society to spread awareness for men's health and early cancer detection. So don't wait. Get 20% off Manscaped with promo code TECH and join the fight against testicular cancer at the link below. Thanks for watching guys. If you're looking for something a bit more data-heavy maybe check out our recent video on Nvidia's Resizable BAR implementation. That video is all about them benchmarks. β™ͺ Because I'm all about the benchmarks β™ͺ β™ͺ About the benchmarks β™ͺ
Info
Channel: Linus Tech Tips
Views: 1,390,784
Rating: undefined out of 5
Keywords: nvidia, geforce, quadro, gpu, video card, pci express, pcie, passthrough, virtual machine, vm, code 43, error, fix, kvm, linux, windows, hypervisor, gaming, productivity, multi-gpu, linus torvalds, limitation, artificial
Id: JGvrXXonoqM
Channel Id: undefined
Length: 10min 12sec (612 seconds)
Published: Sun Apr 25 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.