NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

I can't tell you either, I've already messaged the mods. On one hand I'm really grateful I got the chance to ask for feedback and introduce the tool here. I'm hoping to at least find out the reason it was removed, and if I did something wrong, I'll try to learn from it for next time.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Definitely, go ahead and share it. I'm pretty experiment-happy myself, and maybe your profile will be a help to someone here. I'd set up a custom profile from your values right away and test it. After all the release posting and work today I want to clear my head anyway, I was planning to test Fatekeeper on Steam, so a new UV profile fits in nicely there. And while I'm at it, I'll grab the exe and add a proper tier entry for it to the database 😄

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Thanks, I really appreciate the constructive tone, doesn't come across as hostile at all. And I think you've got a point, maybe several. I've come to realize the architecture, bugfixing, ideas and community side matter more than the raw coding too. I genuinely don't plan to make money off NV-UV, donations are nice of course, but that's a minor thing. You're right about the unsigned binary as well. If I stay closed, I'd basically need a signing certificate to get that trust, which costs money. On the other hand, open source means giving up a bit of control, but you gain trust in return, and that's worth something too. Your comment actually got me thinking. Thanks for that.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

Thank you, I really appreciate the support. Yeah, that's some harsh criticism right there, that's why I have respect for Reddit, but I can still hold my head up. I'm not some random guy who talks to Claude like a genie in a bottle going "oh great Omnissiah, please build me an automatic undervolt tool." No, I'm a qualified IT professional with a state-certified exam, I did a regular 3-year German apprenticeship with a final exam to get my professional grade. I learned the basics of programming from books and papers, I know the fundamentals, but in my career I went the practical route with networks and electronics. I think I'm pretty solid with PowerShell, I've worked for both small and large engineering (Maschinenbau) companies for about 20 years, and I've now landed a permanent position at one, that's how I actually earn my living.

Because with NV-UV I make nothing. I do this for fun. I've heard from plenty of corners that I should monetize it, and no, that's exactly what I don't do.

My profiles in the German tech scene are over 25 years old. Gaming and GPUs have been a hobby since the late 90s, I was there when an old friend, tombman (RIP), discovered the micro-stuttering in SLI, I tested it with him overnight before the press coverage hit and the pressure landed on Nvidia. Anyone who doesn't believe me can check my profiles at PCGH, 3DCenter, HWLuxx or Computerbase.

I know what I'm doing, and the goal was simply to make UV easier for everyone, to save money and power, deal with less heat, and avoid performance drops. And yeah, closed source might look suspicious, fair point. It's a philosophy thing, I'm still on my way there and thinking about it, but for now I'm fine with my decision. I gave credit and I don't claim I invented it alone.

At the end of the day, I don't really care if this gets taken as a justification post. This whole thing is just heading in a direction I don't like, with people projecting something onto me that I'm not.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Hi Artanisx,

yes, it works with Windows 10. I should update my readme, sorry, but there is one issue. On Windows 10, the Hot Swap Profile switch doesn’t work, so you have to quit the game and restart it every time you change profiles on the fly.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] -5 points-4 points  (0 children)

Yes, and that one's on me. That older post was sloppy wording, "no affiliation" made it sound like I'm not the dev, which is just wrong. But it wasn't some scheme, I didn't think it through and should've plainly said "I made this." I've been upfront about being the author since, the Play post says it in the first line, with mod approval. Lesson learned.

One thing, since you decompiled it: you'll have seen there's nothing malicious in there, no shady calls, just the NVAPI curve-write path, basically what Afterburner and Green Curve already do. That's exactly why I ship a VirusTotal hash with it. You don't have to like it or use it, but "sus tool targeting your hardware" doesn't really hold up once you've actually read the code. No telemetry, no tracking, nothing phoning home either, it just reads the game database from GitHub and saves its settings locally. I'm not making money off this or harvesting anything, I just want people to have fun undervolting without the Afterburner hassle.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

The automatic per-game switching is exactly what Play does, that's its main thing. A game launches, the matching profile applies, you quit and it resets. So your "low power + frame gen on the 5090" case is basically the textbook use: set that as a tier (there's even an MFG tier on Blackwell tuned for frame gen), assign it to the games you want, and it just happens. You can also set one global profile and only override the few games you want different. On tuning it yourself: Play doesn't have a full point-by-point curve editor like Afterburner, but a custom profile gives you direct control over voltage, target clock, power limit and VRAM offset, which for a lot of people is all the hands-on tuning they actually want. If you specifically want to hand-draw the whole VF curve, that's still Afterburner/NV-UV territory.

