Get GPU/CPU/... temperature?

Started by
8 comments, last by dgreen02 14 years, 3 months ago
Hello! Is there any way to get cpu/gpu/someother temperature from my pc trough any programming language? (C++ on Windows preferable :)) My main target is to get the GPU temperature, I have a nvidia card and its overheating when playing some heavy games, so I would like to make a little software to make some sound if a certain temperature is reached. Any suggestions? Thank you and happy new year!
Advertisement
I think this is really vendor specific, it will probably involve interfacing directly with the motherboard or video driver and knowing which IOCTL represents the code for requesting the temperature. I reverse engineered a motherboard driver once for this purpose. It's not as hard as it sounds, download a manufacturer motherboard/BIOS utility and try to hook the function that gets called when that app needs to display the temperature to the user. Then watch for a call to DeviceIoControl() in Windows, or ioctl() in linux and see what the inputs / outputs are.
Or you could download something like SpeedFan.
Usually directly when you boot the computer, you press del to enter bios and then go in hardware monitor and you can read the same temperature than speedfan would offer. For the video card you might need something like NvTuner for an nVidia card.
I think the OP was asking how to obtain this info programatically in his own program. Looking in the BIOS or using a 3rd party program don't really help too much, except for using a 3rd party program to attach a debugger and see what ioctl's its using.
Quote:Original post by cache_hit
I think the OP was asking how to obtain this info programatically in his own program. Looking in the BIOS or using a 3rd party program don't really help too much, except for using a 3rd party program to attach a debugger and see what ioctl's its using.


Sure... but he said:
Quote:
My main target is to get the GPU temperature, I have a nvidia card and its overheating when playing some heavy games, so I would like to make a little software to make some sound if a certain temperature is reached.

If that is the entire motivation, the just downloading speedfan, and setting up an alarm on the configuration->events page would suffice.
Look at WMI (Windows Management Instrumentation), and more specificaly, here.
- Iliak -
[ ArcEngine: An open source .Net gaming framework ]
[ Dungeon Eye: An open source remake of Eye of the Beholder II ]
Quote:Original post by KulSeran
Quote:
My main target is to get the GPU temperature, I have a nvidia card and its overheating when playing some heavy games, so I would like to make a little software to make some sound if a certain temperature is reached.

If that is the entire motivation, the just downloading speedfan, and setting up an alarm on the configuration->events page would suffice.



Point taken :)
Thank you all! Happy new year :)
Btw, if you're using a Nvidia card they have tools that will overlay the info on your games etc.

http://www.nvidia.com/object/system_monitor.html

This topic is closed to new replies.

Advertisement