GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  MCE::UTIL (3)

.ds Aq ’

NAME

MCE::Util - Utility functions

CONTENTS

VERSION

This document describes MCE::Util version 1.703

SYNOPSIS



 use MCE::Util;



DESCRIPTION

A utility module for MCE. Nothing is exported by default. Exportable is get_ncpu.

get_ncpu()

Returns the number of logical (online/active/enabled) CPU cores; never smaller than one.



 my $ncpu = MCE::Util::get_ncpu();



Specifying ’auto’ for max_workers calls MCE::Util::get_ncpu automatically. MCE 1.521 sets an upper-limit when specifying ’auto’. The reason is mainly to safeguard apps from spawning 100 workers on a box having 100 cores. This is important for apps which are IO-bound.



 use MCE;

 ## Auto is the total # of logical cores (lcores) (8 maximum, MCE 1.521).
 ## The computed value will not exceed the # of logical cores on the box.

 my $mce = MCE->new(

   max_workers => auto,       ##  1 on HW with 1-lcores;  2 on  2-lcores
   max_workers =>  16,          ## 16 on HW with 4-lcores; 16 on 32-lcores

   max_workers => auto,       ##  4 on HW with 4-lcores;  8 on 16-lcores
   max_workers => auto*1.5,   ##  4 on HW with 4-lcores; 12 on 16-lcores
   max_workers => auto*2.0,   ##  4 on HW with 4-lcores; 16 on 16-lcores
   max_workers => auto/2.0,   ##  2 on HW with 4-lcores;  4 on 16-lcores
   max_workers => auto+3,     ##  4 on HW with 4-lcores; 11 on 16-lcores
   max_workers => auto-1,     ##  3 on HW with 4-lcores;  7 on 16-lcores

   max_workers => MCE::Util::get_ncpu,   ## run on all lcores
 );



In summary:



 1. Auto has an upper-limit of 8 in MCE 1.521 (# of lcores, 8 maximum)
 2. Math can be applied with auto (*/+-) to change the upper limit
 3. The computed value for auto will not exceed the total # of lcores
 4. One can specify max_workers explicity to a hard value
 5. MCE::Util::get_ncpu returns the actual # of lcores



ACKNOWLEDGEMENTS

The portable code for detecting the number of processors was adopted from Test::Smoke::SysInfo.

INDEX

MCE, MCE::Core

AUTHOR

Mario E. Roy, <marioeroy AT gmail DOT com>
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 MCE::UTIL (3) 2016-03-20

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.