Thursday, February 8th 2024
ReBarUEFI is a Boot Time Module that Enables Resizable BAR on Some Older Platforms
Officially, support for resizable BAR on the Intel platform begins with the 10th Gen Core "Comet Lake," and for AMD, the Ryzen 3000 "Zen 2." It is a PCI-SIG feature that allows the software to see the entire amount of video memory on your graphics card as a single contiguous addressable block, rather than through 256 MB apertures—a workaround for the original PCI Express specification as the industry was transitioning to it from AGP. The PCI-SIG had introduced resizable BAR way back during the PCI-Express 2.0 specification (late 2000s), although none of the GPU or platform vendors of the time bothered to implement it. Resizable BAR is known to have a positive impact on performance for modern GPUs from NVIDIA and AMD; although its most profound performance impact is on the Intel Arc "Alchemist" GPUs, which suffer a large performance penalty without it.
ReBarUEFI by xCuri0 is a UEFI DXE driver mod, which requires you to know how to modify the UEFI firmware of your motherboard. The ReBarUEFI mod calls for a motherboard that implements UEFI, the older legacy BIOS won't do. The industry transitioned to UEFI in the early 2010s, roughly around the time of Intel "Sandy Bridge." UEFI DXE drivers provide basic support for the various hardware on your system. The ReBarUEFI driver informs software that the platform is capable of resizable BAR. Some motherboards may require you to enable the "Above 4G Decode" setting. The author claims that users on platforms as old as 2nd Gen Core "Sandy Bridge" have had success in getting resizable BAR to work.
Sources:
xCuri0 (Github), VideoCardz
ReBarUEFI by xCuri0 is a UEFI DXE driver mod, which requires you to know how to modify the UEFI firmware of your motherboard. The ReBarUEFI mod calls for a motherboard that implements UEFI, the older legacy BIOS won't do. The industry transitioned to UEFI in the early 2010s, roughly around the time of Intel "Sandy Bridge." UEFI DXE drivers provide basic support for the various hardware on your system. The ReBarUEFI driver informs software that the platform is capable of resizable BAR. Some motherboards may require you to enable the "Above 4G Decode" setting. The author claims that users on platforms as old as 2nd Gen Core "Sandy Bridge" have had success in getting resizable BAR to work.
22 Comments on ReBarUEFI is a Boot Time Module that Enables Resizable BAR on Some Older Platforms
My 2070 could do with all the help it can get.
P.S. The .ffs module itself is provided pre-compiled so that is easier to use, but the source code is there, you can compile it yourself, plus, i can't see any closed-source blob. Looks decent to me
A 2070 is probably 50%+ faster than that, imagine having a 5800X3D on a X370 MB and not being able to use reBar/SAM because AMD decided that you need a 5xx MB to do that.
We mod gpu bioses and use weird softwares and registry hacks every day to get that extra 1%, why is this Bios Mod to get an extra free feature such a big deal now?
As for modding this has always been the case. Back in the good old days you could mod geforce cards into quadros and when that went away I didn't complain as it was never supported in the first place! I just coughed up the cash for a quadro like a normal human being.
This rig can play Cyberpunk at 1080p with 99 GPU utilization. It's not SB prior only. Because AMI BIOSes and relative closed source blobs are state of the art code...
I actually think its interesting that it works - and actually "well enough" to make it viable. And I disagree with the "the systems are too old to even consider adding a GPU that benefits from this" for two reasons - for one it seems to improve even older gens that are not on the "rebar makes the magic work" list and for some who get a budget GPU from the newer generations to keep playing in 1080p and can't afford more it's a great way to still get a decent improvement out of their old x99 systems (which, even for 1440p can be more than enough - they are not energy efficient and won't be in the top 10 FPS systems, but a v3 with turbo-unlock or a v4 from the 269x series is still more than potent enough to run most games more than decently for a package where you get it with a board and ram in the 140-180€ range compared to paying that for a 12/13/14th gen CPU alone).
Considering it was integral part even of PCIE 2.0, it could benefit even the old games of the same time. But correct me if I'm wrong. How about systems with DDR2, which were capped at 8GB. Some people stil use them, as retro builds or daily drivers. These can benefit from modern low end GPUs, but the amount of system RAM is yet a limiting factor.
And even DDR3 systems are CPU bottlenecked. But it would be intersting to tinker with nonetheless. Especially on non-xeon regular configs.
In terms of games, some games improve with it, other regress, so from a developer's point of view, you could write your game to optimise the benefits from the increased mapping and the software might improve as a result. A bit like how games not design with NVME in mind dont load much faster compared to SATA SSD, but then optimise it via DirectStorage and it takes off.
And, actually, while I was waiting for my 4070 Super to arrive at the store I ordered it from, I was able to try out a 7900XT a friend had. It was only then that I noticed a cpu bottleneck in a few more situations. BUT, in almost every game I cared about I still gained even more from the 7900XT and in most games my cpu was STILL no where close to tapping out. Just better and better performance. I have been pretty impressed with how much FPS I'm able to get out of a card like that with my ~8yr old system. And for gaming strictly at 4k/60fps (at max settings), it seems like anyone with a similar system to mine (z170+6700K) will benefit from any new card up to a 7900XT or 4070 Ti Super. Some games will STILL be gpu bottnecked, but that would be the smart place to stop (I wish I had the $$ for a 4070 Ti Super).
Can't wait to try out the ReBAR mod myself, as I already see that my motherboard (asus z170 sabertooth mark1) is on the confirmed-working list. :)
fwiw - Games where I am cpu bottlenecked (or very close to it) are Cyberpunk 2077 (I play at 4K on max with quality DLSS @60fps but I cannot use ray tracing on top of that), Witcher3 NGE DX12 version at 4K Max (again, I'm fine on Ultra+ but cannot enable ray tracing on top)... actually I'll just stop here. It's mainly only when I try and use ray tracing on top of 4K/Max settings in AAA games (ratchet & clank is another one). Interesting thing is that my GPU poops out at about the same point, both in "normal" power, in VRAM (12GB buffer w/ the Nvidia card :/ ), or both.