The flux computations and I/O are parallelized if the flux plane spans multiple 
processors — the only quantities that are sent to all CPUs, I think, are the 
total powers, which is only one number per frequency and hence should be a 
small amount of data.

What may be happening in a transmission calculation, however, is that the 
entire flux plane ends up on one processor, and hence  isn't parallelized.  See:

http://meep.readthedocs.io/en/latest/FAQ/#should-i-expect-linear-speedup-from-the-parallel-meep
 
<http://meep.readthedocs.io/en/latest/FAQ/#should-i-expect-linear-speedup-from-the-parallel-meep>

> 
> I am trying to calculate transmittance spectrum using parallel Meep
> with python interface.
> When flux data are processed with 'save_flux' or 'get_fluxes' methods,
> all the MPI processes seem to get whole data and use huge memory.
> Is this behavior normal?
> Please let me know if there is a way to reduce memory usage.
> 
> Best regards,
> Munehiro
_______________________________________________
meep-discuss mailing list
meep-discuss@ab-initio.mit.edu
http://ab-initio.mit.edu/cgi-bin/mailman/listinfo/meep-discuss

Reply via email to