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 objects will contain 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 the Windows operating system, the nice value of all processors is always 0.
Example 1: The below example illustrates the use of os.cpus() method in Node.js:
javascript
const os = require( 'os' );
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: The below example illustrates the use of os.cpus() method in Node.js:
javascript
const os = require( 'os' );
let cpu_s = os.cpus();
let 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