• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

Did you now Turin has resizable BAR capability?

Joined
Aug 27, 2023
Messages
206 (0.61/day)
I was surprised to learn just recently Turin has resizable BAR capability, so much so that I bought a second hand GTX 1660S to play with. For some reason it's not clear with some other software but if we look under HWiNFO it's well defined.

rb1.PNG


Unfortunately my X99 is out of commission so I'm using this even older board for it, a Gigabyte EP45. :(

So with a bit of playing about and some MBR code in this case, it's possibly to get more than 256MiB

Updated HWiNFO screenshot
hwi1.PNG


Seems EVGA has a utility too
evga1.PNG



Let's not forget GPU-Z
HWi2.PNG


Note
  • There's no "above 4G decode" in this BIOS
  • There's no ReBar control in this BIOS.
  • CSM doesn't exist, it's a legacy BIOS, the real thing.
  • MBR partitioning, not GPT
  • No BIOS mod
  • No VBIOS mod.
I'm not the first to do this, credits to user terminatorul and xCuri0. You can find source code at https://github.com/terminatorul/NvStrapsReBar for UEFI implementation.

I haven't done any performance testing as yet, not being a gamer I might try something synthetic but later on. You might wonder if I'm not a gamer then why do this, well for me I'm learning something and I like that.
 
Last edited:

izy

Joined
Jun 30, 2022
Messages
950 (1.25/day)
I was surprised to learn just recently Turin has resizable BAR capability, so much so that I bought a second hand GTX 1660S to play with. For some reason it's not clear with some other software but if we look under HWiNFO it's well defined.

View attachment 324346

Unfortunately my X99 is out of commission so I'm using this even older board for it, a Gigabyte EP45. :(

