mailr15601 - /1.3/multi/mpi4py_processor.py


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by edward on March 22, 2012 - 10:34:
Author: bugman
Date: Thu Mar 22 10:34:35 2012
New Revision: 15601

URL: http://svn.gna.org/viewcvs/relax?rev=15601&view=rev
Log:
Shifted the mpi4py processor module functions broadcast_command() and 
ditch_all_results() into the class.

These have been turned into private methods.


Modified:
    1.3/multi/mpi4py_processor.py

Modified: 1.3/multi/mpi4py_processor.py
URL: 
http://svn.gna.org/viewcvs/relax/1.3/multi/mpi4py_processor.py?rev=15601&r1=15600&r2=15601&view=diff
==============================================================================
--- 1.3/multi/mpi4py_processor.py (original)
+++ 1.3/multi/mpi4py_processor.py Thu Mar 22 10:34:35 2012
@@ -42,22 +42,6 @@
 from multi.multi_processor_base import Multi_processor, 
Too_few_slaves_exception
 
 
-
-def broadcast_command(command):
-    for i in range(1, MPI.COMM_WORLD.size):
-        if i != 0:
-            MPI.COMM_WORLD.send(obj=command, dest=i)
-
-
-def ditch_all_results():
-    for i in range(1, MPI.COMM_WORLD.size):
-        if i != 0:
-            while True:
-                result = MPI.COMM_WORLD.recv(source=i)
-                if result.completed:
-                    break
-
-
 class Mpi4py_processor(Multi_processor):
     """The mpi4py multi-processor class."""
 
@@ -81,6 +65,22 @@
 
         # Initialise a flag for determining if we are in the run() method or 
not.
         self.in_main_loop = False
+
+
+    def _broadcast_command(self, command):
+        for i in range(1, MPI.COMM_WORLD.size):
+            if i != 0:
+                MPI.COMM_WORLD.send(obj=command, dest=i)
+
+
+    def _ditch_all_results(self):
+        for i in range(1, MPI.COMM_WORLD.size):
+            if i != 0:
+                while True:
+                    result = MPI.COMM_WORLD.recv(source=i)
+                    if result.completed:
+                        break
+
 
 
     def abort(self):
@@ -140,10 +140,10 @@
             # Slave clean up.
             if MPI.Is_initialized() and not MPI.Is_finalized() and 
MPI.COMM_WORLD.rank == 0:
                 # Send the exit command to all slaves.
-                broadcast_command(Exit_command())
+                self._broadcast_command(Exit_command())
 
                 # Dump all results.
-                ditch_all_results()
+                self._ditch_all_results()
 
             # Exit the program with the given status.
             sys.exit(status)




Related Messages


Powered by MHonArc, Updated Thu Mar 22 10:40:02 2012