No video
How core voltage regulation works on modern Nvidia GPUs
My Patreon: / buildzoid
Teespring: teespring.com/...
Bandcamp: machineforscre...
Twitch: / buildzoid
Twitter: / buildzoid1
Facebook: / actuallyhardcoreovercl...
#overclocking #nvidia
Пікірлер: 48
Something I've wondered about for a while is if you could do current mode control feedforward by using the lookahead instruction cache in the GPU. It seems like there should be a correlation - at the very least at the microcode level - between the instructions going through the pipeline and the current demands, and I wonder if you could use that to improve voltage regulation.
@ActuallyHardcoreOverclocking
11 ай бұрын
the GPU would have tbe able to communicate this information to the VR controller really really fast. AFAIK not even intel's FIVR has any way of reacting ahead of time. It just has a switching frequency of over 100MHz (IIRC) so it can react really quickly negating the need for Vdroop.
@wewillrockyou1986
11 ай бұрын
I don't think you can look far enough ahead with that, not entirely familiar with the dynamics of GPU instruction queueing but I would be surprised if you could look ahead more than a few hundred clocks, which would realistically amount to maybe a tenth of the frequency of the VRM?
@jhonbus
11 ай бұрын
Good question, I was wondering the same thing. I can see that responding to pipelined instructions on the low level isn't going to be practical (response times in the 10 picosecond range) and besides, the decoupling caps take care of a lot of the dI/dt on that scale. But it seems to my admittedly 100% uninformed eye that a proactive response on the scale of "About to start rendering a frame" ought to be possible, given it's somewhat predictable and seems like it'd only need a response time of a few milliseconds... Then again thinking about it, I can imagine that this is actually going to be a million times more finicky than it first seems like, since doing this effectively means you're inherently making control inputs to the VRM output power that are larger and faster than the control loop can respond to (otherwise there'd be no point, just respond to the demand) which means you have to be 100% certain the output is going to be matched by demand otherwise you're creating a perturbation that cannot be correctly damped. In other words your supply rail is going to go outside its specs, possibly by a lot.
@shanent5793
11 ай бұрын
Modify the compiler so that it inserts an instruction to fire a GPIO at the appropriate time
@zoeyk.6338
11 ай бұрын
Possibly, you could certainly try, but you need to ask the question of if it would be worth it. Feed forward control typically requires a predictable model of the target process, which would be rather complicated to implement. (Particularly considering the propagation delay between components) A poor model would also make your voltage regulation worse at times. At the die level one may start considering reservoirs of charge to be managed, and it may be possible to implement feedforward control there
Hey BZ, it's a wonder modern Nvidia GPUs can function as well ad they do given the amount of noise that is always occurring. It's so wonderful that you hooked up the oscilliscope to the card so we could see how the voltage and the current are performing!😊
A regulators job is usually to provide a load with a certain voltage and enough current to keep that voltage up. Load transients will inevitably cause over and undershoots but by using a dc loadline these over and undershoots can be minimized and reduced in frequency at the expense of a certain amount of droop. This droop is directly related to the resistance Rll and often the "best effort" DC Rll will equal the AC Rll. This means the DC loadline droop will be about the same as the AC loadline ripple for about the same current variation. DC loadline propagates less noise into the power-system and this noise has lower frequency while AC loadline keeps the general voltage higher. The choice is up to the capabilities and limits of the load. If the voltage is close to the loads absolute maximum tolerated voltage, overshoots may not be tolerated. In this case the DC loadline must be used.
Great content as always.
Very interesting. Would be nice to see your setup, like where you attached your probes etc.. I guess it is difficult to measure exactly what going on with a variable load , what is the setup for the measurement in the datasheet for the controller ? I would guess they dumped it straight into a resistive load ... maybe you could attach your probes across a VR mosfet for the measurements ? .. they usually have a very well known Rds_on.. of course that would still give a very wavy measurement given the transition time they have..... a probe on the gate voltage would be interesting for comparison.. to see what delay there is.. Just from the top of my head.. may be totally garbage.. Thanks for the video ! Love it !
Can you explain what the AC Droop percentage setting does on the MP2888A does if AC loadline doesn't compensate for vdroop?
@ActuallyHardcoreOverclocking
11 ай бұрын
I'd expect lower AC droop settings to just increase overshoot and also potentially create worse undershoot too if it starts to negatively affect the VRM's ability react to fast successive transients.
Beautiful scope setup and probe connection. Really nice picture.
Always click and watch even if I don't understand 99%. I just hope one day when I get struck on the head I become Buildzoid Jr
I would be interested to see a gpu running with a limited load, e.g. a low intensity graphical stress test with artificially decreased cpu strength so that the gpu is idle awaiting cpu ~50% of the time. I imagine that this might create the same effect of a clear start and end of higher current usage
Excellent insight, thanks BZ
the more capacitors the smaller the over/undershoot?
@Seanweekhaizhen
11 ай бұрын
Most likely, remember the whole 30 series capacitor fiasco? Just replacing 2 smd aluminium polymer caps with mlccs gained der8auer 30 mhz
@float32
11 ай бұрын
The capacitor acts as a very nearby, very good, power source, but one that runs out really fast. Once it runs out, you’re left with further away capacitors, with lots of wire between, that aren’t so great. So, the more capacitance, the longer the super nice power source lasts, so less droop. In reality, the main power supplies job is to keep those capacitors full, because it has absolutely no hope in supplying steady power across the board. It sees a much smoother, and delayed, power draw, compared to what the capacitors see. That delay is what causes the droop and overshoot. It’s always a little too late for everything it does.
@ActuallyHardcoreOverclocking
11 ай бұрын
yes that's why I spend a somewhat unreasonable amount of time looking at capacitor configurations on GPU and motherboard PCBs. Though just using lots of high end caps doesn't automatically make the voltage regulation good since how the VRM controller is set up and what inductors are used also plays a role.
@benjaminchung991
11 ай бұрын
For some more context on what's happening here, Robert Faranec has a really fantastic video that covers a lot of these topics: "Do you need thick copper layers in PCB for high currents? Are you sure? | Steve Sandler" that's very worth watching if you're interested in VRM design and what the thought processes are behind the design of both the VRM and the PCB layout between the VRM and the ASIC.
@abheekgulati8551
11 ай бұрын
@@benjaminchung991 Thanks for pointing to that video!
Super nice video
@HardwareScience
11 ай бұрын
It’s nice to see practical electronics applied to computer hardware
I was wondering, if the clock is stretched out during undershoot, do they also exploit the overshoot to compress it and speed up the core?
@arjen7024
11 ай бұрын
on that same tangent, if that can't work (I don't think it can?) could it perhaps make sense to insert a "dummy" load to reduce that overshoot? I mean, that would be wasting power but it would perhaps allow for more aggressive voltage regulation that may make up for that
@proesterchen
11 ай бұрын
Overshoot happens when the core load suddenly decreases significantly, i.e. when speeding up the core wouldn't gain you much because you've just entered a low-load scenario. It's like idling your ICE higher while parked at a red light. Not particularly productive.
@Tesseract23
11 ай бұрын
Ah, now that you mention it, it's obvious, I really should have thought about it a bit longer before asking@@proesterchen
Could it be an advantage of this type of regulation being lower idle power consumption as idle voltage would be below that of DC regulation (assuming both types are set to have the same voltage during the load)?
@ActuallyHardcoreOverclocking
11 ай бұрын
at idle the card just sets the voltage to something between 0.7 and 0.9V depending on which generation it is.
we ever find out if this applies to 10-series?
TY for sharing your insights.
Is it somehow connected to GPU effective clock? In HWiNFO64 i see how it's start from 2040 MHz (for example) dropping during benchmark and at the end back to 2040 MHz again. At same time, on GPU clock grapth it's start from 2070 MHz and step down to 2025 MHz.
@iDeparture
11 ай бұрын
There's is a hidden power save features with the gpus few ways to disable it. "Forcing constant voltage" In msi afterburner. 1 other way is going into the nvidia control panel. And changing the power setting and I may be wrong with this one ht reflex plus boost ive heard does as well as if your bottlenecked ik for a fact it does the latter "Boost makes it so that your video card runs at full power 100% of the time, so that you are getting a new frame as often as possible sent to your monitor. Since the game is so CPU bound, your GPU will typically downclock itself and not push a new frame to your display as often as it could, so your eyeballs are waiting a few extra milliseconds for the latest frame."
@rusTORK
11 ай бұрын
@@iDeparture Hm... Yeah, i forgot about NVIDIA's "Power management mode" - Prefer maximum performance. But Precision X1 from EVGA (which i use) got "Lock Boost" button. Also it's have got Voltage slider to keep it on 100% (probably for stability).
@iDeparture
11 ай бұрын
@rusTORK yeah, maxing the slider and forcing 1.1v Max will negate the frequency fluctuation. And evgas gpu oc tool is fine If msi ab was gone that's the next best. Gpu tweak it(and most asus 3rd party software with the exception of memtweak it) is dogshit
@Koozwad
11 ай бұрын
was thinking that too, IIRC the 9xx cards and earlier didn't have dynamic clocks but I could be wrong
Turned into a good video! 👍
I don't see what is the benefit that i can apply to gain more performance or is it only educational video??
Why not just use a massive capacitor on the core to prevent voltage fluctuations (not filtering)? It's excessive, but to illustrate let's say a 10,000uF capacitor. Does it just not matter?
@pf100andahalf
11 ай бұрын
@TheEasternQ-CC My mistake for not clarifying that I meant to prevent voltage fluctuations. I've been out of the electronics industry for a long time and it shows. But yeah, filtering would be smaller ones like you said.
@shanent5793
11 ай бұрын
Large capacitors can act like inductors at high frequencies. Some ICs use layers in the interposer or substrate to add capacitance with low inductance
@pf100andahalf
11 ай бұрын
@@shanent5793 I see. Thanks for the info.
seems to me they made certain sacrifices with the newer cards
last
All I seen was a noisier VRM.
First