Virtual Developer Summit - Sunday, April 11th 2010
francois.perrad at gadz.org
Thu Apr 15 16:09:43 UTC 2010
2010/4/13 Allison Randal <allison at parrot.org>:
> On 4/11/10 9:12 AM, François Perrad wrote:
>> The languages left the nest with Parrot 1.0, and many libraries will
>> leave after 2.3.
>> My main goal is to build& test them without Perl5 dependency.
>> See runtime/parrot/library/distutils.pir& runtime/parrot/library/TAP.
> General agreement that this is a good long-term goal, and good to be making
> progress on it.
>> My current needs are :
>> - a way to chmod file (see TT #1322)
>> - a TAR library (first creation)
>> - a zlib library (first compression)
> All considered good ideas.
>> I want to experiment the parallel build& test (option --jobs=Nb core).
>> With the subroutine run_jobs (see above), distutils is ready for a
>> .sub 'run_jobs' # serial build
>> .param pmc jobs
>> unless jobs goto L2
>> $S0 = shift jobs
>> system($S0, 1 :named('verbose')) # mainly, a spawnw $S0
>> goto L1
>> but I don't known which parallelism model is supplied by Parrot.
> Parrot currently provides a layer over POSIX threads (or Windows threads on
> Windows). They have limitations, but are adequate for this kind of simple
> parallelism (each parallel task is largely independent of another). The
> tricky part for you is likely to be deciding how to declare when a build job
> can be run in parallel, and when one job has to wait for another to
This part is already done. The step 'build' is an ordered list of
sub-step which must be
executed in serial way. But in each sub-step, tasks could be run in
parallel (see run_jobs subroutine).
Could you give me more specific info about threads in Parrot, any pointer to :
documentation, code examples, tests, ...
More information about the parrot-dev