Parallel optimisation on HPC cluster, is it possible?


#1

Does anyone have experience or hints towards running parallel NRP optimisations on an HPC cluster? Is it possible?

My application is neuromusculoskeletal optimisation of biped locomotion (Geyer & Herr 2010 style reflexes). I have previously used OpenSim and MPI for doing it, but would like to port the system to NRP. However, previously a single optimisation took around 8 hours on 80 cores and I doubt that NRP can do this faster. For this reason it may be a deal breaker if I am not able to run it on a cluster so I would rather verify now than later.

It seems @alexander_ugent has managed somewhat but it also seemed to be rather unsupported?

All hints or help would be appreciated.
Thanks in advance

  • Jakob

#2

Dear Jakob,

Simulations do not distribute over HPC clusters yet. Meaning that one simulation will run on a plain VM server without Nest or Gazebo distributing.
Though, what is possible, and what @alexander_ugent does, is run many simulations in parallel over a set of servers, using our so-called “virtual coach”.
This might help you in case you want to parallelize the batch of simulations and not the simulation itself.
Axel


#3

Hi Axel
Thanks for the reply and it sounds good with Virtual Coach. I will look into that!
What I need is a way to run many independent simulations in parallel, wait for them to finish, collect data from them and launch a new batch of parallel simulations based on that data.
Each simulation can easily run on separate servers as they are not communicating after initiation.

If I understood you correctly then this should be possible with Virtual Coach?

In that case I believe that my challenge is to find a good way to make virtual coach run multiple batches of parallel simulations on a number of nodes using the resource manager (MOAB/Torque) - provided I manage to compile the NRP backend on the cluster.

Does this sound feasible?

Thanks in advance
-Jakob