2017-05-29 5 views

Antwort

1

Dies ist sehr wahrscheinlich implementierungsabhängig. der Standard besagt, dass ein Rang ein int ist, und in Fortran (vor Fortran 2008 Bindings) ein Kommunikator ist eine Fortran-Zahl (die möglicherweise nicht die gleiche Größe als eine C-Zahl haben) unteren Zeile, ich denke, es gibt eine harte Grenze von 2 Milliarden MPI-Aufgaben in MPI_COMM_WORLD, und es gibt wahrscheinlich eine ähnliche harte Grenze von 2 Milliarden Kommunikatoren. noch einmal, eine bestimmte Implementierung könnte niedrigere Grenzen haben.

+0

Es gibt auch Grenzen der Prozessnummer in Netzwerkhardware (schwer zu erstellende Warteschlangen für Any-to-Any-Prozesskommunikation). Die praktischen Grenzen liegen bei etwa 1 Million Prozessen im Jahr 2009: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.148.7674&rep=rep1&type=pdf "MPI auf einer Million Prozessoren" von P. Balaji - doi> 10.1007/978-3-642-03770-2_9 – osgx

+0

Die Handle-Typen in Fortran 2008 Bindings sind nichts anderes als Wrappers vom Typ Record um die Integer-Handles, so dass sich dort nicht viel ändert. –

Verwandte Themen