EXAMPLES
Example 1: Find the Number of Physical CPUs
use strict; use Parse::DMIDecode qw(); my $dmi = Parse::DMIDecode->new( nowarnings => 1 ); $dmi->probe; my $physical_cpus = 0; for my $handle ($dmi->get_handles(group => "processor")) { my $type = ($handle->keyword("processor-type") or ""); next unless $type =~ /Central Processor/i; # Check the status of the cpu my $status = ($handle->keyword("processor-status") or ""); if ($status !~ /Unpopulated/i) { $physical_cpus++; } } printf("There %s %d physical %s in this machine.\n", ($physical_cpus == 1 ? "is" : "are"), $physical_cpus, ($physical_cpus == 1 ? "CPU" : "CPUs"), );
COPYRIGHT
Copyright 2007 Nicola Worthington.This software is licensed under The Apache Software License, Version 2.0.
<http://www.apache.org/licenses/LICENSE-2.0>