Hardware information utility for Windows
NWinfo is a Win32 program for collecting system and hardware information.
Windows 7 and later
Windows XP and later
.\nwinfo.exe OPTIONS
.\nwinfo.exe --format=json --output=report.json --cp=UTF8 --sys --disk
Exports system and disk information to report.json in JSON format.
.\nwinfo.exe --pci=03
Prints information about all PCI devices in the class code 03 (Display Controllers).
.\nwinfo.exe --format=html --output=report.html --net=active,phys,ipv4
Exports active physical network interfaces with IPv4 addresses to report.html in HTML format.
FORMATFORMAT can be YAML (default), JSON, LUA, TREE, or HTML.FILEFILE instead of printing to the screen.CODEPAGECODEPAGE can be ANSI or UTF8.UNITUNIT can be C (Celsius, default), F (Fahrenheit), or K (Kelvin).FORMATFORMAT can be NONE (default), BASE64, or HEX.NAMECPUZ162, NwHwIo, and PawnIO.NONE to disable driver usage.FILE]FILE specifies the filename of the CPUID dump.FLAG,...]GUID{B16B00B5-CAFE-BEEF-DEAD-001453AD0529}.FLAGSACTIVE Exclude inactive network interfaces.PHYS Exclude virtual network interfaces.ETH Include Ethernet network interfaces.WLAN Include IEEE 802.11 wireless addresses.IPV4 Show IPv4 addresses only.IPV6 Show IPv6 addresses only.SGN]SGN specifies the ACPI table signature, e.g., FACP (Fixed ACPI Description Table).TYPE,...]TYPE specifies the SMBIOS structure types, e.g., 2 or 2,4,17.FLAG,..]PATH\\.\PhysicalDrive0 or \\.\CdRom0.FLAGSNO-SMART Do not print disk S.M.A.R.T. info.NO-VOL Do not print volume info.PHYS Exclude virtual drives.CD Include CD-ROM devices.HD Include hard drives.NVME Include NVMe devices.SATA Include SATA devices.SCSI Include SCSI devices.SAS Include SAS devices.USB Include USB devices.FLAG,...WMI, ADATA, HIDENOSMART, ATA, SAT, SUNPLUS, IODATA, LOGITEC,PROLIFIC, USBJMICRON, CYPRESS, JMICRON, ASMEDIA, REALTEK,MEGARAID, VROC, HIDERAID, and CSMIAUTO.DEFAULT to specify the above features.ADVANCED, HD204UI, MEMORY, RTK9220DP,ASM1352R, AMDRC2, NOCSMI, and CSMIRAID.FILE]FILE specifies the filename of the EDID dump.CLASS,..]CLASS specifies PCI device class codes, e.g., 0c05 or 03,0c05.FILE]FILE specifies the filename of the SPD dump.FLAG,..]FLAGSCERT Parse UEFI Secure Boot signature databases.MENU Print UEFI boot menus.VARS List all UEFI variables.TYPE]TYPE specifies the device type, e.g., ACPI, SWD, PCI, or USB.OFFLINE_PATH]
Print Windows driver store info.
OFFLINE_PATH specifies the path of the offline system, e.g., D:\ or E:\\Backup.SRC,..]SRC specifies the sensor provider.LHM, HWINFO, GPU-Z,CPU, DIMM, GPU, SMART, DISK, NET, IMC, INTEL, and ZEN.NAME]NAME specifies the product policy name.hw_report.ps1 is a PowerShell script that generates and displays a detailed hardware and system report using nwinfo.
You might need to temporarily allow script execution by running the following command:
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
| Vendor | CPUID | Temperature | Voltage | Power | Clock |
|---|---|---|---|---|---|
| Intel | ✅ | ✅ | ✅ | ✅ | ✅ |
| AMD | ✅ | ✅ | ✅ | ✅ | ✅ |
| VIA / Zhaoxin | ✅ | ✅ | ❌ | ❌ | ❌ |
| Vendor | API | GPU Usage | VRAM | Temperature | Power | Frequency | Voltage | Fan Speed |
|---|---|---|---|---|---|---|---|---|
| NVIDIA | NVAPI | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| AMD | ADL2 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Intel | IGCL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Generic NPU | DXCore | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Generic GPU | D3D | ✅ | ✅ | ✅ | ✅ | ❌ | ❌ | ⚠️ |
Notes:
VRAM refers to the dedicated video memory only.Frequency refers to the GPU core frequency.Power refers to the board power draw.NWinfo uses libcdi to access S.M.A.R.T. data.
libcdi is a dynamic library based on CrystalDiskInfo.
Note: NVMe requires Windows 10 or later.
The --sensors[=SRC,..] option reads sensor data from the following providers. If SRC is omitted, NWinfo tries all providers and prints the ones that initialize successfully.
| Provider | Source | Notes |
|---|---|---|
LHM |
LibreHardwareMonitor | Uses liblhm.dll and LibreHardwareMonitorLib.dll to enumerate LibreHardwareMonitor sensors. |
HWINFO |
HWiNFO shared memory | Requires HWiNFO to be running with sensor shared memory available. |
GPU-Z |
GPU-Z shared memory | Requires GPU-Z to be running. |
CPU |
Built-in CPU provider | Reports CPU utilization, frequency, and MSR-based CPU readings. A driver is required for MSR sensors. |
DIMM |
Built-in memory provider | Reports memory usage and DIMM thermal sensors when available. A driver is required for SMBus thermal sensors. |
GPU |
Built-in GPU provider | Reports GPU utilization, memory usage, temperature, power, clocks, voltage, and fan speed through supported GPU APIs. |
SMART |
Built-in S.M.A.R.T. provider | Reports disk health, temperature, lifetime/wear, and related S.M.A.R.T. data through libcdi. |
DISK |
Built-in disk I/O provider | Reports disk throughput, IOPS, latency, utilization, queue depth, and counters. |
NET |
Built-in network provider | Reports network throughput, total traffic, link speed, and WLAN signal quality. |
IMC |
Built-in memory controller provider | Reports integrated memory controller data for supported Intel and AMD platforms. A driver is required. |
INTEL |
Built-in Intel platform provider | Reports Intel-specific MCH, PCH, and MSR sensor data. A driver is required. |
ZEN |
Built-in AMD Zen provider | Reports AMD Zen SMU/SMN sensor data. A driver is required. |
The program searches for and loads drivers in the following order: CPUZ162 -> NwHwIo -> PawnIO.
| Driver | Bundled | CPU Sensor | SPD | IMC |
|---|---|---|---|---|
| PawnIO | ✅Full | ✅ | ✅ | ✅ |
| NwHwIo | ✅Lite | ✅ | ✅ | ✅ |
| CPUZ162 | ❌ | ✅ | ✅ | ✅ |
Note: The program can still run normally without a driver, but some hardware information may not be accessible.
PawnIO driver requires Windows (x64) 10 1809 or later.
Install the PawnIO driver silently using the following command:
.\PawnIOSetup.exe -install -silent
Uninstall the PawnIO driver silently using the following command:
.\PawnIOSetup.exe -uninstall -silent
Delete the PawnIO driver from the Windows DriverStore:
REM Find the <OEMXXX.inf> name of the PawnIO driver
pnputil /enum-drivers
REM Delete the driver (replace oemXXX.inf with the name identified in the previous step)
pnputil /delete-driver <oemXXX.inf> /uninstall
This section describes all files included in the final release package.
| File Name | Category | Description |
|---|---|---|
nwinfo.exe |
Executable | Main executable (x64) |
nwinfox86.exe |
Executable | Main executable (x86) |
gnwinfo.exe |
Executable | GUI executable (x64) |
gnwinfox86.exe |
Executable | GUI executable (x86) |
libcdi.dll |
Library | S.M.A.R.T. data access library (x64) |
libcdix86.dll |
Library | S.M.A.R.T. data access library (x86) |
hw_report.ps1 |
Script | Example PowerShell script |
gnwinfo.ini |
Configuration | Configuration file for the GUI |
pci.ids |
Database | PCI database |
usb.ids |
Database | USB database |
jep106.ids |
Database | JEDEC memory module vendor database |
PawnIOSetup.exe |
Driver | PawnIO driver installer (x64) |
IntelMCHBAR.bin |
PawnIO Module | Intel MCHBAR module for the PawnIO driver |
IntelMSR.bin |
PawnIO Module | Intel MSR module for the PawnIO driver |
AMDFamily0F.bin |
PawnIO Module | AMD K8 MSR module for the PawnIO driver |
AMDFamily10.bin |
PawnIO Module | AMD K10 MSR module for the PawnIO driver |
AMDFamily17.bin |
PawnIO Module | AMD Zen MSR module for the PawnIO driver |
RyzenSMU.bin |
PawnIO Module | AMD Ryzen SMU module for the PawnIO driver |
SmbusPIIX4.bin |
PawnIO Module | PIIX4 SMBus module for the PawnIO driver |
SmbusI801.bin |
PawnIO Module | I801 SMBus module for the PawnIO driver |
LpcIO.bin |
PawnIO Module | LPC I/O module for the PawnIO driver |
This project is licensed under the Unlicense license.