Bruck Roman wrote:
>
> Dear Steven, dear meep users!
>
>  
>
> When starting meep-mpi on a distributed computer system, is it
> possible to influence which thread starts on which computer?
>
> We are starting several threads per computer and that on several
> computers. It would be advantageous if neighboring simulation domains
> would be simulated on the same computer to minimize network traffic.
>
>  
>
> I noticed different execution times when starting the same simulation
> several times (difference of 25% or more). The only difference can be
> a different distribution of the jobs on the computers.
>
> Is it possible to define which job starts on which computer?
>
>  
>
> Thanks and best regards,
>
> Roman Bruck   
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> meep-discuss mailing list
> [email protected]
> http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss
Hi, Bruck

I think, meep-mpi is not aware of the differences you mentioned now. In
a mpi
environment, meep try its best to split the problem into  $n parts,
where $n
is your job number, then each process is given one part according to
their different
MPI_Comm_rank. So the different connecting speeds are not considered.

You can use C++ interface to figure out which part runs in which
computer.  For example:

#include "string.h"
#include "meep.hpp"
using namespace meep;
double air(const vec &r){return 1;}

int main(int argc, char ** argv){
  initialize mpi(argc,argv);
  volume A=vol2d(20,40,15);// You can defined your own volume and
boundaries.
  structure st(A,air);
  boundary_region X1=pml(3,X,High); X1.apply(&st);
  master_printf("num_chunks:%d\n",st.num_chunks);
  for(int i=0;i<st.num_chunks;i++){
    if(am_master()) {
      printf("Process %d has one volume\n",st.chunks[i]->n_proc());
      st.chunks[i]->v.print();
    }
  }
}
_______________________________________________
meep-discuss mailing list
[email protected]
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to