> >never used in multi-threaded situation. > > Erm, nearly all my code in Haskell is multi-threaded. One of the > main reasons why I am using haskell is the low-cost light weight > multi-threading. Surely this is a big win for Haskell on SMP/Numa > machines - which are surely the future - as even Intel have realised > they can't just keep ramping up clock speeds and have gone multi-core > for their next pentium iteration. Just look at the benchmarks for the > multi-cpu opteron machines! > > I would hesitate to make any type unsafe for multi-threading > by default - I > think all the guards should be in as standard ... maybe a compile time > (or run-time) flag to replace the guards with NO-OPS for single CPU > machines might be a sensible option.
Since there seems to have been a bit of confusion in this thread, I thought I ought to clear it up. The issue is not about single vs. multiple CPU operation. GHC only runs code on a single CPU at the moment, due to the difficulties involved in sharing a heavily used resource (the heap) between multiple threads. The problem was whether DiffArrays should be thread-safe in the Concurrent Haskell sense, which means protecting access to the DiffArray with an MVar. Cheers, Simon _______________________________________________ Glasgow-haskell-users mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/glasgow-haskell-users