• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.
  • The forums have been upgraded with support for dark mode. By default it will follow the setting on your system/browser. You may override it by scrolling to the end of the page and clicking the gears icon.

How good is the sensor precision?

thatguythere

New Member
Joined
Apr 30, 2015
Messages
6 (0.00/day)
Hi there,

I'm interested in the precision of the GPUZ readings, especially GPU temperature, fan speed, voltages, currents and power in/out. I need those values to build a model of the cooling system and simulate it using Matlab. So what I'd like to know is:

  • How precise are the temperature sensors of GPUs in general? I own a Powercolor R9 290 PCS+ and I guess the dies of a series all contain the same sensors. Does anybody have details about the sensors at his/her disposal?
  • The fan readings should be precise, they're only simple PWM signals.
  • If my quick Google research is correct, VDDC is the GPU core voltage and VDDCI the I/O bus (VRAM <-> GPU) voltage. Is this correct? How precise are the voltage and current measurements? As the GPUs produce pretty short and rather significant spikes (see http://www.tomshardware.com/reviews/graphics-card-power-supply-balance,3979.html) and GPUZ has a minimal time increment of 0.1s, the values must be averaged out pretty significantly.
  • The power in/out is the most important value. Same question as above: how far can I trust the readings? Also, where does the difference between power in and power out go? To the mainboard? During the built-in graphics test, the power in value exceeded the power out by approximately 10W all the time. Which value goes straight to the cooling system?
  • Just out of curiosity: Why are the 0.1s time increments in reality 0.11s according to the log file?

I'm very grateful about every helpful answer and thanks in advance.
 
Beyond my knowledge refer you to @Wizzard

Try Pm and elaborate to him
 
The accuracy of sensors varies wildly. Only way for you to be certain is to hook up your own calibrated testing equipment to the board and compare. If you go that route, show us your data, this will be interesting.

Why are the 0.1s time increments in reality 0.11s according to the log file?
I'm just using WM_TIMER which isnt guaranteed to be 100% timing accurate. exact timing = more cpu load & power consumption, neither of which is worth it for this kind of application.

VDDC is the GPU core voltage and VDDCI the I/O bus (VRAM <-> GPU) voltage
yes

difference between power in and power out
the voltage controller on your card measures output current (gpu voltage) and input current (12v), the difference should be lost in power consumption, so basically heat coming off the mosfets

Which value goes straight to the cooling system?
the majority of gpu power goes to the heatsink. there is also some cooling through the solder balls into the PCB
 
The accuracy of sensors varies wildly.

Meaning? An educated guess would suffice to decide an approximate error rate. The temperature is the value to be controlled after all, so it'd sure be nice to be reliable. There is no use simulating everything if the whole thing has an error range of +-5°C ;). Unfortunately, I can't verify any of these values, especially the core temperature. It will "only" be a minor 30 page paper and the hassle would exceed the use. There will be a whole lot of guesswork anyway as there are absolutely no details about the cooling system and fans (company secrets etc), so I try to get at least a few accurate values. Though I might try to build a simplistic CFD model nonetheless.

output current (gpu voltage) and input current (12v)

I'm a bit confused by the phrasing. Do you mean it measures the output current at the gpu voltage and input current at 12V?

the difference should be lost in power consumption, so basically heat coming off the mosfets

Then it would be reasonable to only consider the power out value.
 
There is no use simulating everything if the whole thing has an error range of +-5°C
I wouldn't be surprised to see +-5°C.

Do you mean it measures the output current at the gpu voltage and input current at 12V?
yes, because from its (voltage controller) perspective, output = gpu voltage
 
That's bad, but I could still work with the power values... You'd think it wouldn't be that hard to integrate a somewhat decent sensor.
I think that it would be hard to add an external sensor into the die but a thin film element embedded in the TIM could work. Best of luck to find a really thin one.
 
@thatguythere Are you doing this as a project for a university degree or similar? If so, I think it would be reasonable to go with the values from GPU-Z and explain the error rate as due to things beyond your control, such as hardware/software limitations and trade secrets. While the accuracy wouldn't be quite what you want, it wouldn't change how your project functions and wouldn't cost you any assessment points either.

Heck, if you really want to try and quantify the errors, you could even buy, say, 4 samples of a particular model of graphics card (not too high end to keep costs down) and compare readings during operation to average out the errors. Obviously I mean for you to run one card at a time! Also, one of those handheld thermometer guns with the laser pointer could be used to measure the temperature of various parts of the card to get a feel for the actual temperature it's running at. It wouldn't be all that accurate, but should at least help reduce gross errors.
 
That's bad, but I could still work with the power values... You'd think it wouldn't be that hard to integrate a somewhat decent sensor.
It's not just that the sensor is inaccurate, because I would expect that a thermistor based temperature sensor would be accurate within +/- 5%. The problem is that the sensor doesn't describe the distribution of heat across the entire die. For example, many CPUs have a thermal diode for each core, but every core isn't the same temperature and that's because the CPU isn't a constant temperature across the board. So while you may want a number that's more precise, the feasibility of getting a truly precise number is almost non-existent. It's also not important because temperature is to give you an idea for how hot an IC is running, not what it's absolute temperature is.

It may help us if you could describe what you're trying to accomplish. Asking questions without knowing the goal makes answering said questions more difficult.
 
mstenholm: You're probably right, I forgot about the dimensions. As a mechanical engineer to be, I'm not used to such small measurements ;).

qubit: Yes, it's for my modelling and simulation paper. I thought about this model because it's simple to loop benchmarks, log everything necessary and compare the results to the simulation. I recon there aren't many other cases where the documentation can be done this easily at home. Your approach to the error rates will most likely be the one we'll work with as there are so many uncertainties that it won't really matter.

Aquinus: True, true... Well, our task is to simulate a dynamic system using Matlab (or Modelica). As mentioned above, the GPUZ logging function provides a big advantage over other systems where we'd probably have to work without any real life values we could access to compare the simulation to. We will however have to simplify some of the physical processes, especially the fluid dynamics, as the complexity would increase immensely otherwise. Considering this, the inaccurate temperature readings may not be a big deal after all.
 
Sounds like an epic project there, dude. :cool: Welcome to the land of nerdville. :D Glad to help.

Please keep us updated on your progress, this is really interesting stuff for me.
 
I've been born a nerd, my friend ;). I'll gladly show the results, but you need to be patient. The paper is due in september and there's still a lot to do.
 
Back
Top