Skip to content

Commit

Permalink
FLASH-IO: set hint romio_ds_write to disable
Browse files Browse the repository at this point in the history
Set hint romio_no_indep_rw according to command-line option -i
  • Loading branch information
wkliao committed May 23, 2024
1 parent 530f90f commit 051cdc1
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 6 deletions.
12 changes: 9 additions & 3 deletions benchmarks/FLASH-IO/checkpoint_ncmpi_parallel.F90
Original file line number Diff line number Diff line change
Expand Up @@ -334,11 +334,17 @@ double precision function checkpoint_wr_ncmpi_par (filenum, simtime)
filename = trim(basenm) // 'ncmpi_chk_'//fnum_string//'.nc'

! set up MPI I/O hints for performance enhancement
file_info = MPI_INFO_NULL
call MPI_Info_create(file_info, err)

! set some ROMIO hints
! call MPI_Info_set(file_info, 'romio_no_indep_rw', 'true', err)
! whether doing independent or collective writes
if (indep_io) then
call MPI_Info_set(file_info, 'romio_no_indep_rw', 'false', err)
else
call MPI_Info_set(file_info, 'romio_no_indep_rw', 'true', err)
endif

! disable data sieving, as FLASH-IO does large continuous writes
call MPI_Info_set(file_info, "romio_ds_write", "disable", err)

! disable file offset alignment for fixed-size variables
call MPI_Info_set(file_info, "nc_var_align_size", "1", err)
Expand Down
12 changes: 9 additions & 3 deletions benchmarks/FLASH-IO/plotfile_ncmpi_parallel.F90
Original file line number Diff line number Diff line change
Expand Up @@ -372,11 +372,17 @@ double precision function plotfile_ncmpi_par(filenum, simtime, corners)
endif

! set up MPI I/O hints for performance enhancement
file_info = MPI_INFO_NULL
call MPI_Info_create(file_info, err)

! use some ROMIO hints
! call MPI_Info_set(file_info, 'romio_no_indep_rw', 'true', err)
! whether doing independent or collective writes
if (indep_io) then
call MPI_Info_set(file_info, 'romio_no_indep_rw', 'false', err)
else
call MPI_Info_set(file_info, 'romio_no_indep_rw', 'true', err)
endif

! disable data sieving, as FLASH-IO does large continuous writes
call MPI_Info_set(file_info, "romio_ds_write", "disable", err)

! disable file offset alignment for fixed-size variables
call MPI_Info_set(file_info, "nc_var_align_size", "1", err)
Expand Down

0 comments on commit 051cdc1

Please sign in to comment.