But if the cost of skipping some entities exceeds the cost of just processing it anyway then it's worth to just process it all anyway.Nemo4809 wrote: ↑Wed Feb 19, 2020 5:15 pmI think part of the complication is the skipping of processing certain entities - an optimization. This makes memory pre-fetch effectively useless as the next inserter to be updated could be the next in the array or +5 down the array and you are back to waiting for RAM.
For example using an alive linked list is very costly per computed entity because of the cache trashing. And when the processing of sleeping entities is cheap enough then it may be worth to just loop over the array instead to take advantage of the prefetch available to it.