you dont measure single run, you measure multiple runs using the
"timeit" module (for me 1000 repeats was about right).

here are some results which i recorded when i was implementing Sudoku
solver (on AMD Athlon 1.25GHz, using the sample shown on www.sudoku.com
front page):

brute:              1000 for 83 sec
smart:              1000 for 21 sec
brute, bitset:  1000 for  29 sec
smart, bitset:  1000 for  7.0 sec
smart, bit+que: 1000 for 5.3 sec

so you see the algorithm makes big difference... and so does the data
structure used. i got 15x speed-up that way. i guess i can claim that
my solver runs the sample for 5.3s/1000 = 5.3 ms!

a friend was also implementing sudoku - this time in C - and his
program solves the sample 10000 times for 3.4sec (i.e. for 0.34ms) on
slightly faster machine - so let's say his **highly optimized** C code
is about 10x faster than mine.

- Nas

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to