diff options
author | gregor herrmann <gregoa@debian.org> | 2014-10-24 17:07:29 +0200 |
---|---|---|
committer | gregor herrmann <gregoa@debian.org> | 2014-10-24 17:07:29 +0200 |
commit | 870e9eb4fe739e599318ad9d96c5cbd1af24f69d (patch) | |
tree | f0d9c7a1e769dcb1b39e4fccf134b8533f2d40af /lib/MCE | |
parent | cecec1603ba90dbb5f9d89de7a39178b26829240 (diff) |
Imported Upstream version 1.517
Diffstat (limited to 'lib/MCE')
-rw-r--r-- | lib/MCE/Core.pod | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Generator.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Handle.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Iterator.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Request.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Input/Sequence.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Manager.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Validation.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Core/Worker.pm | 2 | ||||
-rw-r--r-- | lib/MCE/Examples.pod | 2 | ||||
-rw-r--r-- | lib/MCE/Flow.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Grep.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Loop.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Map.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Queue.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Signal.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Step.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Stream.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Subs.pm | 4 | ||||
-rw-r--r-- | lib/MCE/Util.pm | 53 |
20 files changed, 52 insertions, 57 deletions
diff --git a/lib/MCE/Core.pod b/lib/MCE/Core.pod index be16a0a..0f389dd 100644 --- a/lib/MCE/Core.pod +++ b/lib/MCE/Core.pod @@ -5,7 +5,7 @@ MCE::Core - Documentation describing the core API for Many-core Engine =head1 VERSION -This document describes MCE::Core version 1.516 +This document describes MCE::Core version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Core/Input/Generator.pm b/lib/MCE/Core/Input/Generator.pm index 75407e0..0316375 100644 --- a/lib/MCE/Core/Input/Generator.pm +++ b/lib/MCE/Core/Input/Generator.pm @@ -12,7 +12,7 @@ package MCE::Core::Input::Generator; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Input/Handle.pm b/lib/MCE/Core/Input/Handle.pm index 7f7a487..5748446 100644 --- a/lib/MCE/Core/Input/Handle.pm +++ b/lib/MCE/Core/Input/Handle.pm @@ -11,7 +11,7 @@ package MCE::Core::Input::Handle; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Input/Iterator.pm b/lib/MCE/Core/Input/Iterator.pm index aab53ba..3eefeba 100644 --- a/lib/MCE/Core/Input/Iterator.pm +++ b/lib/MCE/Core/Input/Iterator.pm @@ -11,7 +11,7 @@ package MCE::Core::Input::Iterator; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Input/Request.pm b/lib/MCE/Core/Input/Request.pm index 27edf68..0d936f6 100644 --- a/lib/MCE/Core/Input/Request.pm +++ b/lib/MCE/Core/Input/Request.pm @@ -11,7 +11,7 @@ package MCE::Core::Input::Request; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Input/Sequence.pm b/lib/MCE/Core/Input/Sequence.pm index e895e7a..86792f1 100644 --- a/lib/MCE/Core/Input/Sequence.pm +++ b/lib/MCE/Core/Input/Sequence.pm @@ -11,7 +11,7 @@ package MCE::Core::Input::Sequence; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Manager.pm b/lib/MCE/Core/Manager.pm index b6b50e1..10afd60 100644 --- a/lib/MCE/Core/Manager.pm +++ b/lib/MCE/Core/Manager.pm @@ -11,7 +11,7 @@ package MCE::Core::Manager; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Validation.pm b/lib/MCE/Core/Validation.pm index 41653d6..07bae42 100644 --- a/lib/MCE/Core/Validation.pm +++ b/lib/MCE/Core/Validation.pm @@ -11,7 +11,7 @@ package MCE::Core::Validation; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Core/Worker.pm b/lib/MCE/Core/Worker.pm index e7ff36d..a1b8aaa 100644 --- a/lib/MCE/Core/Worker.pm +++ b/lib/MCE/Core/Worker.pm @@ -11,7 +11,7 @@ package MCE::Core::Worker; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ## Items below are folded into MCE. diff --git a/lib/MCE/Examples.pod b/lib/MCE/Examples.pod index 7eae5e3..d317f04 100644 --- a/lib/MCE/Examples.pod +++ b/lib/MCE/Examples.pod @@ -5,7 +5,7 @@ MCE::Examples - A list of examples demonstrating Many-core Engine =head1 VERSION -This document describes MCE::Examples version 1.516 +This document describes MCE::Examples version 1.517 =head1 DESCRIPTION diff --git a/lib/MCE/Flow.pm b/lib/MCE/Flow.pm index 5a859c9..8d5e1b6 100644 --- a/lib/MCE/Flow.pm +++ b/lib/MCE/Flow.pm @@ -14,7 +14,7 @@ use Scalar::Util qw( looks_like_number ); use MCE; use MCE::Util; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -432,7 +432,7 @@ MCE::Flow - Parallel flow model for building creative applications =head1 VERSION -This document describes MCE::Flow version 1.516 +This document describes MCE::Flow version 1.517 =head1 DESCRIPTION diff --git a/lib/MCE/Grep.pm b/lib/MCE/Grep.pm index f8e9d55..bdaa61e 100644 --- a/lib/MCE/Grep.pm +++ b/lib/MCE/Grep.pm @@ -14,7 +14,7 @@ use Scalar::Util qw( looks_like_number ); use MCE; use MCE::Util; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -398,7 +398,7 @@ MCE::Grep - Parallel grep model similar to the native grep function =head1 VERSION -This document describes MCE::Grep version 1.516 +This document describes MCE::Grep version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Loop.pm b/lib/MCE/Loop.pm index c9cb2db..1e5aba3 100644 --- a/lib/MCE/Loop.pm +++ b/lib/MCE/Loop.pm @@ -14,7 +14,7 @@ use Scalar::Util qw( looks_like_number ); use MCE; use MCE::Util; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -325,7 +325,7 @@ MCE::Loop - Parallel loop model for building creative loops =head1 VERSION -This document describes MCE::Loop version 1.516 +This document describes MCE::Loop version 1.517 =head1 DESCRIPTION diff --git a/lib/MCE/Map.pm b/lib/MCE/Map.pm index 97c2878..4480490 100644 --- a/lib/MCE/Map.pm +++ b/lib/MCE/Map.pm @@ -14,7 +14,7 @@ use Scalar::Util qw( looks_like_number ); use MCE; use MCE::Util; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -398,7 +398,7 @@ MCE::Map - Parallel map model similar to the native map function =head1 VERSION -This document describes MCE::Map version 1.516 +This document describes MCE::Map version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Queue.pm b/lib/MCE/Queue.pm index 0476cd9..3d6cab4 100644 --- a/lib/MCE/Queue.pm +++ b/lib/MCE/Queue.pm @@ -14,7 +14,7 @@ use Socket qw( :crlf PF_UNIX PF_UNSPEC SOCK_STREAM ); use Scalar::Util qw( looks_like_number ); use bytes; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -1602,7 +1602,7 @@ MCE::Queue - Hybrid queues (normal including priority) for Many-core Engine =head1 VERSION -This document describes MCE::Queue version 1.516 +This document describes MCE::Queue version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Signal.pm b/lib/MCE/Signal.pm index ec22e53..ad24dac 100644 --- a/lib/MCE/Signal.pm +++ b/lib/MCE/Signal.pm @@ -12,7 +12,7 @@ use warnings; use Fcntl qw( :flock O_RDONLY ); use base qw( Exporter ); -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; our ($has_threads, $main_proc_id, $prog_name); our ($display_die_with_localtime, $display_warn_with_localtime); @@ -452,7 +452,7 @@ MCE::Signal - Temporary directory creation/cleanup & signal handling =head1 VERSION -This document describes MCE::Signal version 1.516 +This document describes MCE::Signal version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Step.pm b/lib/MCE/Step.pm index 7ca9840..726c50f 100644 --- a/lib/MCE/Step.pm +++ b/lib/MCE/Step.pm @@ -16,7 +16,7 @@ use MCE::Util; use MCE::Queue; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -515,7 +515,7 @@ MCE::Step - Parallel step model for building creative steps =head1 VERSION -This document describes MCE::Step version 1.516 +This document describes MCE::Step version 1.517 =head1 DESCRIPTION diff --git a/lib/MCE/Stream.pm b/lib/MCE/Stream.pm index a143cf5..cc2723d 100644 --- a/lib/MCE/Stream.pm +++ b/lib/MCE/Stream.pm @@ -16,7 +16,7 @@ use MCE::Util; use MCE::Queue; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -609,7 +609,7 @@ MCE::Stream - Parallel stream model for chaining multiple maps and greps =head1 VERSION -This document describes MCE::Stream version 1.516 +This document describes MCE::Stream version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Subs.pm b/lib/MCE/Subs.pm index 9748b41..cccfa6b 100644 --- a/lib/MCE/Subs.pm +++ b/lib/MCE/Subs.pm @@ -11,7 +11,7 @@ use warnings; use MCE; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; ############################################################################### ## ---------------------------------------------------------------------------- @@ -193,7 +193,7 @@ MCE::Subs - Exports functions mapped directly to MCE methods =head1 VERSION -This document describes MCE::Subs version 1.516 +This document describes MCE::Subs version 1.517 =head1 SYNOPSIS diff --git a/lib/MCE/Util.pm b/lib/MCE/Util.pm index 7ad1925..4e70fb6 100644 --- a/lib/MCE/Util.pm +++ b/lib/MCE/Util.pm @@ -12,18 +12,19 @@ use warnings; use base qw( Exporter ); use bytes; -our $VERSION = '1.516'; $VERSION = eval $VERSION; +our $VERSION = '1.517'; $VERSION = eval $VERSION; our @EXPORT_OK = qw( get_ncpu ); our %EXPORT_TAGS = ( all => \@EXPORT_OK ); ############################################################################### ## ---------------------------------------------------------------------------- -## The get_ncpu subroutine (largely adopted from Test::Smoke::Util.pm) -## returns the number of available (online/active/enabled) CPUs. +## The get_ncpu subroutine, largely adopted from Test::Smoke::Util.pm, +## returns the number of logical (online/active/enabled) CPU cores; +## never smaller than one. ## -## Defaults to 1. A warning is emitted to STDERR when it cannot recognize -## the operating system or the external command failed. +## A warning is emitted to STDERR when it cannot recognize the operating +## system or the external command failed. ## ############################################################################### @@ -50,7 +51,7 @@ sub get_ncpu { last OS_CHECK; }; - /(?:darwin|.*bsd)/i && do { + /bsd|darwin|dragonfly/i && do { chomp( my @output = `sysctl -n hw.ncpu 2>/dev/null` ); $ncpu = $output[0] if @output; last OS_CHECK; @@ -68,7 +69,7 @@ sub get_ncpu { }; /hp-?ux/i && do { - my $count = grep /^processor/ => `ioscan -fnkC processor 2>/dev/null`; + my $count = grep /^processor/ => `ioscan -fkC processor 2>/dev/null`; $ncpu = $count if $count; last OS_CHECK; }; @@ -79,21 +80,25 @@ sub get_ncpu { last OS_CHECK; }; - /solaris|sunos|osf/i && do { - my $count = grep /on-line/ => `psrinfo 2>/dev/null`; - $ncpu = $count if $count; + /osf|solaris|sunos|svr5|sco/i && do { + if (-x '/usr/sbin/psrinfo') { + my $count = grep /on-?line/ => `psrinfo 2>/dev/null`; + $ncpu = $count if $count; + } + else { + my @output = grep /^NumCPU = \d+/ => `uname -X 2>/dev/null`; + $ncpu = (split " ", $output[0])[2] if @output; + } last OS_CHECK; }; - /mswin32|mingw|cygwin/i && do { + /mswin|mingw|cygwin/i && do { $ncpu = $ENV{NUMBER_OF_PROCESSORS} if exists $ENV{NUMBER_OF_PROCESSORS}; last OS_CHECK; }; - _croak( - "MCE::Util::get_ncpu: command failed or unknown operating system\n" - ); + warn "MCE::Util::get_ncpu: command failed or unknown operating system\n"; } return $g_ncpu = $ncpu; @@ -105,17 +110,6 @@ sub get_ncpu { ## ############################################################################### -sub _croak { - - unless (defined $MCE::VERSION) { - $\ = undef; require Carp; goto &Carp::croak; - } else { - goto &MCE::_croak; - } - - return; -} - sub _parse_max_workers { my ($_max_workers) = @_; @@ -233,7 +227,7 @@ MCE::Util - Public and private utility functions for Many-core Engine =head1 VERSION -This document describes MCE::Util version 1.516 +This document describes MCE::Util version 1.517 =head1 SYNOPSIS @@ -241,12 +235,13 @@ This document describes MCE::Util version 1.516 =head1 DESCRIPTION -This is a utility module for MCE. Nothing is exported by default. Exportable -is get_ncpu. +A utility module for MCE. Nothing is exported by default. Exportable is +get_ncpu. =head2 get_ncpu() -Returns the number of available (online/active/enabled) CPUs. +Returns the number of logical (online/active/enabled) CPU cores; never smaller +than one. my $ncpu = MCE::Util::get_ncpu(); |