Releasing soon Vigo is in alpha and closing in on its first stable release. Expect breaking changes between releases until then — we're looking for testing partners with meaningful fleets across diverse architectures. Learn more →

Processors

Provides detailed CPU information including model, vendor, core counts, and clock speed.

Trait Path

processors

Fields

Path Type Example Description
processors.physical_cores integer 6 Number of physical CPU cores
processors.logical_cores integer 12 Number of logical CPU cores (including hyperthreading)
processors.model string "Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz" CPU model name
processors.vendor string "GenuineIntel" CPU vendor ID
processors.mhz number 2600 CPU clock speed in MHz

model + vendor are the CPU's identifying fields. There is no per-CPU serial: the x86 processor serial number was disabled industry-wide after the Pentium III, and ARM exposes no equivalent — so unlike battery/storage/RAM, CPU identity stops at model and vendor.

Collection Method

Parses /proc/cpuinfo to count logical processors, identify unique physical/core ID pairs for physical core count, and extract the model name, vendor ID, and clock speed. Prefers the stable max frequency from /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq (in kHz, converted to MHz) over the fluctuating cpu MHz field in /proc/cpuinfo.

Using in When Expressions

- name: install-compiler
  type: package
  package: build-essential
  when: "os_family('debian')"

Using in Templates

- name: cpu-info
  type: file
  target_path: /var/lib/vigo/cpu-info.txt
  content: |
    CPU: {{ .Traits.processors.model }}
    Cores: {{ .Traits.processors.physical_cores }} physical, {{ .Traits.processors.logical_cores }} logical
    Speed: {{ .Traits.processors.mhz }} MHz

Platform

Linux