[Hardware] Notes... The case for an open client

Dan Oetting dan_oetting at uswest.net
Sun Aug 15 15:05:04 EDT 2004


On Aug 15, 2004, at 11:48 AM, jbass at dmsd.com wrote:

> Everybody is quick to prefer saving the last couple tests using partial
> matches since that saves a few instructions. A different key ordering
> does exactly the same thing on the front end of the problem, which
> also makes doing sequential searches slightly more expensive over
> a search order specifically designed to avoid the first few tests.

It's not an either/or choice. You can have both at the same time. The 
front end savings are achieved by incrementing the high word of the key 
first (which has always been the case for the d.net clients). The back 
end savings are achieved by ignoring the high word of the cypher text.

The partial match was something I started when I ran out of registers 
building one of the PowerPC cores and wondered what would happen if I 
didn't bother saving S[25] from the second round. The cost of saving 
the register was at least 1/2 of one clock cycle per key. The penalty 
was perhaps tens or hundreds of thousands of clock cycles to reprocess 
that key in a different core. The choice was obvious.



More information about the Hardware mailing list