2010/4/13 Allison Randal <[email protected]>: > 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 >> refactoring >> .sub 'run_jobs' # serial build >> .param pmc jobs >> L1: >> unless jobs goto L2 >> $S0 = shift jobs >> system($S0, 1 :named('verbose')) # mainly, a spawnw $S0 >> goto L1 >> L2: >> .end >> 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 > complete. >
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, ... François > Allison > _______________________________________________ > http://lists.parrot.org/mailman/listinfo/parrot-dev > > _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
