Skip to content

OpenSource tool for monitoring, configuring and overclocking NVIDIA GPUs

Notifications You must be signed in to change notification settings

graphitemaster/NVFC

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

NVFC

Image

Open source tool for monitoring, configuring and overclocking NVIDIA GPUs

Reverse engineering

All of the useful interfaces for controlling power states and fans with NvAPI is undocumented. This tool implements interfaces that were discovered by carefully watching functions obtained through nvapi_QueryInterface as called by existing programs like EVGA Precision X.

Why

The result of this effort is that there is now a sufficent base to build an open source tool that can monitor, configure and overclock NVIDIA GPUs that is lightweight and isn't branded like a tacky gamer product.

Similarly, tools like EVGA Precision X and RivaTuner to name a few, often rely on injection techniques to provide functionality that most people don't need, such as an overlay. These injection techniques can often trigger anti-tamper and DRM solutions in video games, preventing them from ever running. NVFC doesn't have this problem.

Since the general interface is written like a library, this can also be used in video games to modify and tweak the GPU.

Features

Currently the following features are supported

  • Getting display driver version and branch info
  • Enumerating all NVIDIA GPUs
  • Getting names
  • Getting serial numbers
  • Getting PCIe identifiers
  • Getting voltage
  • Getting temperatures for: gpu, memory, power supply and board
  • Getting current clocks for: core, memory and shader
  • Getting base clocks for: core, memory and shader
  • Getting default clocks for: core, memory and shader
  • Getting boost clocks for: core, memory and shader
  • Getting usages for: gpu, framebuffer, video engine and memory bus
  • Getting current overclock profile
  • Getting current fan usage and policy
  • Setting fan usage and policy

Currently still reverse engineering how to set overclock profiles and over volting

System Requirements

  • NVIDIA display driver 384.76 or higher
  • Windows 7, 8 or 10
  • NVIDIA 400 Series or higher

How To Build

Written in C++17 so Visual Studio 2017 solution file included.

About

OpenSource tool for monitoring, configuring and overclocking NVIDIA GPUs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published