How are you sourcing the spacecraft positions from JPL? Are you just grabbing a huge list of state vectors?
My old day job was to compute asteroid positions for NASA telescopes, if you are interested in orbit prop you may be interested in: https://github.com/dahlend/kete
I made an asteroid only version of yours earlier this year, where it does full orbit propagation in workers: https://dahlend.github.io/ketev/