Niagara: What is Execution Index?


I am trying to drive particles movement with a simulation I am running in compute shaders.
The idea is to have my compute shader output a 1024x1 1D texture with the world position of 1024 animated particles.
I am spawning 1024 particles in Niagara with the Burst Spawn node, but not I am trying to find a way to get the persistant “index” of each particle. So when it gets time to update the position of Particle #6, I can just sample my 1D texture at (0,6).
I am trying to do this with Execution Index, but it looks like although this integer is unique per particle, it is persisted accros multiple frames, as in particle 6 might get Execution Index 31 at frame 0, then 129 at frame 1.
What is the best way to achieve this if I do not want to drive the entire simulation in Niagara blueprints?