Hi John,Thanks for that suggestion.I tried replacing my matrix with a numpy array, and it was about 20% slower, but I just substituted one for the other, so that really isn't surprising. I didn't try with the built-in array, but I'm guessing that swapping out another container for lists would only have a chance of speeding it up by a constant amount, I think, since setting and getting list elements is O(1).
Having said that, I forgot arrays existed. I will take a look right now, and look at their methods, see if there is anything in there I can dig up to help above and beyond a new container.I think, conceptually, I need to make the sliding window more efficient by not getting overlapping elements repeatedly, or maybe figuring out a way to skip the conversion from bits to integers. I tried storing as strings, and doing a join to get
i.e. 110 and using that as a key to look up 1 or 0, but it was miserably slow :)The ~15x speedup from psyco makes me think if there was a built-in function that could handle everything in one fell swoop with tight C code, that would probably speed it up a -lot-. But I haven't found anything like that for a sliding window type situation.
On 9/18/05, John Fouhy [EMAIL PROTECTED] wrote:
On 19/09/05, grouchy [EMAIL PROTECTED] wrote: I've been playing with generating 1-D cellular automata, and this is the fastest solution I've come up with so far.
I haven't dug deep into your code --- but, I wonder if the arraymodule might help?--John.___Tutor maillist-
Tutor@python.orghttp://mail.python.org/mailman/listinfo/tutor
___
Tutor maillist - Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor