I have a paper on optimizing particle methods that evaluates having components together or in separate arrays; together is better for caches