Manually shell sort particles for better perf