ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/DumpWriter.cpp
(Generate patch)

Comparing trunk/OOPSE/libmdtools/DumpWriter.cpp (file contents):
Revision 440 by mmeineke, Tue Apr 1 16:49:17 2003 UTC vs.
Revision 447 by mmeineke, Thu Apr 3 20:21:54 2003 UTC

# Line 4 | Line 4
4  
5   #ifdef IS_MPI
6   #include <mpi.h>
7 #include <mpi++.h>
7   #include "mpiSimulation.hpp"
8   #define TAKE_THIS_TAG_CHAR 1
9   #define TAKE_THIS_TAG_INT 2
# Line 134 | Line 133 | void DumpWriter::writeDump( double currentTime ){
133    int myStatus; // 1 = wakeup & success; 0 = error; -1 = AllDone
134    int haveError;
135  
136 <  MPI::Status istatus;
136 >  MPI_Status istatus;
137    int *AtomToProcMap = mpiSim->getAtomToProcMap();
138    
139    // write out header and node 0's coordinates
# Line 206 | Line 205 | void DumpWriter::writeDump( double currentTime ){
205        }
206        else {
207          myStatus = 1;
208 <        MPI::COMM_WORLD.Send(&myStatus, 1, MPI_INT, which_node,
209 <                             TAKE_THIS_TAG_INT);
210 <        MPI::COMM_WORLD.Send(&i, 1, MPI_INT, which_node, TAKE_THIS_TAG_INT);
211 <        MPI::COMM_WORLD.Recv(writeLine, BUFFERSIZE, MPI_CHAR, which_node,
212 <                             TAKE_THIS_TAG_CHAR, istatus);
213 <        MPI::COMM_WORLD.Recv(&myStatus, 1, MPI_INT, which_node,
214 <                             TAKE_THIS_TAG_INT, istatus);
208 >        MPI_Send(&myStatus, 1, MPI_INT, which_node,
209 >                 TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
210 >        MPI_Send(&i, 1, MPI_INT, which_node, TAKE_THIS_TAG_INT,
211 >                 MPI_COMM_WORLD);
212 >        MPI_Recv(writeLine, BUFFERSIZE, MPI_CHAR, which_node,
213 >                 TAKE_THIS_TAG_CHAR, MPI_COMM_WORLD, &istatus);
214 >        MPI_Recv(&myStatus, 1, MPI_INT, which_node,
215 >                 TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
216          
217          if(!myStatus) nodeZeroError();
218  
# Line 225 | Line 225 | void DumpWriter::writeDump( double currentTime ){
225      // kill everyone off:
226      myStatus = -1;
227      for (j = 0; j < mpiSim->getNumberProcessors(); j++) {      
228 <      MPI::COMM_WORLD.Send(&myStatus, 1, MPI_INT, j,
229 <                           TAKE_THIS_TAG_INT);
228 >      MPI_Send(&myStatus, 1, MPI_INT, j,
229 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
230      }
231  
232    } else {
# Line 234 | Line 234 | void DumpWriter::writeDump( double currentTime ){
234      done = 0;
235      while (!done) {
236        
237 <      MPI::COMM_WORLD.Recv(&myStatus, 1, MPI_INT, 0,
238 <                           TAKE_THIS_TAG_INT, istatus);
237 >      MPI_Recv(&myStatus, 1, MPI_INT, 0,
238 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
239  
240        if(!myStatus) anonymousNodeDie();
241        
242        if(myStatus < 0) break;
243  
244 <      MPI::COMM_WORLD.Recv(&which_atom, 1, MPI_INT, 0,
245 <                           TAKE_THIS_TAG_INT, istatus);
244 >      MPI_Recv(&which_atom, 1, MPI_INT, 0,
245 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
246        
247        myStatus = 1;
248        local_index=-1;        
# Line 292 | Line 292 | void DumpWriter::writeDump( double currentTime ){
292          strcpy( writeLine, "Hello, I'm an error.\n");
293        }
294  
295 <      MPI::COMM_WORLD.Send(writeLine, BUFFERSIZE, MPI_CHAR, 0,
296 <                           TAKE_THIS_TAG_CHAR);
297 <      MPI::COMM_WORLD.Send( &myStatus, 1, MPI_INT, 0,
298 <                            TAKE_THIS_TAG_INT);
295 >      MPI_Send(writeLine, BUFFERSIZE, MPI_CHAR, 0,
296 >               TAKE_THIS_TAG_CHAR, MPI_COMM_WORLD);
297 >      MPI_Send( &myStatus, 1, MPI_INT, 0,
298 >                TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
299      }
300    }  
301    outFile.flush();
# Line 404 | Line 404 | void DumpWriter::writeFinal(){
404    int myStatus; // 1 = wakeup & success; 0 = error; -1 = AllDone
405    int haveError;
406  
407 <  MPI::Status istatus;
407 >  MPI_Status istatus;
408    int *AtomToProcMap = mpiSim->getAtomToProcMap();
409  
410    // write out header and node 0's coordinates
# Line 474 | Line 474 | void DumpWriter::writeFinal(){
474        else {
475          
476          myStatus = 1;
477 <        MPI::COMM_WORLD.Send(&myStatus, 1, MPI_INT, which_node,
478 <                             TAKE_THIS_TAG_INT);
479 <        MPI::COMM_WORLD.Send(&i, 1, MPI_INT, which_node, TAKE_THIS_TAG_INT);
480 <        MPI::COMM_WORLD.Recv(writeLine, BUFFERSIZE, MPI_CHAR, which_node,
481 <                             TAKE_THIS_TAG_CHAR, istatus);
482 <        MPI::COMM_WORLD.Recv(&myStatus, 1, MPI_INT, which_node,
483 <                             TAKE_THIS_TAG_INT, istatus);
477 >        MPI_Send(&myStatus, 1, MPI_INT, which_node,
478 >                 TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
479 >        MPI_Send(&i, 1, MPI_INT, which_node, TAKE_THIS_TAG_INT,
480 >                 MPI_COMM_WORLD);
481 >        MPI_Recv(writeLine, BUFFERSIZE, MPI_CHAR, which_node,
482 >                 TAKE_THIS_TAG_CHAR, MPI_COMM_WORLD, &istatus);
483 >        MPI_Recv(&myStatus, 1, MPI_INT, which_node,
484 >                 TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
485          
486          if(!myStatus) nodeZeroError();
487        }
# Line 491 | Line 492 | void DumpWriter::writeFinal(){
492      // kill everyone off:
493      myStatus = -1;
494      for (j = 0; j < mpiSim->getNumberProcessors(); j++) {      
495 <      MPI::COMM_WORLD.Send(&myStatus, 1, MPI_INT, j,
496 <                           TAKE_THIS_TAG_INT);
495 >      MPI_Send(&myStatus, 1, MPI_INT, j,
496 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
497      }
498  
499    } else {
# Line 500 | Line 501 | void DumpWriter::writeFinal(){
501      done = 0;
502      while (!done) {
503  
504 <      MPI::COMM_WORLD.Recv(&myStatus, 1, MPI_INT, 0,
505 <                           TAKE_THIS_TAG_INT, istatus);
504 >      MPI_Recv(&myStatus, 1, MPI_INT, 0,
505 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
506        
507        if(!myStatus) anonymousNodeDie();
508        
509        if(myStatus < 0) break;
510        
511 <      MPI::COMM_WORLD.Recv(&which_atom, 1, MPI_INT, 0,
512 <                           TAKE_THIS_TAG_INT, istatus);
511 >      MPI_Recv(&which_atom, 1, MPI_INT, 0,
512 >               TAKE_THIS_TAG_INT, MPI_COMM_WORLD, &istatus);
513        
514        myStatus = 1;
515        local_index=-1;        
# Line 559 | Line 560 | void DumpWriter::writeFinal(){
560          strcpy( writeLine, "Hello, I'm an error.\n");
561        }
562  
563 <      MPI::COMM_WORLD.Send(writeLine, BUFFERSIZE, MPI_CHAR, 0,
564 <                           TAKE_THIS_TAG_CHAR);
565 <      MPI::COMM_WORLD.Send( &myStatus, 1, MPI_INT, 0,
566 <                            TAKE_THIS_TAG_INT);
563 >      MPI_Send(writeLine, BUFFERSIZE, MPI_CHAR, 0,
564 >               TAKE_THIS_TAG_CHAR, MPI_COMM_WORLD);
565 >      MPI_Send( &myStatus, 1, MPI_INT, 0,
566 >                TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
567      }
568    }
569    finalOut.flush();
# Line 585 | Line 586 | void dWrite::nodeZeroError( void ){
586    
587    myStatus = 0;
588    for (j = 0; j < mpiSim->getNumberProcessors(); j++) {      
589 <    MPI::COMM_WORLD.Send( &myStatus, 1, MPI_INT, j,
590 <                          TAKE_THIS_TAG_INT);
589 >    MPI_Send( &myStatus, 1, MPI_INT, j,
590 >              TAKE_THIS_TAG_INT, MPI_COMM_WORLD);
591    }  
592    
593  

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines