Bar�� Ke�eci via users
2016-09-30 15:36:43 UTC
Hello everyone,I'm trying to investigate the paralellization of an algorithm with OpenMPI on a distributed computers' network. In the network there are one Master PCÂ and 24 Computing Node PCs. I'm quite a newbie in this field. However i achieved installing the OpenMPI and compiling and running my first parallel codes on this parallel platform.
Now here is my question.The algorithm in my concern is a simple one. Such that: in the outer "for loop" the algorithm repeats until a stopping conditon is met. The Master PC should do this outer loop. And in the "inner loop" a local search procedure is performed in paralel by the 24 Computing Nodes. That means i actually want to paralellize the inner loop since it is the most time cosuming part of my algorithm. I have already managed to code this part since i know the total number of steps of the "inner loop" and hence i was able to paralellize the inner "for loop" over the distributed pcs. Now here is the problem. I want the Master PC repeats the main loop until a stopping criterion is met, but at each step it should distribute the inner loop over 24 compute nodes. And i dont have any idea how should i do this. It appears to me i should build a code something like, i have to make each compute node wait a signal from the master code and reapeat the inner loop over and over...
I hope i could make it clear with my poor English. IÂ would appreciate if anyone can help me or at least give the broad methodology.
Best regars to all.
Doctor Keceee
Now here is my question.The algorithm in my concern is a simple one. Such that: in the outer "for loop" the algorithm repeats until a stopping conditon is met. The Master PC should do this outer loop. And in the "inner loop" a local search procedure is performed in paralel by the 24 Computing Nodes. That means i actually want to paralellize the inner loop since it is the most time cosuming part of my algorithm. I have already managed to code this part since i know the total number of steps of the "inner loop" and hence i was able to paralellize the inner "for loop" over the distributed pcs. Now here is the problem. I want the Master PC repeats the main loop until a stopping criterion is met, but at each step it should distribute the inner loop over 24 compute nodes. And i dont have any idea how should i do this. It appears to me i should build a code something like, i have to make each compute node wait a signal from the master code and reapeat the inner loop over and over...
I hope i could make it clear with my poor English. IÂ would appreciate if anyone can help me or at least give the broad methodology.
Best regars to all.
Doctor Keceee