Draft: Asynchronous parallel I/O for reading and writing wavefield data.
- Added a class which handles the I/O using:
- Asynchronous POSIX-IO
- Nonblocking MPI-IO
- ADIOS2-IO
- Current POSIX-IO implementation
- Added WAVEFIELD_DIR variable, which points to the directory where the wavefield data is going to be stored.
- Removed the code which removes the
wavefielddirectory without any proper checks. - Added proper asynchronous communication routines.
- Added buffered I/O for functions like outmod,outgrad and outhess. Added mpi versions for the same functions.
- Added buffered I/O for functions like readmod, and mergemod.
- Improved the performance of
gradient_Tandgradient_T_acousticby adding explicit simd pragmas. - Improved the communication in the Hessian stacking using a single MPI_Allreduce instead of an explicit call for each array field.
- Improved error handling in the case of POSIX IO, replaced the call to
perrorwith a call tolog_fatal.
Edited by Begatim Bytyqi