On Aug 10, 2007, at 9:31 AM, Hugh Perkins wrote:
Not many replies on this thread? Am I so wrong that no-one's even
telling me? I find it hard to believe that if there were obvious
errors in the proposition that anyone would resist pointing them
out to me ;-)
So, that leaves a couple of possibilites: some people are agreeing,
but see no point in saying; or noone cares, because we all only
have 1 or 2 core machines.
I'm going to kindof run with the second possibility for now.
However, I do believe it's the right time to solve this, what with
64-core Niagara's around the corner and so on.
What would be neat would be a way to test solutions on simulated
1024-core machines, using a single-core machine. Are there any
utilities or virtual environments around that might make this kind
of testing feasible?
It's actually difficult to do realistic simulations of large machines
like this; most of the performance effects you'll see depend on the
behavior of the cache and memory subsystems, and it's difficult and
expensive to simulate those well. So, for example, you could use
something like Simics to simulate a 1024-core machine, but it'd be
expensive (Simics costs money), slow (100x? slower than ordinary
execution) and non-parallel (so you wouldn't be able to run it on a
currently-extant multiprocessor box in the hopes of speeding up the
simulation). Between the simulator slowdown and the fact that you're
simulating 1024 cores using only 1 thread, you can expect to wait a
long time for simulation results.
Also, these things tend to require an awful lot of care and feeding.
[Full disclosure: I don't personally work with Simics or its ilk, but
my colleagues do.]
-Jan-Willem Maessen
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe