Right way to run external program in parallel?

Its essentially the innerloop of my simulation. You can get some idea from my earlier question here:

Essentially I am running a stochastic game engine in parallel (ie, simultaneous games each week, multiple replications of each season), comparing the results to a baseline, modifying the skill ratings of the players… repeat until the combination of ratings produce “realistic” results.

But I think you are right that perhaps I can use GNU parallel for part of this. Eg: File I/O in gnu parallel - Stack Overflow