Well I thought I had some more snapshots handy but cant seem to find them, will go look for them or I'll have to make some new ones.
As far as I know, ReBar on NVIDIA GPUs only works for RTX 30 series and above, and for RTX 30 series you will also need a vbios update, so even older Nvidia GPUs are capable of using ReBar ( it's a PCIE spec) won't work without a vBios update that NVIDIA never released for older GPUs for some reason.

1701872603976.png


Something i found on reddit:
"We reached out to NVIDIA for their thoughts on the variability of the results we are seeing. They pointed out that Resizable BAR is a PCIe feature that is not locked to any one GPU nor was it originally designed for general game performance enhancement since it ideally requires game developer integration to work best. Because of the quality assurance difficulty, NVIDIA’s current plan is to enable it only for Ampere GPUs."
 
Last edited:
Joined
Aug 27, 2023
Messages
206 (0.61/day)
@izy, seems older cards and probably newer can have larger and sometimes smaller BARS without resizable BAR capability. Whether they will work well with the driver is another matter. What do you think they changed in the 3000 VBIOS? Looked to me to be just a nibble (half a byte) to remove the 256MiB cap. Maybe some one can test if 128MiB and 64MiB work without the update. I suspect the capability itself isn't part of the VBIOS, will have to try a chip erasure sometime to check.
 
  • Like
Reactions: izy
Joined
Nov 27, 2023
Messages
1,650 (6.79/day)
System Name The Workhorse
Processor AMD Ryzen R9 5900X
Motherboard Gigabyte Aorus B550 Pro
Cooling CPU - Noctua NH-D15S Case - 3 Noctua NF-A14 PWM at the bottom, 2 Fractal Design 180mm at the front
Memory GSkill Trident Z 3200CL14
Video Card(s) NVidia GTX 1070 MSI QuickSilver
Storage Adata SX8200Pro
Display(s) LG 32GK850G
Case Fractal Design Torrent
Audio Device(s) FiiO E-10K DAC/Amp, Samson Meteorite USB Microphone
Power Supply Corsair RMx850 (2018)
Mouse Razer Viper (Original)
Keyboard Cooler Master QuickFire Rapid TKL keyboard (Cherry MX Black)
Software Windows 11 Pro (23H2)
Theoretically, a lot of older GPUs should support it since the feature, AFAIK, was something that was a part of PCIe protocol spec for a while now. But officially, only Ampere and up on NVidia side are both enabled and supported in their drivers. Reasons can be argued all day, but it is what it is.
 

izy

Joined
Jun 30, 2022
Messages
950 (1.25/day)
@izy, seems older cards and probably newer can have larger and sometimes smaller BARS without resizable BAR capability. Whether they will work well with the driver is another matter. What do you think they changed in the 3000 VBIOS? Looked to me to be just a nibble (half a byte) to remove the 256MiB cap. Maybe some one can test if 128MiB and 64MiB work without the update. I suspect the capability itself isn't part of the VBIOS, will have to try a chip erasure sometime to check.
I can be wrong (i have to do some reading about it) but i suspect that the motherboard bios is "asking" the GPU if it has the feature enabled or not on boot so i think they actually added something to the vBIOS rather than removing a limit, something that tells the MB bios that it can use a larger bar.
 
Joined
Feb 24, 2023
Messages
2,362 (4.55/day)
Location
Russian Wild West
System Name DLSS / YOLO-PC
Processor i5-12400F / 10600KF
Motherboard Gigabyte B760M DS3H / Z490 Vision D
Cooling Laminar RM1 / Gammaxx 400
Memory 32 GB DDR4-3200 / 16 GB DDR4-3333
Video Card(s) RX 6700 XT / RX 480 8 GB
Storage A couple SSDs, m.2 NVMe included / 240 GB CX1 + 1 TB WD HDD
Display(s) Compit HA2704 / Viewsonic VX3276-MHD-2
Case Matrexx 55 / Junkyard special
Audio Device(s) Want loud, use headphones. Want quiet, use satellites.
Power Supply Thermaltake 1000 W / FSP Epsilon 700 W / Corsair CX650M [backup]
Mouse Don't disturb, cheese eating in progress...
Keyboard Makes some noise. Probably onto something.
VR HMD I live in real reality and don't need a virtual one.
Software Windows 10 and 11
I don't precisely know how but you can even partially enable ReBAR on Pascal and, probably, Maxwell GPUs. Yet it usually damages performance.
 

izy

Joined
Jun 30, 2022
Messages
950 (1.25/day)
I don't precisely know how but you can even partially enable ReBAR on Pascal and, probably, Maxwell GPUs. Yet it usually damages performance.
I would give it a try but i have no idea how to force ReBAR on B450 , i think i need some sort of a BIOS MOD (not vBIOS, thats impossible atm i guess) , after that you can enable/disable ReBAR for each game/application using nvidiaProfileInspector.
 
Joined
Feb 22, 2022
Messages
568 (0.64/day)
Processor AMD Ryzen 7 5800X3D
Motherboard Asus Crosshair VIII Dark Hero
Cooling Custom Watercooling
Memory G.Skill Trident Z Royal 2x16GB
Video Card(s) MSi RTX 3080ti Suprim X
Storage 2TB Corsair MP600 PRO Hydro X
Display(s) Samsung G7 27" x2
Audio Device(s) Sound Blaster ZxR
Power Supply Be Quiet! Dark Power Pro 12 1500W
Mouse Logitech G903
Keyboard Steelseries Apex Pro
Making a feature report as enabled does not mean it is necessarily doing anything (good). But you can test this feature after all. Happy tinkering.
 

izy

Joined
Jun 30, 2022
Messages
950 (1.25/day)
Making a feature report as enabled does not mean it is necessarily doing anything (good). But you can test this feature after all. Happy tinkering.
Yeah i think even the bar will show as 8G it will still use the normal 256mb but the guys from https://github.com/xCuri0/ReBARUEFI are saying that they are getting some extra performance with it enabled, sadly that mod works only for older MBs.

Edit: Lets see if it does anything.
Edit2: Doesnt seem to work forcing it for me , maybe im missing something. I really dont want to play with the MB bios , it should support rebar without adding FFS Module , maybe it wont work without doing it.

1701878191213.png
 

Attachments

  • 1701877565807.png
    1701877565807.png
    34.7 KB · Views: 53
Last edited:
Joined
Oct 26, 2016
Messages
1,756 (0.62/day)
Location
BGD
System Name Minotaur
Processor Intel I9 7940X
Motherboard Asus Strix Rog Gaming E X299
Cooling BeQuiet/ double-Fan
Memory 64Gb DDR4 2800Mhz
Video Card(s) 1)RX 6900XT BIOSTAR 16Gb***2)MATROX M9120LP
Storage 2 x ssd-Kingston 240Gb A400 in RAID 0+ HDD 500Gb +Samsung 128gbSSD +SSD Kinston 480Gb
Display(s) BenQ 28"EL2870U(4K-HDR) / Acer 24"(1080P) / Eizo 2336W(1080p) / 2x Eizo 19"(1280x1024)
Case NZXT H5 Flow
Audio Device(s) Realtek/Creative T20 Speakers
Power Supply F S P Hyper S 700W
Mouse Asus TUF-GAMING M3
Keyboard Func FUNC-KB-460/Mechanical Keyboard
VR HMD Oculus Rift DK2
Software Win 11
Benchmark Scores Fire Strike=23905,Cinebench R15=3167,Cinebench R20=7490.Passmark=30689,Geekbench4=32885
Yeah i think even the bar will show as 8G it will still use the normal 256mb but the guys from https://github.com/xCuri0/ReBARUEFI are saying that they are getting some extra performance with it enabled, sadly that mod works only for older MBs.

