Scott:
> I do want to clarify on point on my email of yesterday.  I never wished to
>  imply that Sunanda's initial code was "slow".  I was unsure why Louis' run
>  took so long.  I was trying to recreate the condition so that I could
>  compare, but I gave up after 4 hours because I assumed *I miscoded*
>  Sunanda's example, figuring that I had sent the code off into the weeds.
>  Gregg's response clearly indicated that I *had* done something wrong.  Ten
>  thousand apologies to Sunanda.  I should have been more careful in my
>  writing.

I don't have any problem with you calling my code slow.

It is slow to run:

** It ran over three hours in Louis' machine. 
** The final tuned version of my code on my machine is some 35 times slower 
than Scott and Joel's. (81.72 secs vs 2.3).
** A not quite final version took 33 minutes (25 times longer than Joel's on 
your machine)

But I have several consolations.

** First, it was the code that was used live by Louis. So it solved the 
problem: everything else is fine-tuning and mopping up.

** Second, it produced the benchmark results set (verified by Louis) that 
other algorithms can be judged against. One of Jerry Weinberg's (showing my 
age here) aphorisms is that a program can be made as fast as you like 
provided it doesn't have to produce correct output. By checking the other 
results sets against the one from mine, we've been able to prove that the 
other algorithms are both fast and accurate.

** Third, participating in this exercise has given me some thumbnail 
guidelines for future tuning. They are:

1. Parse is slow -- take it out of the critical path (as Gregg and Romano do) 
or eliminate it (as Scott and Joel do).

2. It's not the number of parse's (Greg has one per line; Romano has one for 
the whole dataset) so much as the volume of data to be parsed

3. Sort is fast. There is not much to chose in time between Scott (who uses 
sort) and Joel (who writes his own, special purpose, sort)

If people with other machine configurations take the time to run these tests 
and report the results, we'll all learn a little more about how memory 
affects the speed of Rebol on different platforms.

And, as both Carl and Joel have pointed out in different ways, Louis now has 
enough (probably more than enough) options to be able to select the one that 
fits the purpose of his data.

It's been fun!
Sunanda.
-- 
To unsubscribe from this list, please send an email to
[EMAIL PROTECTED] with "unsubscribe" in the 
subject, without the quotes.

Reply via email to