cpan MCE 1.411

latest releases: 1.897, 1.896, 1.895...
11 years ago
  • Reverted the change made in MCE-1.410. That degraded slurp IO on
    large files. This restores slurp IO performance in MCE.

  • Corrected an if statement towards the end of the shutdown method.
    The delay was occurring always when it was meant only if MCE was
    launched from inside a non-main thread.

  • Addressed a race condition with barrier synchronization under the
    Cygwin environment. Was not able to reproduce this with other OS's.
    This takes barrier synchronization work to 100%. Delay statements
    for Cygwin were removed around barrier synchronization.

  • Optimized writes to sockets. Arguments passed to print statements
    are concatenated as one big string. Removed local $/ = $LF when
    reading from the queue socket. It's not required there since using
    read and known size. The foreach.pl example (very communication
    intensive) can now do 20000 in 1 second on my Macbook Pro. Updated
    benchmark results inside foreach.pl, forchunk.pl, and forseq.pl.

  • MAX_WORKERS, CHUNK_SIZE, TMP_DIR, FREEZE and THAW can be specified
    when loading the module. FREEZE and THAW allows one to choose an
    alternative serialization module if preferred for your project.

    use Sereal qw(encode_sereal decode_sereal);
    use MCE FREEZE => &encode_sereal, THAW => &decode_sereal;

  • Passing EXPORT_CONST => 1 will export 3 constants: SELF, CHUNK, CID
    The "my ($self, $chunk_ref, $chunkid) = @" line is not necessary.
    $[SELF], $[CHUNK], $[CID] refers to $[0], $[1], $[2].

  • The MCE::Util module was created. It contains the get_ncpu function.
    This is largely borrowed from Test::Smoke::Util.pm. MCE supports
    'auto' when specifying max_workers. Read doc for other use case.

    max_workers => 'auto'; ## Same as MCE::Util::get_ncpu()

  • Re-factored code in preparation for the upcoming 1.5 release. The
    1.5 release will use just 3 socket pairs versus 4. I did not want
    to include that change in this release. Therefore, I decided to
    take the upstream bug fixes and apply them to the 1.4 base.

Re-factored documentation by making use of the full 78 character
width per line.

  • Updated the main README file under the top level dir.

Don't miss a new MCE release

NewReleases is sending notifications on new releases.