Skip to content
Related Articles

Related Articles

Node.js | os.cpus() Method
  • Last Updated : 21 Jan, 2020

The os.cpus() method is an inbuilt application programming interface of the os module which is used to get information about each logical CPU core of the computer.

Syntax:

os.cpus()

Parameters: This method does not accept any parameters.

Return: This method returns an object containing information about each logical CPU core. Each of the returned object will contains the following attributes:

  • model: A string that specifies the model of the CPU core.
  • speed: A number that specifies the speed of the CPU core (in MHz).
  • times: An Object that contains the following properties:
    • user: A number specifies the time that the CPU has spent in user mode in milliseconds.
    • nice: A number specifies the time that the CPU has spent in nice mode in milliseconds.
    • sys: A number specifies the time that the CPU has spent in sys mode in milliseconds.
    • idle: A number specifies the time that the CPU has spent in idle mode in milliseconds.
    • irq: A number specifies the time that the CPU has spent in irq mode in milliseconds.

Note: The nice values are used for POSIX Only. On Windows operating system, the nice value of all processor are always 0 .



Below examples illustrate the use of os.cpus() method in Node.js:

Example 1:




// Node.js program to demonstrate the   
// os.cpus() method
  
// Allocating os module
const os = require('os');
  
// Printing os.cpus() values
console.log(os.cpus());

Output:

[ { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 900000, nice: 0, sys: 940265, idle: 11928546, irq: 147046 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 860875, nice: 0, sys: 507093, idle: 12400500, irq: 27062 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 1273421, nice: 0, sys: 618765, idle: 11876281, irq: 13125 } },
  { model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
    speed: 2712,
    times:
     { user: 943921, nice: 0, sys: 460109, idle: 12364453, irq: 12437 } } ]

Example 2:




// Node.js program to demonstrate the   
// os.cpus() method
  
// Allocating os module
const os = require('os');
  
// Printing os.cpus()
var cpu_s=os.cpus();
var no_of_logical_core=0;
cpu_s.forEach(element => { 
    no_of_logical_core++;
    console.log("Logical core "
            + no_of_logical_core + " :");
    console.log(element); 
}); 
  
console.log("total number of logical core is "
        + no_of_logical_core);

Output:

Logical core 1 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 856437, nice: 0, sys: 866203, idle: 11070046, irq: 133562 } }
Logical core 2 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 805296, nice: 0, sys: 462656, idle: 11524406, irq: 23218 } }
Logical core 3 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 1225062, nice: 0, sys: 566421, idle: 11000875, irq: 12203 } }
Logical core 4 :
{ model: 'Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz',
  speed: 2712,
  times:
   { user: 900234, nice: 0, sys: 420000, idle: 11472125, irq: 11781 } }
total number of logical core is 4

Note: The above program will compile and run by using the node index.js command.

Reference: https://nodejs.org/api/os.html#os_os_cpus

My Personal Notes arrow_drop_up
Recommended Articles
Page :