parallel computing
Hi experts,
I have a hyperworks cfd problem named problem_one.hm, lets say its a simple flow over a cylindrical surface problem. I want to run multiple simulations of same single problem but with different velocitites (1 m/s, 2 m/s, 3 m/s, etc).
Is it possible for me to run the problem in parallel (all three problems at the same time in a 36 core machine with 12 cores for each problem)? I can manually copy input files and edit the inlet velocities accordingly. But do I need separate files for geometry, .hm file, mesh.dir for three different problems?
In other words, how do I run a simulation in parallel but with different condtions? Anyone has experience with that?
Thanks!
Answers
-
If you want to run three different jobs at the same time, it's best to have three separate directories - one for each job. The solver itself only needs the input file and the mesh directory. So you can write three times from the same .hm file - once for each setup - each to a different directory. If you're on Linux, you can create soft-links to a single MESH.DIR for the mesh, so it's only in one of the directories. I don't know if you can do the same on Linux.
Bottom line - you probably do not want to run three separate jobs from the same directory. Maybe if you use a different problem name for each - but I would typically not recommend doing so.
2 -
If you are using Windows, following can be your .bat file to execute jobs one after the other. You will need to invoke this .bat file from AcuSolve Cmd Prompt and not just double click on it.
##### for sequential runs, with 36 cores####
cd \test\pipe1
call acuRun -pb pipe1 -np 36
call acuTrans -to table -pb conj_pipe -osi -osis "inlet","outlet" -osiv temperature -ts L
cd \test\pipe2
call acuRun -pb pipe2 -np 36cd \test\pipe3
call acuRun -pb pipe3 -np 36##### for sequential runs####
...
...
For running jobs in parallel (12 cores *3 jobs). The main difference is the "call" command in DOS/Windows. This will let jobs finish, before moving to the next command.
################
cd \test\pipe1
acuRun -pb pipe1 -np 12
cd \test\pipe2
acuRun -pb pipe2 -np 12cd \test\pipe3
acuRun -pb pipe3 -np 12#####
2 -
If you specify your OS, windows or Linux, it might be easier to suggest a solution.
1 -
ydigit_21275 said:
If you are using Windows, following can be your .bat file to execute jobs one after the other. You will need to invoke this .bat file from AcuSolve Cmd Prompt and not just double click on it.
##### for sequential runs, with 36 cores####
cd \test\pipe1
call acuRun -pb pipe1 -np 36
call acuTrans -to table -pb conj_pipe -osi -osis "inlet","outlet" -osiv temperature -ts L
cd \test\pipe2
call acuRun -pb pipe2 -np 36cd \test\pipe3
call acuRun -pb pipe3 -np 36##### for sequential runs####
...
...
For running jobs in parallel (12 cores *3 jobs). The main difference is the "call" command in DOS/Windows. This will let jobs finish, before moving to the next command.
################
cd \test\pipe1
acuRun -pb pipe1 -np 12
cd \test\pipe2
acuRun -pb pipe2 -np 12cd \test\pipe3
acuRun -pb pipe3 -np 12#####
Thank you.
0 -
ydigit_21275 said:
If you specify your OS, windows or Linux, it might be easier to suggest a solution.
I am using Linux OS.
0