If there's any padding between record's fields because of differently sized datatypes, you could also try reordering the fields. For example, if you mix booleans with integers (which misaligns them if the record is packed), put the integer fields before all the booleans, etc.