Are you running x64 or on Intel hardware? What results do you get for 12, 13
or 14 instead of 9?

I am running an AMD Phenom 9950, but the Ubuntu I'm using is just 32-bit. I tried 5/ray.hs with level=12 instead of 9 but it ran into a stack overflow problem. When I increased the stack size it completed but it also took more time than 1/ray.hs, which required no stack size increase. I made sure that the other arguments I fed it were the same. I think there is some problem that needs to be worked out in the 5/ray.hs. Maybe the problem is in ghc, I'm not sure. Below, ./ray5 is 5/ray.hs, and ./ray is 1/ray.hs

j...@ubuntu:~/Desktop$ time ./ray 12 512 > /dev/null

real    0m21.479s
user    0m21.093s
sys    0m0.180s
j...@ubuntu:~/Desktop$ time ./ray5 12 512 +RTS -K2000000000 > /dev/null

real    0m28.366s
user    0m25.674s
sys    0m2.608s
j...@ubuntu:~/Desktop$ time ./ray 14 512 > /dev/null

real    0m23.544s
user    0m23.021s
sys    0m0.500s

I tried level=14 but I ran out of memory for 5/ray.ml and 5/ray.hs.

I considered that maybe I had saved the files from your website wrong, or mixed them up during compilation. So I ran the timer again with level=9 and level=12 and got all the same results. That is, level=9 is faster on 5/ray.hs but level=12 is faster with 1/ray.hs. So I don't think I'm making a simple manual labor error.

It seems that 5/ray.ml and 5/ray.hs aren't quite equivalent in some important way since 1/ray.ml is faster than 5/ray.ml for both level=9 and level=12. Whether it's a code problem or compiler problem, I cannot say.

The stack size problem does not go away when I remove all the extra optimization arguments to ghc.

--Jeff

_______________________________________________
Caml-list mailing list. Subscription management:
http://yquem.inria.fr/cgi-bin/mailman/listinfo/caml-list
Archives: http://caml.inria.fr
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
Bug reports: http://caml.inria.fr/bin/caml-bugs

Reply via email to