NAME
   BSD::getloadavg - Perl Interface to getloadavg (3)

SYNOPSIS
     use BSD::getloadavg;
     my @loadavg = getloadavg();

DESCRIPTION
   This module allows you to access load average without invoking
   uptime(1). Instead of

     my @loadavg = (qx(uptime) =~ /([\.\d]+)\s+([\.\d]+)\s+([\.\d]+)/);

   You can simply

     use BSD::getloadavg;
     my @loadavg = getloadavg();

COMPATIBILITY
   Though named BSD::getloadavg, this module also works on Linux and other
   platforms that support getloadavg. To find if your platform supports
   this module, Just

     nm /usr/lib/libc.* | grep getloadavg

BENCHMARK
   You can run benchmark with t/benchmark.pl. Here is the result in my
   platforms.

   MacBook Pro 2GHz, Mac OS X 10.4.8
       Benchmark: running XS, command for at least 3 CPU seconds...
               XS:  3 wallclock secs ( 1.40 usr +  1.60 sys =  3.00 CPU) @ 69808.00/s (n=209424)
          command: 16 wallclock secs ( 0.58 usr  2.77 sys +  2.30 cusr  9.68 csys = 15.33 CPU) @ 1060.60/s (n=3553)
                Rate command      XS
       command  1061/s      --    -98%
       XS      69808/s   6482%      --

   Dual Xeon 2.8GHz, FreeBSD 6-Stable
       Benchmark: running XS, command for at least 3 CPU seconds...
               XS:  4 wallclock secs ( 2.49 usr +  0.58 sys =  3.07 CPU) @ 139022.98/s (n=426844)
          command: 11 wallclock secs ( 0.19 usr  2.98 sys +  2.34 cusr  7.12 csys = 12.62 CPU) @ 919.07/s (n=2908)
                   Rate command      XS
       command    919/s      --    -99%
       XS      139023/s  15026%      --

 EXPORT
   getloadavg()

SEE ALSO
   getloadavg(5)
     Also available as
     <http://www.freebsd.org/cgi/man.cgi?query=getloadavg&sektion=3>. Since
     getloadavg is in libc in most platform, Makefile.PL needed no
     tweaking. If you find a platform that does not have getloadavg in
     libc, please report.

   Sys::CpuLoad
     This module accesses load average via /proc or uptime command.
     Therefore the performance is analogous to the benchmark above.

   BSD::Sysctl
     Seems like the most versatile module in this arena. Unfortunately
     most-platform dependent also. Works only on FreeBSD as of Version
     0.06.

AUTHOR
   Dan Kogai, <[email protected]>

COPYRIGHT AND LICENSE
   Copyright (C) 2006 by Dan Kogai

   This library is free software; you can redistribute it and/or modify it
   under the same terms as Perl itself, either Perl version 5.8.8 or, at
   your option, any later version of Perl 5 you may have available.