Modify and load custom VBIOS on Windows and Linux, on Blackwell 2.0 (RTX 50 Series)/Ada(RTX 40 Series)/Ampere (RTX 30 Series) without flasing, for example to lower power limits (and which cards wer...

Hello guys, hoping you're doing fine. Today I want to share something that may affect your cards (? I have released 3 tools: A way to modify VBIOSes, so you can increase power limit, voltage, NVVDD offsets, MSVDD offsets (Blackwell 2.0), OCPs, fan channels, power per fan, core offsets more than 1000, VRAM offsets more than 3000, lower power limits (below 400W on a RTX 5090), lower clocks, etc. But as you know, these can't be flashed directly on the cards because falcon, right? A custom VBIOS loader on Windows, that patches the registry file related to that GPU, it resets it and it's applied on every reboot. This does not change the real VBIOS on your card, but it just loads a copy via a patch and it let you use any modification! A custom VBIOS loader on Fedora, that patches the GSP firmware start on memory, builds a separate boot entry and then rebuilds automatically with kernel updates. This does not change the real VBIOS either. What are the requirements? Windows: Windows 10 or 11, 64-bit. NVIDIA driver 616.56 or newer ( status shows the version). A payload file for that exact GPU model (same PCI device ID). Linux: A working NVIDIA 615.x driver or newer with the open kernel modules; nvidia-smi must list your GPUs. The unpatched source of the open kernel modules for the exact installed version, for example: git clone --depth 1 --branch 615.78.08 github.com/NVIDIA/open-gpu-kernel-modules Python 3.11 or newer, the headers for the running kernel ( kernel-devel on Fedora), make , dracut , grub2-editenv and mokutil . With DNF5, also libdnf5-plugin-actions . GRUB with GRUB_DEFAULT=saved and GRUB_ENABLE_BLSCFG=true (Fedora's defaults). Secure Boot off, or your own module signing key: pass --signing-key and --signing-certificate to prepare . You need to first get a copy of your VBIOS, you can do it with GPU-Z on Windows, or with nvflash on Linux. Note that you can't modify EVERYTHING for the VBIOS, since it's still on research of what can be modified, what not and which rails are exposed. Also for example, VRAM timings can be modified (not on these tools) but they aren't applied, since the card reads it physically from the flash hardware. So, some example pics! First, some VBIOS editor example, for a RTX 5090 VBIOS, a RTX 4090 VBIOS, and a RTX 3090 VBIOS. RTX 5090 VBIOS Edit RTX 4090 VBIOS Edit RTX 3090 VBIOS Edit Then, the VBIOS loader on Windows looks like this: VBIOS loader, I have 4 gpus in this system Then you can choose a VBIOS, for example I will select a 671W VBIOS for the 4090. Choosing .bin file (for Ada and Ampere), for Blackwell you have to use the .rom file. Then if you see an OK on the left, you can press Load You get this warning, of something goes bad read the instructions, or DDU. And press OK/Accept, and a quick GPU restart after (no windows reboot), it works! Results, on Spanish UI (only English and Spanish for now) And it works just fine! PS C:\Users\User> nvidia-smi -i 0 -pl 671 Power limit for GPU 00000000:05:00.0 was set to 671.00 W from 550.00 W. All done. On the other hand for Linux, the UI looks very similar, and steps are similar, but you can also guide yourself on the github repo! You can edit the values you modified on MSI Afterburner, mvolt+ (recommended) on Windows. On Linux you can use LACT. Tested GPUs that I own, and it works: RTX 6000 PRO MaxQ: Unlocked voltage (stock 0.9V) to 1.1V, power from 325W to 600W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz (it depends of your luck), and some OCPs. RTX 5090: PL from 600W to 800W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 5080: PL from 360W to 500W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 5070Ti: PL up to 450W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 4000 PRO SFF: PL from 70W to 105W, core offset to be able to do +2000Mhz, VRAM to be able up to +7000Mhz, unlocked voltage from 0.85V to 1.1V. RTX 5070: PL from 250 to 350W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 5060Ti: PL from 185W to 300W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 4090: PL up to 700W, core offset to be able to do +2000Mhz, VRAM to be able up to +6000Mhz. RTX 2000 Ada: PL from 70W to 105W, unlocked voltage up to 1.1V. RTX A2000 (Ampere): PL from 70W to 105W, unlocked voltage up to 1.1V. Tested GPUs that I don't own, by other users: RTX 6000 PRO Workstation Edition RTX 5090 RTX 5080 Laptop RTX 4070 RTX 3060 For now, I can't seem to be able to edit Ada laptop variants (RTX 40 laptop series). Laptop Blackwell series (RTX 50 laptop series) can edit some parts of the VBIOS, but not all of them. Laptop Ampere series (RTX 30 laptop series) can edit almost everything. And finally, the links are: VBIOS Editor (Linux and Windows): github.com/Panchovix/nvidia-vbios-vix-editor Custom VBIOS loader (Windows): github.com/Panchovix/nvidia-windows-vbios-vix-loader Custom VBIOS loader (Linux): github.com/Panchovix/nvidia-linux-vbios-vix-loader Everything is open source, so you can check the code to see if there are applicable fixes and such. So if you guys can try, please let me know! If you find crashes on the vbios editor, or a specific GPU has info you can't edit and may be feasible to do so, you can raise an issue on github and I will check it out. Warning : You use these software entirely at your own risk. Any modification you make with it, anything derived from it or from its output, and any damage that results, is solely your responsibility.

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论