Check your GPU, VRAM and RAM in one command

Run one command, paste what it prints, and the analyzer fills in your GPU, VRAM, RAM and CPU. Your paste never leaves this browser tab.

  1. Open a terminal.
  2. Paste this command and press Enter.
  3. Paste the output below.
echo "LLMC-HW v1 linux"; grep -m1 PRETTY_NAME /etc/os-release; LC_ALL=C lscpu | grep -E '^(Model name|CPU\(s\)):'; grep MemTotal /proc/meminfo; nvidia-smi --query-gpu=index,name,memory.total --format=csv

Needs the NVIDIA driver installed (nvidia-smi comes with it). Works in WSL2 too.

Parsed on your device. Nothing is uploaded or saved. Serial numbers and IDs are thrown away.

Commands and an example

An example: Linux with an NVIDIA card

LLMC-HW v1 linux
PRETTY_NAME="Ubuntu 24.04.3 LTS"
Model name:                           AMD Ryzen 9 7950X 16-Core Processor
CPU(s):                               32
MemTotal:       65011856 kB
index, name, memory.total [MiB]
0, NVIDIA GeForce RTX 4090, 24564 MiB

Found: NVIDIA GeForce RTX 4090 · 24 GB VRAM · 64 GB RAM · AMD Ryzen 9 7950X 16-Core Processor · Ubuntu 24.04.3 LTS. Linux reported 62.0 GiB of usable memory, which is a 64 GB machine after the kernel’s reservation; nvidia-smi’s 24,564 MiB is a 24 GB card.

What the analyzer receives: ?gpu=rtx-4090&ram=64&src=import — catalog ids and numbers only.

The command for each system

macOS

echo "LLMC-HW v1 macos"; sw_vers; sysctl -n machdep.cpu.brand_string hw.memsize hw.ncpu; system_profiler SPDisplaysDataType 2>/dev/null | grep -E "Chipset Model|Total Number of Cores|VRAM|Metal"

This reads your chip name, memory size and GPU core count. It doesn’t read your serial number.

Windows

"LLMC-HW v1 windows"; $o=Get-CimInstance Win32_OperatingSystem; "OS: $($o.Caption) $($o.Version)"; "CPU: $((Get-CimInstance Win32_Processor | Select-Object -First 1).Name)"; "RAM_BYTES: $((Get-CimInstance Win32_PhysicalMemory | Measure-Object -Property Capacity -Sum).Sum)"; Get-CimInstance Win32_VideoController | ForEach-Object { "WMI_GPU: $($_.Name) | $($_.AdapterRAM)" }; Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}\0*' -ErrorAction SilentlyContinue | ForEach-Object { $m=$_.'HardwareInformation.qwMemorySize'; if($null -eq $m){$m=$_.'HardwareInformation.MemorySize'}; if($m -is [byte[]]){ if($m.Length -ge 8){$m=[BitConverter]::ToUInt64($m,0)} elseif($m.Length -ge 4){$m=[BitConverter]::ToUInt32($m,0)} else {$m=$null} } elseif($m -is [int] -and $m -lt 0){$m=[long]$m+4294967296}; if($_.DriverDesc){ "REG_GPU: $($_.DriverDesc) | $m" } }

Windows reports any GPU above 4 GB as "4 GB" in its standard tool, so this command also reads the real value from the driver’s registry entry. It only reads; it changes nothing.

Linux · NVIDIA

echo "LLMC-HW v1 linux"; grep -m1 PRETTY_NAME /etc/os-release; LC_ALL=C lscpu | grep -E '^(Model name|CPU\(s\)):'; grep MemTotal /proc/meminfo; nvidia-smi --query-gpu=index,name,memory.total --format=csv

Needs the NVIDIA driver installed (nvidia-smi comes with it). Works in WSL2 too.

Linux · AMD / Intel / not sure

echo "LLMC-HW v1 linux"; grep -m1 PRETTY_NAME /etc/os-release; LC_ALL=C lscpu | grep -E '^(Model name|CPU\(s\)):'; grep MemTotal /proc/meminfo; lspci -nn | grep -Ei 'vga|3d|display'; for f in /sys/class/drm/card*/device/mem_info_vram_total; do [ -r "$f" ] && echo "SYSFS_VRAM: ${f#/sys/class/drm/} $(cat "$f")"; done; rocm-smi --showproductname 2>/dev/null; rocm-smi --showmeminfo vram 2>/dev/null

It works without ROCm. If ROCm is installed, it adds the exact card name too.

I use llmfit

llmfit --json system

llmfit is a free, MIT-licensed command-line tool by Alex Jones that detects your hardware locally. Its output is read here as-is; this site is not affiliated with it.

Already use llmfit?

Paste llmfit --json system, llmfit system or an llmfit doctor report. llmfit is a free command-line tool by Alex Jones (MIT licence) that detects hardware on your machine; this page reads its output and follows its parsing approach. It is not affiliated with this site.

How it works

Each command uses only tools that come with your operating system or GPU driver, and prints no serial numbers. A parser in your browser recognises the output, removes any identifiers first, matches your GPU to our catalog, and hands the result to the analyzer as plain numbers.

  1. Pick your system and copy its command.
  2. Run it in a terminal (Terminal on macOS, PowerShell on Windows) and copy what it prints.
  3. Paste it here and press "Read my hardware". Check the result, and fix anything the output left unclear.
  4. Open the analyzer with your hardware filled in and see which models fit.

Sources

Checked 2026-10-19.

Questions

How do I check how much VRAM I have?

On an NVIDIA card, run nvidia-smi --query-gpu=name,memory.total --format=csv: memory.total is your VRAM in MiB (24,564 MiB is a 24 GB card). On a Mac with Apple Silicon there is no separate VRAM: the GPU shares the system memory shown in About This Mac. On Windows, use the command on this page, because the standard tool caps the figure at 4 GB.

Why does Windows say my GPU has 4 GB?

The AdapterRAM value in Windows’ video controller class is a 32-bit number, so it cannot show more than about 4 GB. The driver stores the real figure in the registry (HardwareInformation.qwMemorySize), which the Windows command here reads. It only reads; it changes nothing.

Is it safe to paste this output?

The commands only read hardware details. Parsing happens in your browser: nothing is uploaded, saved or put in the page address, and serial numbers, hardware IDs, hostnames and usernames are removed before anything is shown.

Does it work with llmfit?

Yes. Paste the output of llmfit --json system, llmfit system or an llmfit doctor report. llmfit is a separate, MIT-licensed tool by Alex Jones; only its system information is read, never its file paths.

What if I have two GPUs?

Identical cards are counted together, and you choose whether the analyzer sizes one card or their combined memory (llama.cpp and vLLM can split a model across cards). With two different cards, the larger one is used by default and you can switch.

Why does my Mac show its RAM as GPU memory?

Apple Silicon has unified memory: the CPU and GPU share one pool. The analyzer sizes models against that pool, minus the share macOS keeps for itself.