-
Hello. I would like to use pymoo for optimizing semiconductor structures using external simulation tools. The external simulation tools are run on a high performance computing (HPC) system with Open MPI parallelization, since otherwise a single simulation would take up to a day to complete. I was wondering, would it be possible for the evaluate function to start separate jobs for all the solutions on the HPC? I have an idea on how to implement the job starting and waiting for the results, but the thing I am unsure is what kind of problem should be used in this case? Is my presumption correct that for this case an element-wise problem with threaded parallelization would be best for this application? Or perhaps I could use the vector problem, from which I start all the jobs and wait for all the results to return within a single function and then there is no need for threads? Thank you for your help! |
Beta Was this translation helpful? Give feedback.
Replies: 2 comments
-
Figured it out! No need for threads or anything. I use a vectorized problem, submit all my jobs all at one, wait for them to finish and then grab all the results. Works perfectly, thank you for the great library! |
Beta Was this translation helpful? Give feedback.
-
Great! Glad you could resolve the issue yourself 👍 |
Beta Was this translation helpful? Give feedback.
Figured it out! No need for threads or anything. I use a vectorized problem, submit all my jobs all at one, wait for them to finish and then grab all the results. Works perfectly, thank you for the great library!