void ADIO_ReadContigColl(ADIO_File fd, void *buf, int len, int file_ptr_type, ADIO_Offset offset, ADIO_Status *status, int *error_code)
void ADIO_ReadStridedColl(ADIO_File fd, void *buf, int count, MPI_Datatype datatype, int file_ptr_type, ADIO_Offset offset, ADIO_Status *status, int *error_code)
void ADIO_IreadContigColl(ADIO_File fd, void *buf, int len, int file_ptr_type, ADIO_Offset offset, ADIO_Request *request, int *error_code)
void ADIO_IreadStridedColl(ADIO_File fd, void *buf, int count, MPI_Datatype datatype, int file_ptr_type, ADIO_Offset offset, ADIO_Request *request, int *error_code)
Similarly ADIO_WriteContigColl, ADIO_WriteStridedColl, ADIO_IwriteStridedColl.
Several researchers have demonstrated that, for many common access patterns, collective I/O can greatly improve performance [3,24,14,21]. To enable the use of collective I/O, ADIO provides collective versions of all read/write routines. A collective routine must be called by all processes in the group that opened the file. However, a collective routine does not necessarily imply a barrier synchronization.