The summer is drawing to a close, and with fall comes the beginning of the school year. Let's see, what have I been doing for the last month...
Kate got back from Wisconsin on Sept. 2. It was nice being by myself for a few days, but it got dull after a while. I'm glad to have her back.
Work at VMware has gone well. If all continues to go well, then I'll be working there a little bit during the school year as well, perhaps 8 hours a week. I'm looking forward to it because I've been writing fun code there and working with smart people, and not least because the money will just about equal my fellowship stipend.
Spent some time last week optimizing an AES cryptography implementation. First, I took a C implementation of AES that I had been using and replaced it by Brian Gladman's x86 assembly implementation. This achieved a major speedup, from 45 to 25 cycles/byte on a Pentium 4 for CBC. (Gladman has an MMX implementation, too, but in my testing it was slower than the non-MMX version.) Then I moved CBC chaining into the assembly code and got it down even lower, to 19 cycles/byte. I have similar code for CTR mode, too. Helger Lipmaa claims to have an implementation that can do AES in just over 16 cycles/byte on P4 (I don't think that includes CBC chaining, but would only be a minor difference anyway). That's pretty impressive, but I'd guess that the Gladman code is good enough.
Nothing very exciting going on. I guess I'll just list a few little things: