
On Tue, Nov 13, 2007 at 02:45:33PM -0800, Justin Bailey wrote:
On Nov 13, 2007 2:21 PM, Ryan Ingram
wrote: Never mind, I realized this is a ring buffer with `mod` s. That's another slow operation when you're doing code as tight as this. If you can guarantee the ring is a power of 2 in size you can use a mask instead, or use my original suggestion of deriving rules from the previous rule and the new bit; the initial state is determined by the last bits in the buffer and you never wrap.
I can't guarantee the ring is a power of 2 but do you feel like explaining the mask suggestion anyways?
Thanks for the bits suggestion - I'll see if that helps performance at all. It looks like you have to be very careful in which concrete type you choose or you'll get a lot of conversion going on.
About how wide are your rules usually? Stefan