Loading Makefile +3 −3 Original line number Diff line number Diff line Loading @@ -30,11 +30,11 @@ endif #OPT += -DNVIDIA # perform one-side communication (suggested) instead of reduce (only if MPI is active) OPT += -DONE_SIDE #OPT += -DONE_SIDE # write the full 3D cube of gridded visibilities and its FFT transform OPT += -DWRITE_DATA #OPT += -DWRITE_DATA # write the final image OPT += -DWRITE_IMAGE #OPT += -DWRITE_IMAGE # perform w-stacking phase correction OPT += -DPHASE_ON Loading allvars.c +2 −1 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ struct meta metaData; timing_t wt_timing = {0}; timing_t pr_timing = {0}; struct parameter param; struct fileData data; Loading data/paramfile.txt +3 −3 Original line number Diff line number Diff line ndatasets 1 Datapath1 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath2 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_123MHz.pre-cal.binMS/ Datapath3 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath1 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath2 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_123MHz.pre-cal.binMS/ Datapath3 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ num_threads 2 w_support 7 grid_size_x 2048 Loading gridding.c +6 −6 Original line number Diff line number Diff line Loading @@ -249,7 +249,7 @@ void gridding_data() // for every task, gridss coincides with the // that can be avoided if shared window coincides with gridss TAKE_TIME(twt, tpr); /* TAKE_TIME(twt, tpr); memcpy(Me.win.ptr, gridss, size_of_grid*sizeof(double)); ADD_TIME(mmove, twt, tpr); Loading @@ -258,8 +258,8 @@ void gridding_data() TAKE_TIME( twt, tpr); reduce( isector, target_rank ); // here the reduce is performed within every host ADD_TIME(reduce_sh, twt, tpr); if ( Me.Nhosts > 1 ) */ /*if ( Me.Nhosts > 1 ) { // here the reduce is performed among hosts MPI_Barrier(MPI_COMM_WORLD); Loading Loading @@ -311,7 +311,7 @@ void gridding_data() } } ADD_TIME(reduce_mpi, twt, tpr); */ #else // relates to #ifdef ONE_SIDE Loading Loading @@ -438,7 +438,7 @@ void write_gridded_data() #endif //WRITE_DATA } /* void reduce( int sector, int target_rank ) { MPI_Barrier(*(Me.COMM[myHOST])); Loading Loading @@ -528,6 +528,6 @@ void reduce( int sector, int target_rank ) return; } */ init.c +2 −4 Original line number Diff line number Diff line Loading @@ -31,9 +31,7 @@ void init(int index) #ifdef USE_MPI numa_init( global_rank, size, &MYMPI_COMM_WORLD, &Me ); if(global_rank == 0) printf("\nTask %d sees %d topology levels\n", global_rank, Me.MAXl); numa_expose(&Me,0); #endif TAKE_TIME_START(setup); Loading Loading @@ -368,7 +366,7 @@ void allocate_memory() { gridss_real = (double*) calloc(size_of_grid/2,sizeof(double)); gridss_img = (double*) calloc(size_of_grid/2,sizeof(double)); numa_allocate_shared_windows( &Me, size_of_grid*sizeof(double)*1.1, 0 ); numa_allocate_shared_windows( &Me, size_of_grid*sizeof(double)*1.1, size_of_grid*sizeof(double)*1.1 ); // Create destination slab grid = (double*) calloc(size_of_grid,sizeof(double)); Loading Loading
Makefile +3 −3 Original line number Diff line number Diff line Loading @@ -30,11 +30,11 @@ endif #OPT += -DNVIDIA # perform one-side communication (suggested) instead of reduce (only if MPI is active) OPT += -DONE_SIDE #OPT += -DONE_SIDE # write the full 3D cube of gridded visibilities and its FFT transform OPT += -DWRITE_DATA #OPT += -DWRITE_DATA # write the final image OPT += -DWRITE_IMAGE #OPT += -DWRITE_IMAGE # perform w-stacking phase correction OPT += -DPHASE_ON Loading
allvars.c +2 −1 Original line number Diff line number Diff line Loading @@ -10,6 +10,7 @@ struct meta metaData; timing_t wt_timing = {0}; timing_t pr_timing = {0}; struct parameter param; struct fileData data; Loading
data/paramfile.txt +3 −3 Original line number Diff line number Diff line ndatasets 1 Datapath1 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath2 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_123MHz.pre-cal.binMS/ Datapath3 /beegfs/lofar/cgheller/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath1 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ Datapath2 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_123MHz.pre-cal.binMS/ Datapath3 /beegfs/lofar/cgheller/data/L798046_SB244_uv.uncorr_130B27932t_121MHz.pre-cal.binMS/ num_threads 2 w_support 7 grid_size_x 2048 Loading
gridding.c +6 −6 Original line number Diff line number Diff line Loading @@ -249,7 +249,7 @@ void gridding_data() // for every task, gridss coincides with the // that can be avoided if shared window coincides with gridss TAKE_TIME(twt, tpr); /* TAKE_TIME(twt, tpr); memcpy(Me.win.ptr, gridss, size_of_grid*sizeof(double)); ADD_TIME(mmove, twt, tpr); Loading @@ -258,8 +258,8 @@ void gridding_data() TAKE_TIME( twt, tpr); reduce( isector, target_rank ); // here the reduce is performed within every host ADD_TIME(reduce_sh, twt, tpr); if ( Me.Nhosts > 1 ) */ /*if ( Me.Nhosts > 1 ) { // here the reduce is performed among hosts MPI_Barrier(MPI_COMM_WORLD); Loading Loading @@ -311,7 +311,7 @@ void gridding_data() } } ADD_TIME(reduce_mpi, twt, tpr); */ #else // relates to #ifdef ONE_SIDE Loading Loading @@ -438,7 +438,7 @@ void write_gridded_data() #endif //WRITE_DATA } /* void reduce( int sector, int target_rank ) { MPI_Barrier(*(Me.COMM[myHOST])); Loading Loading @@ -528,6 +528,6 @@ void reduce( int sector, int target_rank ) return; } */
init.c +2 −4 Original line number Diff line number Diff line Loading @@ -31,9 +31,7 @@ void init(int index) #ifdef USE_MPI numa_init( global_rank, size, &MYMPI_COMM_WORLD, &Me ); if(global_rank == 0) printf("\nTask %d sees %d topology levels\n", global_rank, Me.MAXl); numa_expose(&Me,0); #endif TAKE_TIME_START(setup); Loading Loading @@ -368,7 +366,7 @@ void allocate_memory() { gridss_real = (double*) calloc(size_of_grid/2,sizeof(double)); gridss_img = (double*) calloc(size_of_grid/2,sizeof(double)); numa_allocate_shared_windows( &Me, size_of_grid*sizeof(double)*1.1, 0 ); numa_allocate_shared_windows( &Me, size_of_grid*sizeof(double)*1.1, size_of_grid*sizeof(double)*1.1 ); // Create destination slab grid = (double*) calloc(size_of_grid,sizeof(double)); Loading