The dominant use case for dccrg seems to be to iterate over all cells' data which has been seen to be surprisingly slow if that data is stored in an unordered_map. Cell data pointer cache helps but might not be usable for e.g. internal remote neighbor data update function. If cell pointer cache cannot be used there easily, cells' user data should be stored in a vector for faster access.
The dominant use case for dccrg seems to be to iterate over all cells' data which has been seen to be surprisingly slow if that data is stored in an unordered_map. Cell data pointer cache helps but might not be usable for e.g. internal remote neighbor data update function. If cell pointer cache cannot be used there easily, cells' user data should be stored in a vector for faster access.