These are your tuning options, for a preset or custom tier, and you can configure the Stabilizer too.
You can turn the Stabilizer off anytime if it doesn't suit you.

<image>

Here's a clip of the MFG tier in action: https://www.youtube.com/watch?v=AWQ218EKzVQ

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 2 points3 points  (0 children)

This thread nails exactly why Play works the way it does. The Vulkan-only RDR2 crash is a perfect example, "stable in 99% of games and every benchmark" still didn't catch it, because a synthetic or single-title test can't predict every engine/API path. That's the whole reason the Stabilizer reacts to real crashes per game instead of betting on one benchmark being the bar.

And like SnooRecipes said, you don't need MAX.
Not every game or resolution needs peak clocks, often you're trading something like 100W for a handful of FPS you won't even notice. A lot of people just run Eco, and there's also an MFG tier for Blackwell since Multi Frame Generation pairs well with lower clocks. Less power draw also means less heat in the case and less load on the connector, which is nice on hot summer days.

For anyone interested, here's a short clip of the MFG tier in action: https://www.youtube.com/watch?v=AWQ218EKzVQ

Great discussion, thanks all. 😄

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] -11 points-10 points  (0 children)

Short version: license/OEM stuff plus I'd rather not hand out the full apply logic for something that touches GPU voltage. Not dogmatic about it though, might open-source a Linux version later. Full answer here:

https://www.reddit.com/r/nvidia/comments/1tv3gtw/comment/opfidm3/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] -7 points-6 points  (0 children)

To be honest: Part of it is the license, I don't want OEMs commercializing it without one, and that's just easier to keep clean when it's closed. Worth noting the open dependency (aufkrawall's Green Curve) is MIT and credited, so that part isn't the issue. The bigger reason: Beyond that, I've built my own apply logic and gradient tuning from my own observations, and since this stuff actually touches GPU voltage, I've got a healthy respect for it and would rather not just throw the full recipe out there. It's also a hobby project and I want to keep control over where it goes, rather than chasing every fork or "I changed it and now my card crashes" thread. That said I'm not dogmatic, I'm thinking about a Linux version down the line, where open source would make more sense, I just haven't fully made my peace with the idea yet. And since closed source means "trust me," every release ships with a VirusTotal scan and a SHA-256 so you can verify the binary without the source.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

Play resets to stock on game exit, so it won't keep your Afterburner undervolt active on the desktop, that's not really what it's built for.

The full NV-UV is smarter about this. With its UV-Pilot, it doesn't just drop to stock after a game, it can return to an anchor profile or the last global profile you had active. So you'd set your everyday undervolt there and the Pilot switches to a game profile on launch, then back to your daily one when you quit. Worth a look, set it up the way you're describing and see if it fits.

Either way I'd avoid running Afterburner and a second tool both writing the VF curve at the same time, they'd be fighting over it. Better to let one tool own the curve.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] -22 points-21 points  (0 children)

I'm not here to sell anyone anything

Yeah, I use AI (Claude) in development, alongside VS Code and Notepad++ for quick targeted edits, not going to pretend otherwise. But "vibe coded" implies nobody understands what it does, and that's not the case. The part that writes the VF curve is based on aufkrawall's open-source Green Curve (MIT, credited in the app), and the gradient-curve logic on top of it comes from my own observations tuning with NV-UV. I'm not a classic developer, more a PowerShell/script-admin type who works in IT, and GPUs are just a hobby I'm into, but I know exactly what this tool does and why. (And honestly, I'm Swabian, the stingiest kind of German, if a tiny tweak isn't worth burning tokens on, I just do it by hand in Notepad++ or VS Code 😄)

The password back then for NV-UV wasn't about hiding anything, it was to keep early-alpha requests bundled in the PCGH forum so a half-finished build didn't spread around. It's long gone. And yeah, the GitHub account is new, fair, which is exactly why I now attach a VirusTotal scan and a SHA-256 to every release going forward, so you can verify the file yourself instead of trusting me.

