Process Hacker can be seen as the open-source clone of Process Explorer. Process Hacker is a Windows utility for manipulating processes, threads and services. It can replace Windows task manager. Here are the key features:
- A simple, customizable tree view with highlighting showing you the processes running on your computer.
- Detailed system statistics with graphs.
- Advanced features not found in other programs, such as detaching from debuggers, viewing GDI handles, viewing heaps, injecting and unloading DLLs, and more.
- Powerful process termination that bypasses security software and rootkits.
- View, edit and control services, including those not shown by the Services console.
- View and close network connections.
- Starts up almost instantly, unlike other programs.
In a recent version of Process Hacker (the version 2.23 to be accurate), the support of GPU monitoring has been added. Then I quickly tested the monitoring of GPU usage (or load) with FurMark. On my system, I have a GTX 460 (primary renderer) and a GTS 250 as a secondary card. Like Process Explorer, there are nodes (engines in Process explorer) that should represent GPU units or something like that. By default, the node 0 is selected, which corresponds to the GTS 250, the secondary card in my PC. To monitoring the GTX 460, I had to check the node 6. The indication GeForce GTS 250 is wrong, should be GeForce GTX 460.
I think I’ll keep using EVGA Precision / MSI Afterburner / GPU Shark to monitoring my GPUs. But for playing with system threads and processes, Process Hacker is a nice tool. What’s more, the availability of the source code makes it a great way to dive into Windows’s internals.
More information about Process Hacker can be found HERE. Process Hacker 2.25 binaries as well as the source code can be downloaded HERE.
2 thoughts on “Process Hacker 2.25, GPU Monitoring”
this is a nice replacement for task manager..
GPU area needs some tweaking imo..
with 2 cards in my system its showing the 2nd card first..primary card starts at node 6..
im noticing the nodes are for different things..eg..if i run fluidmark, i see usage on nodes 6 and 7..if i run the OpenGL demos i only see usage on node 6, but if i run the OpenCL demos i see slight usage on node 6, and heavy usage on node 7 and 12!..looks like nodes 7 and 12 are cuda maybe? while node 6 is pure graphics?
and if you select more than one node, the main graph doubles (dunno if thats the right way to explain it!)..eg..if you select node 6 and node 7, and have 100% useage on node 6, then the main graph will show 50% usage
GPU monitoring relies on D3DKMT functions (kernel mode) like D3DKMTQueryStatistics(). D3DKMT functions descriptions can be found here. D3DKMTQueryStatistics is not documented…
Comments are closed.