[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [computer-go] Hardware-Instruction.
> I've been reading your own papers this afternoon and one of
> them talks about throwing away techniques that made the program faster
> at 1 CPU, because it would lower the scaling at 512 CPUs.
Yes, there is some truth to that, but those were not decisions that
are specific to CILK. For instance we make a few data representation
decisions that slowed the serial program down by less than 10%, but
every parallel program would have been forced to deal with in some way
or another.
I don't know of anyone who has ever compared a pure serial program to
a pure parallel program. Despite the claims, the only way this can
happen is if someone writes the best serial program they can without
giving ANY consideration to a parallel implementation, then converting
it in a 100% faithful way. I believe Cilkchess is as close as you can
come to this ideal, even though I admit that when I wrote the serial
program, I was keeping the parallel implementation in mind. But I
assure you that there were very few compromises.
For serious academic papers, it is important to make comparisons with
apples to apples. You want to understand the behavior of the parallel
algorithm and you don't want to start with completely different pieces
of code. The papers you read were quite honest in acknowledging this
fact and pointing out that a pure serial version might be written a
little bit differently. On the other hand Vincent claims a 40X
slowdown, and you realize that he is exaggerating. You are being kind
when you say he "exaggerates" in this case because we are talking
about less than a 10% difference, not a 4000% difference.
- Don
_______________________________________________
computer-go mailing list
computer-go@xxxxxxxxxxxxxxxxx
http://www.computer-go.org/mailman/listinfo/computer-go/