GitHub - timw4mail/rustid: A CLI Utility for viewing CPU info (x86, Arm, and PowerPC)

3 min read Original article ↗

A lightweight CPU identification tool for Windows, Linux, and DOS. rustid queries processor information using the CPUID instruction and maps it to specific microarchitectures and feature sets. There is also some support for ARM and PowerPC cpu detection.

AI Disclaimer:

This application is developed using some AI, mostly related to:

  • DOS Build
  • Assembly code

Features

  • Multi-Architecture Support: Detects CPUs on x86/x86_64, ARM/AArch64, and PowerPC.
  • Vendor & Model Detection: Identifies CPUs from Intel, AMD, Cyrix, VIA, Zhaoxin, Rise, Transmeta, Apple Silicon, Qualcomm, and more.
  • Feature Flag Reporting (x86): Detects support for FPU, MMX, SSE (up to 4.2), AVX, AVX-512, BMI, and others.
  • Cache & Topology Info: Displays cache sizes, associativity, core/thread counts, and socket counts.
  • DOS Compatibility: Compiles to a single binary that can be run on DOS environments (on real hardware 386-class or better, or with DOSBox/DOSBox-X).

Getting Started

Installing (DOS)

For DOS, there are release binaries on Github for each release.

Installing (MacOS, Linux, Windows, etc.)

  • Rust (cargo needs to be installed)
  • For most environments, cargo install rustid will add rustid to your path

Usage

  • For binaries, just run rustid, for more commands run rustid --help.
  • For DOS, the main binary is rustid.exe, with debug and cpuid dump functionality in debug.exe and dump.exe respectively.

Development

See DEVELOPMENT.md

Output varies by architecture. Here is an example for x86_64:

--------------- Rustid 1.2.0 (x86_64-windows) ---------------
  Architecture: x86_64-v4

        Vendor: AuthenticAMD (AMD)

    Hypervisor: Microsoft Hv (Microsoft HyperV)

         Model: AMD Ryzen 9 9950X3D2 16-Core Processor

     MicroArch: Zen 5

      Codename: Granite Ridge

  Process Node: 4nm

      Topology: 16 cores (32 threads)

         Cache: L1d: 16x 48 KB, 12-way
                L1i: 16x 32 KB, 8-way
                L2:  16x 1 MB, 16-way
                L3:  2x 96 MB, 16-way

     Frequency: 4.29 GHz

     Signature: Family 1Ah, Model 44h, Stepping 0h
                (11, 15, 4, 4, 0)

      Features: Base: FPU TSC CX8 CX16 CMOV MMX MMX+ 3DNow!-Prefetch HT APIC AMD64
                SSE: SSE SSE2 SSE3 SSE4A SSE4.1 SSE4.2 SSSE3
                AVX: AVX AVX2 AVX-VNNI VPCLMULQDQ
                AVX512: F DQ IFMA CD BW VL BITALG VPOPCNTDQ VP2INTERSECT
                Security: NX RDSEED RDRAND AES VAES SHA
                Math: FMA BMI1 BMI2 F16C
                Other: POPCNT

For ARM and PowerPC, the output includes different fields (e.g., brand/implementor, codename, cache per core type).

Information References