Exactly. I find splitting your struct into 2 structs based on memory access patterns(1 used all the time and the other for data) is a huge win.
I'm not sure how feasible this is. But if someone else wants to steal this idea and implement it for me, be my guest. :-)