Threading woes on FreeBSD

Gregory Wright gwright at comcast.net
Thu Aug 3 13:07:54 EDT 2006


Some additional information on the threading problems
experienced on FreeBSD.  The system was FreeBSD 6.1-RELEASE-p2,
dual 2.8 GHz Xeon.

I built ghc-6.4.2 from cvs using the FreeBSD ports version of ghc-6.4.2.
(The latter has the threaded RTS disabled.)  I ran the ghc-regress tests
on the built compiler.  I used the libmap.conf (5) method to change the
threading library from pthreads to libthr and libc_r.  The build from
cvs uses pthreads by default.

The compiler using pthreads had 47 unexpected failures, and accumulated
about 30 "timeout" processes, which were just burning cpu cycles.
Using the reentrant c library (libc_r) gave essentially the same result,
with a tens of "timeout" processes consuming cpu but apparently
doing nothing else.

When I used the 1:1 threading library (libthr) the testing process  
ground to
a halt, with just one "timeout" process consuming about 95 percent
of the cpu.  I kill the test, since it had not made significant  
progress in
about 5 hours.

I'm going to set aside working on the FreeBSD threading question and
concentrate on threaded runtime problem on OS X.  I had originally
hoped that they would show similar behavior, but that seems to not be
the case.

Best Wishes,
Greg





More information about the Glasgow-haskell-bugs mailing list