Purposefully mangling arrays of structs

It’s a pretty common scenario to have an array of some structs, where you frequently iterate through the array using only one field in the struct. This is a cache nightmare – memory is loaded into cache sequentially by prefetching, meaning you’re wasting all that bandwidth loading all the other fields of the struct that… Read more

iCal & AddressBook integration

I like the way iCal instantly updates it’s birthdays when you change them in AddressBook. That’s really good – completely painless. While it’s a pretty simple thing, it’s rarely done right, if at all – too many apps only update when you refresh the view, manually update, restart the program, etc… not good. Apple got… Read more

Driving lessons

1) Booked in for my first driving lesson! No, really! :) I’m only 5 and a half years late, but, you know, time flies. :) As it turns out, the small print in getting a Californian license is that if you haven’t held a license before (from any country; doesn’t have to be Californian or… Read more

Oh the wasted cycles

An assignment I have at the moment is a simple cache simulator, as I think I’ve said before. Anyway, I thought the code was all done – all good. The results made sense, and it seemed to correspond with what dineroIV (a popular and powerful open source cache simulator, which we’re using as our reference,… Read more