Loading gridding.c +10 −7 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ void gridding_data() #endif #ifdef ONE_SIDE memset( (char*)Me.win.ptr, 0, size_of_grid*sizeof(double)*1.1); if( Me.Rank[myHOST] == 0 ) { Loading Loading @@ -129,7 +130,6 @@ void gridding_data() blocks.Bstart[b] = blocks.Bstart[b-1]+blocks.Bsize[b-1]; blocks.Bsize[b] = size + (b < rem); } #endif #ifndef USE_MPI Loading Loading @@ -286,7 +286,7 @@ void gridding_data() //MPI_Accumulate(gridss,size_of_grid,MPI_DOUBLE,target_rank,0,size_of_grid,MPI_DOUBLE,MPI_SUM,slabwin); //MPI_Win_unlock(target_rank,slabwin); int res = reduce(target_rank); printf("I'm outside reduce global rank %d target rank %d local_rank %d \n", global_rank, target_rank, Me.Rank[HOSTS]); // printf("I'm outside reduce global rank %d target rank %d local_rank %d \n", global_rank, target_rank, Me.Rank[HOSTS]); #else // relates to #ifdef ONE_SIDE Loading @@ -303,8 +303,6 @@ void gridding_data() ADD_TIME(reduce, twt_r, tpr_r); // wipe before getting to the next sector // memset((void*)gridss, 0, size_of_grid * sizeof(double)); // Deallocate all sector arrays free(uus); Loading @@ -318,13 +316,18 @@ void gridding_data() #ifdef ONE_SIDE if( (Me.Rank[HOSTS] >= 0) && (Me.Nhosts > 1 )) { MPI_Waitall( Me.Ntasks[WORLD], requests, MPI_STATUSES_IGNORE); free(requests);} MPI_Barrier(MPI_COMM_WORLD); if(Me.Nhosts>1) memcpy(Me.sfwins[Me.Rank[myHOST]].ptr, grid, size_of_grid); else memcpy(Me.sfwins[global_rank].ptr, grid, size_of_grid); /* int test = memcmp(Me.sfwins[global_rank].ptr, grid, size_of_grid); printf("The comparison value = %d\n", test);*/ #endif free( histo_send ); Loading Loading
gridding.c +10 −7 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ void gridding_data() #endif #ifdef ONE_SIDE memset( (char*)Me.win.ptr, 0, size_of_grid*sizeof(double)*1.1); if( Me.Rank[myHOST] == 0 ) { Loading Loading @@ -129,7 +130,6 @@ void gridding_data() blocks.Bstart[b] = blocks.Bstart[b-1]+blocks.Bsize[b-1]; blocks.Bsize[b] = size + (b < rem); } #endif #ifndef USE_MPI Loading Loading @@ -286,7 +286,7 @@ void gridding_data() //MPI_Accumulate(gridss,size_of_grid,MPI_DOUBLE,target_rank,0,size_of_grid,MPI_DOUBLE,MPI_SUM,slabwin); //MPI_Win_unlock(target_rank,slabwin); int res = reduce(target_rank); printf("I'm outside reduce global rank %d target rank %d local_rank %d \n", global_rank, target_rank, Me.Rank[HOSTS]); // printf("I'm outside reduce global rank %d target rank %d local_rank %d \n", global_rank, target_rank, Me.Rank[HOSTS]); #else // relates to #ifdef ONE_SIDE Loading @@ -303,8 +303,6 @@ void gridding_data() ADD_TIME(reduce, twt_r, tpr_r); // wipe before getting to the next sector // memset((void*)gridss, 0, size_of_grid * sizeof(double)); // Deallocate all sector arrays free(uus); Loading @@ -318,13 +316,18 @@ void gridding_data() #ifdef ONE_SIDE if( (Me.Rank[HOSTS] >= 0) && (Me.Nhosts > 1 )) { MPI_Waitall( Me.Ntasks[WORLD], requests, MPI_STATUSES_IGNORE); free(requests);} MPI_Barrier(MPI_COMM_WORLD); if(Me.Nhosts>1) memcpy(Me.sfwins[Me.Rank[myHOST]].ptr, grid, size_of_grid); else memcpy(Me.sfwins[global_rank].ptr, grid, size_of_grid); /* int test = memcmp(Me.sfwins[global_rank].ptr, grid, size_of_grid); printf("The comparison value = %d\n", test);*/ #endif free( histo_send ); Loading