Skip to content

CPU Information

Retrieve detailed CPU information including brand, speed, cores, and physical layout.

si.cpu()

Returns a Promise with a detailed CPU data object.

javascript
const si = require('@ambicuity/systeminspector');

si.cpu()
  .then(data => console.log(data))
  .catch(error => console.error(error));

Return Object

PropertyTypeDescription
manufacturerstringe.g. 'Intel(R)'
brandstringe.g. 'Core(TM) i7-8550U'
vendorstringe.g. 'GenuineIntel'
familystringCPU Family
modelstringCPU Model
steppingstringCPU Stepping
revisionstringCPU Revision
voltagestringCPU Voltage
speednumberBase speed in GHz
speedMinnumberMinimum speed in GHz
speedMaxnumberMaximum speed in GHz
governorstringCPU scaling governor when available
coresnumberNumber of logical cores
physicalCoresnumberNumber of physical cores
performanceCoresnumberPerformance core count on hybrid CPUs when available
efficiencyCoresnumberEfficiency core count on hybrid CPUs when available
processorsnumberNumber of sockets
socketstringSocket type
flagsstringCPU feature flags
virtualizationbooleanWhether CPU virtualization support is detected
cacheobjectCache details (l1d, l1i, l2, l3)

CPU Flags

Retrieve CPU flags for virtualization, hyperthreading, etc.

si.cpuFlags()

Returns a Promise with a string of space-separated CPU flags.

javascript
si.cpuFlags()
  .then(data => console.log(data))
  .catch(error => console.error(error));

si.cpuCache()

Returns cache sizes in bytes.

javascript
si.cpuCache()
  .then(data => console.log(data))
  .catch(error => console.error(error));
PropertyTypeDescription
l1dnumberL1 data cache size
l1inumberL1 instruction cache size
l2numberL2 cache size
l3numberL3 cache size

si.cpuCurrentSpeed()

Returns current CPU clock speed information in GHz.

javascript
si.cpuCurrentSpeed()
  .then(data => console.log(data))
  .catch(error => console.error(error));
PropertyTypeDescription
minnumberMinimum current core speed
maxnumberMaximum current core speed
avgnumberAverage current core speed
coresnumber[]Current speed by core

si.cpuTemperature()

Returns best-effort CPU temperature readings when the platform exposes them.

PropertyTypeDescription
mainnumberMain CPU temperature
coresnumber[]Per-core temperatures
maxnumberMaximum reported CPU temperature
socketnumber[]Socket temperatures when available
chipsetnumberChipset temperature when available

si.currentLoad()

Returns aggregate and per-core CPU load percentages plus raw tick counters.

PropertyTypeDescription
avgLoadnumberOS load average
currentLoadnumberTotal CPU load percentage
currentLoadUsernumberUser CPU load percentage
currentLoadSystemnumberSystem CPU load percentage
currentLoadNicenumberNice CPU load percentage
currentLoadIdlenumberIdle CPU percentage
currentLoadIrqnumberIRQ CPU load percentage
currentLoadStealnumberSteal CPU load percentage
currentLoadGuestnumberGuest CPU load percentage
rawCurrentLoadnumberTotal raw CPU ticks
rawCurrentLoadUsernumberRaw user CPU ticks
rawCurrentLoadSystemnumberRaw system CPU ticks
rawCurrentLoadNicenumberRaw nice CPU ticks
rawCurrentLoadIdlenumberRaw idle CPU ticks
rawCurrentLoadIrqnumberRaw IRQ CPU ticks
rawCurrentLoadStealnumberRaw steal CPU ticks
rawCurrentLoadGuestnumberRaw guest CPU ticks
cpusCurrentLoadCpuData[]Per-core load objects

Each CurrentLoadCpuData entry includes load, loadUser, loadSystem, loadNice, loadIdle, loadIrq, loadSteal, loadGuest, rawLoad, rawLoadUser, rawLoadSystem, rawLoadNice, rawLoadIdle, rawLoadIrq, rawLoadSteal, and rawLoadGuest.

Inspector AI
SystemInspector AI initialized. How can I help you query your hardware?