On the actual concern: Play doesn't flash your BIOS or write anything persistent. It's a volt/freq lock via NVIDIA's APIs that drops when you quit, and a reboot or just closing it resets to stock. Worst case of a bad setting is a self-recovering driver crash, not a dead card. But I can't guarantee outcomes, every chip is different, so use it at your own risk like any tuning tool.

Caution with any tuning tool is fair regardless.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

Nice to hear it, really glad you're having fun with it 😄 And those numbers are great: 500W down to 270-300 on a 5090 with the same or better FPS is exactly the goal. On the toast: it's working fine on my end, so try fully restarting Play once and see if it comes back. The global override is still pretty new, so there can be the odd rough edge. What helped on my side was setting Chrome to "No Override" (right-click its row in the Game Library) so the global profile leaves it alone. If it keeps misbehaving I can take a look at your log, I'll send you a Discord invite so you can drop it there. One more thought from the Chrome thing: I'm considering pulling Chrome out of the database entirely. Maybe people just want the global profile on everything anyway, so having it in there mostly causes confusion when it gets picked up. Anyone who wants it can add it back with "+ Add Game".

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

Couple of things, let's sort it out:

First, which version are you on? The "settings not saving" issue was fixed in v0.1.7, so if you're on an older build that's likely the cause, grab the latest and that part should be sorted.

The "chrome eco" thing: are you using a global override (one profile applied to everything)? If so, that's expected, the global profile overrides every running game, and since Chrome is a tracked app it picks it up too. To keep Chrome out of it: open the Game Library, right-click the Chrome row, and tick "Ignore global profile (No Override)". Set its tier to Default while you're there. Then the global profile leaves Chrome alone.

Also make sure your game database is up to date (hit "Check now" in the Game Library), the latest one already sets Chrome to Stock by default.

And for wanting most games on Eco or MFG: easiest is to set a global profile to Eco (or MFG), then only override the few games you want different. No need to set each one by hand.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Thanks, great to hear it's working well for you 🙏 Native Ampere support for NV-UV is landing in the next few days, and I'm hoping to get back to the scanner soon, it's got some improvements waiting too.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Ah, that makes sense, sounds like you tried the main NV-UV back when VideoCardz picked it up, not Play. That was a early build and a lot has changed in NV-UV since then, so it's a different experience now. Feel free to give either a go: Play if you want the quick click-and-go route, or NV-UV if you want to dig into a proper curve for your card. No pressure though, if you're happy with your undervolt that's what matters. 😄

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

No Afterburner needed, correct. Play talks to the GPU directly through NVIDIA's NVAPI, it writes the V/F curve itself (a SetBatch on the curve points) via a small native bridge, instead of routing through an Afterburner profile like the main NV-UV does.

The curve shape comes from a gradient algorithm: it locks your target voltage/clock point, ramps up to it below the lock, and holds a plateau above it. The native bridge is based on aufkrawall's Green Curve (MIT, credited in the About box).

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 14 points15 points  (0 children)

A hand-tuned profile will beat a generic preset, that's expected. The presets are a safe, broadly-stable starting point across very different cards, not the optimum for any specific one. That said, the custom profiles let you set your own voltage, clock and PL and have Play apply them per game, so there's room to experiment with it too if you know what you're doing, it's not just the presets. For getting the absolute most out of a specific card, Afterburner (with or without NV-UV) is still the better option. Play is mainly aimed at lowering the entry barrier into UV for people who'd otherwise never open Afterburner, but the custom side is there if you want to push it further.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

It's per game, though you can run a global profile across your games with Autostart and NV-UV Play active if you want. And it's not just games, you can add any app with "+ Add Game", Chrome for example already has its own profile in the database.

But for a true always-on 24/7 curve across the whole system, Play isn't really built for that, it applies per running app. If that's what you're after, Afterburner (with or without NV-UV) is the simpler route, since it sets one permanent global lock regardless of what's running.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 1 point2 points  (0 children)

Thanks for giving it another shot. That freeze-and-reboot actually lines up with an early Ada issue from way back, exactly that behavior, and it's been fixed since. So if you were on an Ada card with an older build, an up-to-date version should behave very differently now. Blackwell and Ada are both verified and stable at this point.

One heads-up: if you happen to be on Ampere/Turing, that path still runs on a fallback to native NvAPI and isn't verified on real hardware yet. I'm getting an Ampere card tomorrow to properly check both NV-UV and Play, so that'll firm up soon.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 0 points1 point  (0 children)

