Ich habe mich gefragt, ob es eine kluge Möglichkeit gibt, dies zu tun. Lassen Sie uns sagen, ich habe drei Knoten, 0, 1, 2. Und sagen wir, jeder Knoten hat ein Array, a0, a1, a2. Wenn der Inhalt von jedem Knoten so etwas wieMPI-Kommunikationsmuster
a0 = {0, 1, 2, 1}
a1 = {1, 2, 2, 0}
a2 = {0, 0, 1, 2}
Gibt es ein cleveres Kommunikationsmuster so ist jede Zahl zu bewegen, um es Knotens entspricht, dh
a0 = {0, 0, 0, 0}
a1 = {1, 1, 1, 1}
a2 = {2, 2, 2, 2}
Der Ansatz, den ich im Sinne habe, würde bedeuten, das Sortieren und vorübergehende Puffer, aber ich fragte mich, ob es einen klügeren Weg gab?
Ich verstehe nicht - kann du nicht nur füllen a0 mit 0, a1 mit 1 usw.? Vermutlich gibt es mehr zu Ihrem Problem, als Ihr Beispiel zeigt. Es ist auch nicht klar, was Sie mit "drei Knoten, 0, 1, 2" meinen und wie sich das auf die MPI "Knoten" (Computer) oder die 0,1,2 Werte in Ihren Arrays bezieht. –
Danke John. Ich schätze, Zulan ist auf dem richtigen Weg. Die drei Knoten sind separate Computer. Ja, es gibt mehr zu dem Problem. Ich habe nur die Werte im Array gewählt, um meine Absicht klarer zu machen. Ich schätze, ich scheiterte an diesem xp – inJeans