[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#536551: ITP: libcoro-perl -- the only real threads in perl

Package: wnpp
Owner: Jonathan Yu <frequency@cpan.org>
Severity: wishlist
X-Debbugs-CC: debian-devel@lists.debian.org

* Package name    : libcoro-perl
  Version         : 5.151
  Upstream Author : (information incomplete)
* URL             : http://search.cpan.org/dist/Coro/
* License         : Artistic | GPL-1+
  Programming Lang: Perl
  Description     : the only real threads in perl

 Coro collection manages continuations in general, most often in the form of
 cooperative threads (also called coros, or simply "coro" in the
 documentation). They are similar to kernel threads but don't (in general) run
 in parallel at the same time even on SMP machines. The specific flavor of
 thread offered by this module also guarantees you that it will not switch
 between threads unless necessary, at easily-identified points in your
 program, so locking and parallel access are rarely an issue, making thread
 programming much safer and easier than using other thread models.
 Unlike the so-called "Perl threads" (which are not actually real threads but
 only the windows process emulation ported to unix, and as such act as
 processes), Coro provides a full shared address space, which makes
 communication between threads very easy. And Coro's threads are fast, too:
 disabling the Windows process emulation code in your perl and using Coro can
 easily result in a two to four times speed increase for your programs. A
 parallel matrix multiplication benchmark runs over 300 times faster on a
 single core than perl's pseudo-threads on a quad core using all four cores.

Reply to: