Before using such micro-optimisations, I would ensure that we have used all higher-level optimisations, first. For example: 1. How are the data received? Are they stored in memory in order of reception, or does some processing (e.g. address calculation) need to be performed? 2. How are the data processed? Is the access pattern sequential? random? If a single pass through the data is performed, is it possible to store the data (see question 1 above) in the order of processing, and thereby avoid all indexing? You may be able to think of other optimisations, based on your knowledge of the hardware and the problem.
Ad astra - both ways!