threads branch status update
Stefan Seifert
nine at detonation.org
Fri Apr 20 17:04:04 UTC 2012
On Tuesday 17 April 2012 17:06:00 you wrote:
> Here's what I found on Solaris 11/x86 with Sun's compiler:
>
> First, I needed to apply this patch (void functions can't return a
> value):
Thanks, applied and commited.
> Next, I needed to apply this patch to the generated file
> src/pmc/proxy.c. I know it is generated, but I can't find where the
> erroneous lines come from. These are all more instances of void
> functions trying to return a value.
Code for these is generated in lib/Parrot/Pmc2c/PMC/Proxy.pm
Fixed and committed.
> Then, the tests hung on t/pmc/task.t. Here's the specific output:
> ./parrot t/pmc/task.t
> 1..6
> ok 1 - initialized
> ok 2 task1 ran
> ok 3 task2 ran
> ok 4 sub1 ran
>
> [At this point it hangs].
>
> I tried the examples, but I don't know what any of them are supposed
> to do, so I don't know what's expected.
>
> ./parrot examples/threads/chameneos.pir
> going to sleep
> This is 0 and I'm Yellow
> This is 1 and I'm Blue
> This is 2 and I'm Red
> This is 3 and I'm Blue
>
> Then it hangs.
Could you run parrot in a debugger and send me a stacktrace of all threads of
these hangs?
>
>
> ./winxed examples/threads/matrix_part.winxed
>
> gobbles up all available memory, doesn't print anything, and
> hangs.
>
> ./parrot examples/threads/moretasks.pir
>
> prints out lots of oks, then lots of 0s, then runs out of memory
> and panics.
These programs run quite well on my laptop with its meager 4 GB of RAM so....I
guess they're just not that useful on more limited machines. Just in case
you're curious: matrix_part.winxed multiplies a 10000x10000 matrix by a vector
using four threads. moretasks.pir simply starts 50000 tasks which busy wait
for a variable to become 1, put their number into an array and everything
starts again.
> ./parrot examples/threads/tasks.pir
>
> prints out long strings of a's and b's without stopping. After a
> while, I killed it.
tasks.pir should print those a's and b's for 10 seconds and then exit. If it
continues to run there's something wrong.
> I hope this is of some help,
Oh yes, thank you very much!
Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.parrot.org/pipermail/parrot-dev/attachments/20120420/3f59f122/attachment.asc>
More information about the parrot-dev
mailing list