---
name: "Unix::Processors"
section: "3pm"
platform: "linux"
package: "libunix-processors-perl"
version: "2.046-3+b4"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Unix::Processors"
---

# Unix::Processors(3pm)

Interface to processor (CPU) information

## NAME

Unix::Processors - Interface to processor (CPU) information

## SYNOPSIS

```
  use Unix::Processors;
  my $procs = new Unix::Processors;
  print "There are ", $procs->max_online, " CPUs at ", $procs->max_clock, "\n";
  if ($procs->max_online != $procs->max_physical) {
      print "Hyperthreading between ",$procs->max_physical," physical CPUs.\n";
  }
  (my $FORMAT =   "%2s  %-8s     %4s    \n") =~ s/\s\s+/ /g;
  printf($FORMAT, "#", "STATE", "CLOCK",  "TYPE", );
  foreach my $proc (@{$procs->processors}) {
      printf ($FORMAT, $proc->id, $proc->state, $proc->clock, $proc->type);
  }
```

## DESCRIPTION

This package provides accessors to per-processor (CPU) information. The object is obtained with the Unix::Processors::processors call. the operating system in a OS independent manner.

- max\_online

  Return number of threading processors currently online.  On hyperthreaded Linux systems, this indicates the maximum number of simultaneous threads that may execute; see max\_physical for the real physical CPU count.

- max\_physical

  Return number of physical processor cores currently online.  For example, a single chip quad-core processor returns four.

- max\_socket

  Returns the number of populated CPU sockets, if known, else the same number as max\_physical.  For example, a single chip quad-core processor returns one.

- max\_clock

  Return the maximum clock speed across all online processors. Not all OSes support this call.

- processors

  Return an array of processor references.  See the Unix::Processors::Info manual page.  Not all OSes support this call.

## DISTRIBUTION

The latest version is available from CPAN and from \<http://www.veripool.org/\>.

Copyright 1999-2017 by Wilson Snyder.  This package is free software; you you can redistribute it and/or modify it under the terms of either the GNU Lesser General Public License Version 3 or the Perl Artistic License Version 2.0.

## AUTHORS

Wilson Snyder \<wsnyder@wsnyder.org\>

## SEE ALSO

Unix::Processors::Info, Sys::Sysconf
