The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 1.839 - 2019-07-07

  • NEW FEATURES
    • Added MCE::Mutex::Channel2 providing two locks using a single channel. The secondary lock is accessible by calling methods with the '2' suffix. E.g. primary mutex ->lock, ->unlock; secondary mutex ->lock2, ->unlock2
    • Added MCE::Channel providing queue-like and two-way communication supporting threads and processes.
    • Added MCE::Child and compatibility with Perl 5.8. MCE::Child is based on MCE::Hobo, but using MCE::Channel for data retrieval without involving a shared-manager process.
    • Added MCE::Channel examples { channel1.pl and channel2.pl } using threads and MCE::Child respectively. https://github.com/marioroy/mce-examples/tree/master/chameneos
  • ENHANCEMENTS
    • IPC update; removed unnecessary overhead including private methods _sysseek and _syswrite from MCE::Util (no longer needed).
    • Improved MCE->do, now callable by workers and the manager process.
    • Updated MCE::{ Flow, Grep, Loop, Map, Step, and Stream } documentation on passing an array reference versus a list for deeply input data.
    • Updated and re-organized the top-level MCE documentation, particularly improved clarity for the 'MCE Models' section.
    • Removed MANIFEST.SKIP.

Documentation

Documentation describing the core MCE API
Various examples and demonstrations

Modules

MCE
Many-Core Engine for Perl providing parallel processing capabilities
Sugar methods and output iterators
Queue-like and two-way communication capability
Channel for producer(s) and many consumers
Channel tuned for one producer and one consumer
Channel for producer(s) and many consumers
A threads-like parallelization module compatible with Perl 5.8
Parallel flow model for building creative applications
Parallel grep model similar to the native grep function
MCE model for building parallel loops
Parallel map model similar to the native map function
Locking for Many-Core Engine
Mutex locking via a pipe or socket
Provides two mutexes using a single channel
Mutex locking via Fcntl
Hybrid (normal and priority) queues
Extends Many-Core Engine with relay capabilities
Temporary directory creation/cleanup and signal handling
Parallel step model for building creative steps
Parallel stream model for chaining multiple maps and greps
Exports functions mapped directly to MCE methods
Utility functions

Provides

in lib/MCE/Core/Input/Generator.pm
in lib/MCE/Core/Input/Handle.pm
in lib/MCE/Core/Input/Iterator.pm
in lib/MCE/Core/Input/Request.pm
in lib/MCE/Core/Input/Sequence.pm
in lib/MCE/Core/Manager.pm
in lib/MCE/Core/Validation.pm
in lib/MCE/Core/Worker.pm