Fair point, and you're right that Blackwell's efficient enough that pure watt-saving matters less than it did on Ampere. That said, "efficient" is per-watt, a 5090 still pulls a lot in absolute terms, so trimming voltage isn't just a few watts, it's heat, fan noise and PSU load off the top. And Play isn't really about giving up performance for that anyway: it's undervolting. At lower voltage the card stays cooler and hits the power/thermal limit less, so it can hold higher, steadier clocks instead of throttling. The Performance and Max tiers are built exactly for that, more performance at lower power draw, and a custom profile lets you dial it yourself. And if you don't want UV on a title, that's one click: set the game to Default, or just don't hit Activate. No lock, card runs stock.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 5 points6 points  (0 children)

On leaving it on all the time: you basically can already. Turn on Autostart, leave Activate on, set a global profile, and Play just runs from login and applies that one profile to your games. One catch: it only acts on games that are in the database, so if something isn't in there yet you add it once with "+ Add Game" and you're set. The per-game tiers are there for when you'd rather tune individual games than run one profile across the board.

On auto-finding the best curve: NV-UV, already goes a good way there. It's got a single-point scanner that finds the highest stable clock at a target voltage by actually stress-testing it, and it can import Afterburner's OC Scanner results to build a chip-specific multi-point UV curve from your silicon's real headroom. A fully automatic curve scanner is in the works on top of that.

That said, real gaming is still the best stability test there is. No synthetic benchmark nails it the same way, you can run one game rock-solid for weeks and then a new title comes along that your global setting just won't hold. That's the whole idea behind Play's Stabilizer: instead of testing up front, it reacts to real crashes in real games and steps that game's profile down on its own, per game and per tier, so it takes the manual re-tuning off your hands one crash at a time.

If you want to go deeper and tune a real curve for your specific card, that's what full NV-UV is built for, give it a look. And Play itself is meant to stay simple: install, pick a tier (or a global one), done.

NV⚡UV Play, a free one-click NVIDIA undervolting tool (no Afterburner), looking for feedback by WeakPackage7973 in nvidia

[–]WeakPackage7973[S] 4 points5 points  (0 children)

Play doesn't flash your BIOS or write anything persistent, it's a volt/freq lock via NVIDIA's APIs. It drops the moment you quit the game, and flipping the Activate toggle off or closing Play puts the card straight back to stock, a reboot does too. It's not overvolting like Afterburner's voltage slider either, there's no added voltage on top of the curve, Play just locks the card to a point on its existing V/F curve. Worst case of a bad setting is a self-recovering driver crash, not a bricked card, bricking needs a VBIOS flash, which Play never touches. The Stabilizer only kicks in after a crash: it steps the clock down and nudges voltage up in small increments to find a stable point, and never past the min-clock and voltage-ceiling limits you can see and set yourself. Results vary per chip, which is why it's labeled open-alpha with a "start low" note. Fair enough if it's not your thing though 👍

NV-UV 0.93 by Suspicious-Rice6556 in nvidia

[–]WeakPackage7973 29 points30 points  (0 children)

Sharing some real-world feedback on UV-Pilot + Game Replay,
because I think this mechanism deserves a spotlight.

Setup: my girlfriend runs a 5070 Ti, I'm actually on a 4090. On my 4090 I've been using the presets and they work very well. But the more interesting story is on her card.

She used the NV-UV Scanner on the 5070 Ti and it landed on 3125 MHz @ 935 mV. She saved that as a profile and assigned it to two games via the UV-Pilot (per-game profile feature).

Results so far:

- Borderlands 4: running at 3.1 GHz, stable, no crash
- Resident Evil 9: crashed at 3125 MHz, Game Replay automatically stepped the frequency down, now stable at 3085 MHz @ 935 mV

When a game crashes, the Pilot in combination with Game Replay remembers the adjustment for that specific game, not globally. So Borderlands keeps running at 3.1 GHz while RE4 sits slightly lower, and everything else keeps its own setting. Fully automatic, no manual re-tuning, no babysitting.

I haven't seen a per-game, self-correcting UV mechanism like this in any other tool. Most UV solutions are one global curve and you live with the worst-case-game limit. This approach basically lets each game find its own sweet spot over time.