Edit: Lets see if it does anything.
Edit2: Doesnt seem to work forcing it for me , maybe im missing something. I really dont want to play with the MB bios , it should support rebar without adding FFS Module , maybe it wont work without doing it.

View attachment 324369
Yeah for me working totally fine up to the 1gb Rebar size on my X79 motherboard and there are some improvements with my RX 6700XT
P.S. I believe that you must edit first your bios(depend of your mobo) and then you can use program rebar ON/OFF
rebarx79.png
 
Last edited:

izy

Joined
Jun 30, 2022
Messages
950 (1.25/day)
Yeah for me working totally fine up to the 1gb Rebar size on my X79 motherboard and there are some improvements with my RX 6700XT
P.S. I believe that you must edit first your bios(depend of your mobo) and then you can use program rebar ON/OFF
View attachment 324373
Yeah , you are right but I dont want to mess up with the bios today:)

How it works​

The module is added to the UEFI firmware's DXE volume so it gets executed on every boot. The ReBarDxe module replaces the function PreprocessController of PciHostBridgeResourceAllocationProtocol with a function that checks for Resizable BAR capability and then sets it to the size from the ReBarState NVRAM variable after running the original function.

The new PreprocessController function later gets called during PCI enumeration by the PciBus module which will detect the new BAR size and allocate it accordingly.
 
Joined
Aug 27, 2023
Messages
206 (0.61/day)
I don't precisely know how but you can even partially enable ReBAR on Pascal and, probably, Maxwell GPUs. Yet it usually damages performance.
Pascal, Maxwell, Kepler and I suspect many older cards can have their aperture BAR size increased but do not have resizable BAR extended capability as does Turin and newer. Windows Nvidia driver is antagonistic towards such Pascal and Maxwell devices while Linux appears to limit to 256MiB and allow lower.


I would give it a try but i have no idea how to force ReBAR on B450 , i think i need some sort of a BIOS MOD (not vBIOS, thats impossible atm i guess) , after that you can enable/disable ReBAR for each game/application using nvidiaProfileInspector.
The method is basically simple, 2 or 3 things are required.
  1. Setting of softstrap on card for larger aperture size, this will correspondingly populate the higher ReBaR settings on Turin.
  2. Setting of ReBaR extended capability.
  3. Allocating appropriate address space.
