Search All of the Math Forum:
Views expressed in these public forums are not endorsed by
NCTM or The Math Forum.


laoya
Posts:
11
Registered:
10/23/11


A question about driving many Ansoft Maxwell programs on many machines?
Posted:
Oct 27, 2011 9:30 AM


Dear all,
I am trying to simulate thousands of projects by Ansoft Maxwell. I wish to drive the Ansoft Maxwell on many machines (distributed machines) at the same time. Since every machine has multiple cores, I also wish that on every machine many Ansoft Maxwell programs are launched at the same time. I tried to drive it by the matlab parallel program. The command line to drive the Ansoft Maxwell is:
?"C:\Program Files (x86)\Ansoft\Maxwell14.0\maxwell.exe" runscriptandexit "D:\project\test_1.vbs"'
The matlab code test.m to create the command line is:
% test.m function out=test(i) comm=[?"C:\Program Files (x86)\Ansoft\Maxwell14.0\maxwell.exe" runscriptandexit "D:\project\test_' num2str(i) '.vbs"' eval(comm); % out=read result outputted by Ansoft Maxwell ...
I have three methods to drive many Ansoft Maxwell programs: 1) by parfor:
% the matlab code to drive Ansoft Maxwell by parfor matlabpool 8; parfor i=1:N out{i}=test(i); end
This method can drive many Ansoft Maxwell programs on local machine with multiple cores. However, I haven't found any method to let the parfor work on distributed machines. Can I let it work on distributed machines?
2) launch many matlab programs by workers created by 'createTask' on distributed machines (for example, 4 machines with 8 workers per machine), then:
% the matlab code to drive Ansoft Maxwell by createTask k=0; for i=1:Ncomputer for j=1:computer(i).Nworker k=k+1; createTask(job{i},@test,1,{[k]}); end end ...
However, this method can only launch one Ansoft Maxwell program correctly on every machine, and other Ansoft Maxwell programs are killed after about 1 second launched.
3) create on worker per machine and launch many Ansoft Maxwell on every machine by parfor as described by method 1).
However, this method has the same results as method 2).
So could anyone help me to drive many Ansoft Maxwell programs on distributed machines by Matlab? Is it possible to establish matlabpool on distributed machines? How to establish it?
Waiting for your help!
Thanks, Zhanghong Tang



