- Timestamp:
- 03/22/18 10:43:20 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/dev/branch_openmp/extern/remap/src/parallel_tree.cpp
r1355 r1460 197 197 delete[] displs; 198 198 199 /* unpack */ 200 /* 201 randomArray.resize(nrecv); 202 randomizeArray(randomArray); 203 tree.leafs.resize(nrecv); 204 index = 0; 205 206 207 for (int i = 0; i < nrecv; i++) 208 { 209 Coord x = *(Coord *)(&recvBuffer[index]); 210 index += sizeof(Coord)/sizeof(*recvBuffer); 211 double radius = recvBuffer[index++]; 212 tree.leafs[randomArray[i]].centre = x; 213 tree.leafs[randomArray[i]].radius = radius; 214 215 } 216 */ 199 217 200 218 randomArray.resize(blocSize); … … 231 249 cerr << comm.rank << ": PROBLEM: (node assign)" << tree.levelSize[assignLevel] << " != " << comm.group_size << " (keepNodes)" 232 250 << " node size : "<<node.size()<<" bloc size : "<<blocSize<<" total number of leaf : "<<tree.leafs.size()<<endl ; 233 251 /* 252 MPI_Allreduce(&ok, &allok, 1, MPI_INT, MPI_PROD, communicator); 253 if (!allok) { 254 MPI_Finalize(); 255 exit(1); 256 } 257 */ 234 258 MPI_Abort(MPI_COMM_WORLD,-1) ; 235 259 } … … 302 326 nb=nb1+nb2 ; 303 327 MPI_Allreduce(&nb, &nbTot, 1, MPI_LONG, MPI_SUM, communicator) ; 304 305 306 328 int commSize ; 307 329 MPI_Comm_size(communicator,&commSize) ; … … 326 348 randomizeArray(randomArray2); 327 349 350 /* 351 int s1,s2 ; 352 353 if (node.size()< nbSampleNodes/2) 354 { 355 s1 = node.size() ; 356 s2 = nbSampleNodes-s1 ; 357 } 358 else if (node2.size()< nbSampleNodes/2) 359 { 360 s2 = node.size() ; 361 s1 = nbSampleNodes-s2 ; 362 } 363 else 364 { 365 s1=nbSampleNodes/2 ; 366 s2=nbSampleNodes/2 ; 367 } 368 */ 328 369 for (int i = 0; i <nbSampleNodes1; i++) sampleNodes.push_back(Node(node[randomArray1[i%nb1]].centre, node[randomArray1[i%nb1]].radius, NULL)); 329 370 for (int i = 0; i <nbSampleNodes2; i++) sampleNodes.push_back(Node(node2[randomArray2[i%nb2]].centre, node2[randomArray2[i%nb2]].radius, NULL)); 330 371 372 /* 373 for (int i = 0; i < nbSampleNodes/2; i++) 374 { 375 sampleNodes.push_back(Node(node[randomArray1[i]].centre, node[randomArray1[i]].radius, NULL)); 376 sampleNodes.push_back(Node(node2[randomArray2[i]].centre, node2[randomArray2[i]].radius, NULL)); 377 } 378 */ 331 379 CTimer::get("buildParallelSampleTree").resume(); 332 380 //sampleTree.buildParallelSampleTree(sampleNodes, cascade);
Note: See TracChangeset
for help on using the changeset viewer.