With the current UEFI method 1 & 2 are done early during BIOS initialization during DXE phase IINM (haven't tried it myself) and 3 is left to the BIOS. Since I'm using an older legacy BIOS (no UEFI) I've instead incorporated the changes into the HDD MBR which is responsible for loading the OS boot sector. So it all happens after BIOS initialization in this case and step 3 is a reallocation. Both methods work with hardcoded values, a universal approach so far doesn't exist as far as I'm aware which makes it awkward for many to implement.


Making a feature report as enabled does not mean it is necessarily doing anything (good). But you can test this feature after all. Happy tinkering.
Of course, needs to be tested. Interesting how we see with nvidiainspector that the whole aperture isn't used but just a few 100MiB up to 1.5GiB, needs to be looked at too I think. Yes, hopefully the tinkering will have some 'happy moments' and not just frustration :D


OP, get your facts straight! Turin (Torino) is a picturesque Italian city, completely different from what that thing in your computer is named.
Wait, what!. There are some picturesque cities in Italy? I thought they had all been vandalized, what ever happened to that guy that was videoed carving his name into 'The Colosseum'? :D


I thought I'd share this info as people might be interested but I've actually just realized after over 10 years most people want a 'click' solution and aren't interested with the 'nitty gritty' of it. Explains so much with the mobile Haswell ratio unlocking and the following Xeon v3 turbo unlock. Lol, lesson finally learned.
 
Last edited:
  • Like
Reactions: izy
D

Deleted member 182555

Guest
I thought I'd share this info as people might be interested but I've actually just realized after over 10 years most people want a 'click' solution and aren't interested with the 'nitty gritty' of it. Explains so much with the mobile Haswell ratio unlocking and the following Xeon v3 turbo unlock. Lol, lesson finally learned.
xeon v3 and 1660s are you copying my build? :D
jokes aside but does this rebar or increase in just bar1 give any real advantage on old Nvidia GPUs? shouldn't it also be handled by driver and games?
 
Joined
Aug 27, 2023
Messages
206 (0.61/day)
@Don Zauser idk, I haven't tried measuring performance yet. terminatorul ran with a RTX 2080Ti and showed about 11% increase with 3DMark PCIe test and about 5% in GravityMark IIRC. It doesn't seem like it's a case of just opening up the BAR either, for instance a table posted by Reddit user gerechterzorn shows one setting with size limit of 1.5GiB, most others at 1GiB and even one that's reduced to 200MiB! So curious about that but will have to wait until I'm not busy with other things. If Nvidia has or will to block with their driver is a possibility, or perhaps they will let it slide as there's no validation requirement necessary in such a use case?

https://www.reddit.com/r/nvidia/comments/13zes73
 
Joined
Feb 18, 2005
Messages
5,562 (0.78/day)
Location
Ikenai borderline!
System Name Firelance.
Processor Threadripper 3960X
Motherboard ROG Strix TRX40-E Gaming
Cooling IceGem 360 + 6x Arctic Cooling P12
Memory 8x 16GB Patriot Viper DDR4-3200 CL16
Video Card(s) MSI GeForce RTX 4060 Ti Ventus 2X OC
Storage 2TB WD SN850X (boot), 4TB Crucial P3 (data)
Display(s) 3x AOC Q32E2N (32" 2560x1440 75Hz)
Case Enthoo Pro II Server Edition (Closed Panel) + 6 fans
Power Supply Fractal Design Ion+ 2 Platinum 760W
Mouse Logitech G602
Keyboard Logitech G613
Software Windows 10 Professional x64
@Don Zauser idk, I haven't tried measuring performance yet. terminatorul ran with a RTX 2080Ti and showed about 11% increase with 3DMark PCIe test and about 5% in GravityMark IIRC. It doesn't seem like it's a case of just opening up the BAR either, for instance a table posted by Reddit user gerechterzorn shows one setting with size limit of 1.5GiB, most others at 1GiB and even one that's reduced to 200MiB! So curious about that but will have to wait until I'm not busy with other things. If Nvidia has or will to block with their driver is a possibility, or perhaps they will let it slide as there's no validation requirement necessary in such a use case?

https://www.reddit.com/r/nvidia/comments/13zes73
Who is "terminatorul"? Where is this evidence?
 
Joined
Feb 10, 2023
Messages
775 (1.45/day)
Location
Belgium
System Name Prometheus
Processor AMD Ryzen 9 7900X3D
Motherboard ASUS ROG Crosshair X670E Extreme
Cooling AIO Cooler Master MasterLiquid 360
Memory 32GB DDR5
Video Card(s) Gigabyte GeForce RTX 3060 OC Edition 12GB
Storage Samsung 970PRO 2TB, Samsung 990PRO 4TB, WD SN850X 2TB, Samsung 980PRO 2TB. WD GOLD HDD 8TB
Display(s) Corsair XENEON 32UHD144 32" 4K UHD gaming monitor
Case Cooler Master HAF
Audio Device(s) Creative Sound Blaster AE7
Power Supply Corsair AX850 Titanium.
Mouse Logitech MX Master 3
Keyboard Corsair K95 RGB
Software W10-11 Enterprise- Linux Mint 21.3 Cinnamon Edition.
You can't make something not supported to Half-supported. It doesn't do anything if your card does not support it. And messing with the bios... Very bad idea.
Even if you get full support, with this old card you will have no benefit's at all. It was not made for this that time, so enabling a function it does not know off, will do absolutely nothing.
 
Top