1
1

Merge pull request #5224 from benmenadue/master

io/romio314: Replace deprecated MPI-1 functions
Этот коммит содержится в:
Nathan Hjelm 2018-06-06 15:41:53 -06:00 коммит произвёл GitHub
родитель 5853ebee1a 34ec0bd8ab
Коммит 63ded4d083
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
19 изменённых файлов: 60 добавлений и 59 удалений

Просмотреть файл

@ -440,7 +440,7 @@ static void ADIOI_Read_and_exch(ADIO_File fd, void *buf, MPI_Datatype
int req_len, flag, rank; int req_len, flag, rank;
MPI_Status status; MPI_Status status;
ADIOI_Flatlist_node *flat_buf=NULL; ADIOI_Flatlist_node *flat_buf=NULL;
MPI_Aint buftype_extent; MPI_Aint buftype_extent, buftype_lb;
int coll_bufsize; int coll_bufsize;
#ifdef RDCOLL_DEBUG #ifdef RDCOLL_DEBUG
int iii; int iii;
@ -523,7 +523,7 @@ static void ADIOI_Read_and_exch(ADIO_File fd, void *buf, MPI_Datatype
flat_buf = ADIOI_Flatlist; flat_buf = ADIOI_Flatlist;
while (flat_buf->type != datatype) flat_buf = flat_buf->next; while (flat_buf->type != datatype) flat_buf = flat_buf->next;
} }
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
done = 0; done = 0;
off = st_loc; off = st_loc;
@ -610,7 +610,7 @@ static void ADIOI_Read_and_exch(ADIO_File fd, void *buf, MPI_Datatype
if (req_off < real_off + real_size) { if (req_off < real_off + real_size) {
count[i]++; count[i]++;
ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)read_buf)+req_off-real_off) == (ADIO_Offset)(MPIR_Upint)(read_buf+req_off-real_off)); ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)read_buf)+req_off-real_off) == (ADIO_Offset)(MPIR_Upint)(read_buf+req_off-real_off));
MPI_Address(read_buf+req_off-real_off, MPI_Get_address(read_buf+req_off-real_off,
&(others_req[i].mem_ptrs[j])); &(others_req[i].mem_ptrs[j]));
ADIOI_Assert((real_off + real_size - req_off) == (int)(real_off + real_size - req_off)); ADIOI_Assert((real_off + real_size - req_off) == (int)(real_off + real_size - req_off));
send_size[i] += (int)(ADIOI_MIN(real_off + real_size - req_off, send_size[i] += (int)(ADIOI_MIN(real_off + real_size - req_off,

Просмотреть файл

@ -517,7 +517,7 @@ static void ADIOI_Exch_and_write(ADIO_File fd, const void *buf, MPI_Datatype
int *send_buf_idx, *curr_to_proc, *done_to_proc; int *send_buf_idx, *curr_to_proc, *done_to_proc;
MPI_Status status; MPI_Status status;
ADIOI_Flatlist_node *flat_buf=NULL; ADIOI_Flatlist_node *flat_buf=NULL;
MPI_Aint buftype_extent; MPI_Aint buftype_extent, buftype_lb;
int info_flag, coll_bufsize; int info_flag, coll_bufsize;
char *value; char *value;
static char myname[] = "ADIOI_EXCH_AND_WRITE"; static char myname[] = "ADIOI_EXCH_AND_WRITE";
@ -634,7 +634,7 @@ static void ADIOI_Exch_and_write(ADIO_File fd, const void *buf, MPI_Datatype
flat_buf = ADIOI_Flatlist; flat_buf = ADIOI_Flatlist;
while (flat_buf->type != datatype) flat_buf = flat_buf->next; while (flat_buf->type != datatype) flat_buf = flat_buf->next;
} }
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
/* I need to check if there are any outstanding nonblocking writes to /* I need to check if there are any outstanding nonblocking writes to
@ -706,7 +706,7 @@ static void ADIOI_Exch_and_write(ADIO_File fd, const void *buf, MPI_Datatype
if (req_off < off + size) { if (req_off < off + size) {
count[i]++; count[i]++;
ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)write_buf)+req_off-off) == (ADIO_Offset)(MPIR_Upint)(write_buf+req_off-off)); ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)write_buf)+req_off-off) == (ADIO_Offset)(MPIR_Upint)(write_buf+req_off-off));
MPI_Address(write_buf+req_off-off, MPI_Get_address(write_buf+req_off-off,
&(others_req[i].mem_ptrs[j])); &(others_req[i].mem_ptrs[j]));
ADIOI_Assert((off + size - req_off) == (int)(off + size - req_off)); ADIOI_Assert((off + size - req_off) == (int)(off + size - req_off));
recv_size[i] += (int)(ADIOI_MIN(off + size - req_off, recv_size[i] += (int)(ADIOI_MIN(off + size - req_off,

Просмотреть файл

@ -195,9 +195,9 @@ void ADIOI_GRIDFTP_ReadDiscontig(ADIO_File fd, void *buf, int count,
char myname[]="ADIOI_GRIDFTP_ReadDiscontig"; char myname[]="ADIOI_GRIDFTP_ReadDiscontig";
int myrank,nprocs; int myrank,nprocs;
/* size and extent of buffer in memory */ /* size and extent of buffer in memory */
MPI_Aint btype_size,btype_extent; MPI_Aint btype_size,btype_extent,btype_lb;
/* size and extent of file record layout */ /* size and extent of file record layout */
MPI_Aint ftype_size,ftype_extent; MPI_Aint ftype_size,ftype_extent,ftype_lb;
/* size of file elemental type; seeks are done in units of this */ /* size of file elemental type; seeks are done in units of this */
MPI_Aint etype_size; MPI_Aint etype_size;
MPI_Aint extent; MPI_Aint extent;
@ -221,11 +221,11 @@ void ADIOI_GRIDFTP_ReadDiscontig(ADIO_File fd, void *buf, int count,
etype_size=fd->etype_size; etype_size=fd->etype_size;
MPI_Type_size_x(fd->filetype,&ftype_size); MPI_Type_size_x(fd->filetype,&ftype_size);
MPI_Type_extent(fd->filetype,&ftype_extent); MPI_Type_get_extent(fd->filetype,&ftype_lb,&ftype_extent);
/* This is arguably unnecessary, as this routine assumes that the /* This is arguably unnecessary, as this routine assumes that the
buffer in memory is contiguous */ buffer in memory is contiguous */
MPI_Type_size_x(datatype,&btype_size); MPI_Type_size_x(datatype,&btype_size);
MPI_Type_extent(datatype,&btype_extent); MPI_Type_get_extent(datatype,&btype_lb,&btype_extent);
ADIOI_Datatype_iscontig(datatype,&buf_contig); ADIOI_Datatype_iscontig(datatype,&buf_contig);
if ( ( btype_extent!=btype_size ) || ( ! buf_contig ) ) if ( ( btype_extent!=btype_size ) || ( ! buf_contig ) )

Просмотреть файл

@ -207,8 +207,8 @@ void ADIOI_GRIDFTP_WriteDiscontig(ADIO_File fd, void *buf, int count,
{ {
char myname[]="ADIOI_GRIDFTP_WriteDiscontig"; char myname[]="ADIOI_GRIDFTP_WriteDiscontig";
int myrank,nprocs; int myrank,nprocs;
MPI_Aint btype_size,btype_extent; MPI_Aint btype_size,btype_extent,btype_lb;
MPI_Aint ftype_size,ftype_extent; MPI_Aint ftype_size,ftype_extent,ftype_lb;
MPI_Aint etype_size; MPI_Aint etype_size;
MPI_Aint extent; MPI_Aint extent;
ADIOI_Flatlist_node *flat_file; ADIOI_Flatlist_node *flat_file;
@ -221,11 +221,11 @@ void ADIOI_GRIDFTP_WriteDiscontig(ADIO_File fd, void *buf, int count,
MPI_Comm_size(fd->comm,&nprocs); MPI_Comm_size(fd->comm,&nprocs);
etype_size=fd->etype_size; etype_size=fd->etype_size;
MPI_Type_size_x(fd->filetype,&ftype_size); MPI_Type_size_x(fd->filetype,&ftype_size);
MPI_Type_extent(fd->filetype,&ftype_extent); MPI_Type_get_extent(fd->filetype,&ftype_lb,&ftype_extent);
/* This is arguably unnecessary, as this routine assumes that the /* This is arguably unnecessary, as this routine assumes that the
buffer in memory is contiguous */ buffer in memory is contiguous */
MPI_Type_size_x(datatype,&btype_size); MPI_Type_size_x(datatype,&btype_size);
MPI_Type_extent(datatype,&btype_extent); MPI_Type_get_extent(datatype,&btype_lb,&btype_extent);
ADIOI_Datatype_iscontig(datatype,&buf_contig); ADIOI_Datatype_iscontig(datatype,&buf_contig);
if ( ( btype_extent!=btype_size ) || ( ! buf_contig ) ) if ( ( btype_extent!=btype_size ) || ( ! buf_contig ) )

Просмотреть файл

@ -316,7 +316,7 @@ static void ADIOI_LUSTRE_Exch_and_write(ADIO_File fd, const void *buf,
char *write_buf = NULL; char *write_buf = NULL;
MPI_Status status; MPI_Status status;
ADIOI_Flatlist_node *flat_buf = NULL; ADIOI_Flatlist_node *flat_buf = NULL;
MPI_Aint buftype_extent; MPI_Aint buftype_extent, buftype_lb;
int stripe_size = striping_info[0], avail_cb_nodes = striping_info[2]; int stripe_size = striping_info[0], avail_cb_nodes = striping_info[2];
int data_sieving = 0; int data_sieving = 0;
ADIO_Offset *srt_off = NULL; ADIO_Offset *srt_off = NULL;
@ -420,7 +420,7 @@ static void ADIOI_LUSTRE_Exch_and_write(ADIO_File fd, const void *buf,
while (flat_buf->type != datatype) while (flat_buf->type != datatype)
flat_buf = flat_buf->next; flat_buf = flat_buf->next;
} }
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
/* I need to check if there are any outstanding nonblocking writes to /* I need to check if there are any outstanding nonblocking writes to
* the file, which could potentially interfere with the writes taking * the file, which could potentially interfere with the writes taking
* place in this collective write call. Since this is not likely to be * place in this collective write call. Since this is not likely to be
@ -501,7 +501,7 @@ static void ADIOI_LUSTRE_Exch_and_write(ADIO_File fd, const void *buf,
if (req_off < iter_st_off + max_size) { if (req_off < iter_st_off + max_size) {
recv_count[i]++; recv_count[i]++;
ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)write_buf)+req_off-off) == (ADIO_Offset)(MPIR_Upint)(write_buf+req_off-off)); ADIOI_Assert((((ADIO_Offset)(MPIR_Upint)write_buf)+req_off-off) == (ADIO_Offset)(MPIR_Upint)(write_buf+req_off-off));
MPI_Address(write_buf + req_off - off, MPI_Get_address(write_buf + req_off - off,
&(others_req[i].mem_ptrs[j])); &(others_req[i].mem_ptrs[j]));
recv_size[i] += req_len; recv_size[i] += req_len;
} else { } else {

Просмотреть файл

@ -157,7 +157,7 @@ void ADIOI_LUSTRE_WriteStrided(ADIO_File fd, const void *buf, int count,
ADIO_Offset num, size, n_filetypes, etype_in_filetype, st_n_filetypes; ADIO_Offset num, size, n_filetypes, etype_in_filetype, st_n_filetypes;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset userbuf_off; ADIO_Offset userbuf_off;
ADIO_Offset off, req_off, disp, end_offset=0, writebuf_off, start_off; ADIO_Offset off, req_off, disp, end_offset=0, writebuf_off, start_off;
@ -195,9 +195,9 @@ void ADIOI_LUSTRE_WriteStrided(ADIO_File fd, const void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
ADIOI_Assert((buftype_size * count) == ((ADIO_Offset)(unsigned)buftype_size * (ADIO_Offset)count)); ADIOI_Assert((buftype_size * count) == ((ADIO_Offset)(unsigned)buftype_size * (ADIO_Offset)count));

Просмотреть файл

@ -76,7 +76,7 @@ void ADIOI_PIOFS_WriteStrided(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent, indx; MPI_Aint filetype_extent, buftype_extent, indx, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp; ADIO_Offset off, disp;
int flag, new_bwr_size, new_fwr_size, err_flag=0; int flag, new_bwr_size, new_fwr_size, err_flag=0;
@ -101,9 +101,9 @@ void ADIOI_PIOFS_WriteStrided(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -115,7 +115,7 @@ void ADIOI_PVFS_ReadStridedListIO(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset userbuf_off; ADIO_Offset userbuf_off;
ADIO_Offset off, disp, start_off; ADIO_Offset off, disp, start_off;
@ -158,9 +158,9 @@ void ADIOI_PVFS_ReadStridedListIO(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -101,7 +101,7 @@ void ADIOI_PVFS_WriteStrided(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent, indx; MPI_Aint filetype_extent, buftype_extent, indx, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp; ADIO_Offset off, disp;
int flag, new_bwr_size, new_fwr_size, err_flag=0; int flag, new_bwr_size, new_fwr_size, err_flag=0;
@ -138,9 +138,9 @@ void ADIOI_PVFS_WriteStrided(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;
@ -475,7 +475,7 @@ void ADIOI_PVFS_WriteStridedListIO(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset userbuf_off; ADIO_Offset userbuf_off;
ADIO_Offset off, disp, start_off; ADIO_Offset off, disp, start_off;
@ -526,9 +526,9 @@ void ADIOI_PVFS_WriteStridedListIO(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -24,7 +24,7 @@ int ADIOI_PVFS2_StridedDtypeIO(ADIO_File fd, void *buf, int count,
PVFS_Request tmp_mem_req, mem_req, tmp_file_req, file_req; PVFS_Request tmp_mem_req, mem_req, tmp_file_req, file_req;
PVFS_sysresp_io resp_io; PVFS_sysresp_io resp_io;
ADIO_Offset off = -1, bytes_into_filetype = 0; ADIO_Offset off = -1, bytes_into_filetype = 0;
MPI_Aint filetype_extent = -1; MPI_Aint filetype_extent = -1, filetype_lb = -1;
int i = -1; int i = -1;
MPI_Count etype_size; MPI_Count etype_size;
PVFS_size pvfs_disp = -1; PVFS_size pvfs_disp = -1;
@ -54,7 +54,7 @@ int ADIOI_PVFS2_StridedDtypeIO(ADIO_File fd, void *buf, int count,
*error_code = MPI_SUCCESS; *error_code = MPI_SUCCESS;
return -1; return -1;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(fd->etype, &etype_size); MPI_Type_size_x(fd->etype, &etype_size);
if (filetype_size == 0) { if (filetype_size == 0) {
*error_code = MPI_SUCCESS; *error_code = MPI_SUCCESS;

Просмотреть файл

@ -44,6 +44,7 @@ int ADIOI_PVFS2_StridedListIO(ADIO_File fd, void *buf, int count,
ADIOI_Flatlist_node *flat_buf_p, *flat_file_p; ADIOI_Flatlist_node *flat_buf_p, *flat_file_p;
MPI_Count buftype_size = -1, filetype_size = -1; MPI_Count buftype_size = -1, filetype_size = -1;
MPI_Aint filetype_extent = -1, buftype_extent = -1;; MPI_Aint filetype_extent = -1, buftype_extent = -1;;
MPI_Aint filetype_lb = -1, buftype_lb = -1;;
int buftype_is_contig = -1, filetype_is_contig = -1; int buftype_is_contig = -1, filetype_is_contig = -1;
/* PVFS2 specific parameters */ /* PVFS2 specific parameters */
@ -67,9 +68,9 @@ int ADIOI_PVFS2_StridedListIO(ADIO_File fd, void *buf, int count,
*error_code = MPI_SUCCESS; *error_code = MPI_SUCCESS;
return -1; return -1;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
io_size = buftype_size*count; io_size = buftype_size*count;
pvfs_fs = (ADIOI_PVFS2_fs*)fd->fs_ptr; pvfs_fs = (ADIOI_PVFS2_fs*)fd->fs_ptr;

Просмотреть файл

@ -208,8 +208,8 @@ void ADIOI_PVFS2_Open(ADIO_File fd, int *error_code)
#endif #endif
/* broadcast status and (possibly valid) object reference */ /* broadcast status and (possibly valid) object reference */
MPI_Address(&o_status.error, &offsets[0]); MPI_Get_address(&o_status.error, &offsets[0]);
MPI_Address(&o_status.object_ref, &offsets[1]); MPI_Get_address(&o_status.object_ref, &offsets[1]);
MPI_Type_struct(2, lens, offsets, types, &open_status_type); MPI_Type_struct(2, lens, offsets, types, &open_status_type);
MPI_Type_commit(&open_status_type); MPI_Type_commit(&open_status_type);

Просмотреть файл

@ -24,7 +24,7 @@ void ADIOI_PVFS2_OldReadStrided(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp, start_off, initial_off; ADIO_Offset off, disp, start_off, initial_off;
int flag, st_frd_size, st_n_filetypes; int flag, st_frd_size, st_n_filetypes;
@ -78,9 +78,9 @@ void ADIOI_PVFS2_OldReadStrided(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -29,7 +29,7 @@ void ADIOI_PVFS2_OldWriteStrided(ADIO_File fd, const void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp, start_off, initial_off; ADIO_Offset off, disp, start_off, initial_off;
int flag, st_fwr_size, st_n_filetypes; int flag, st_fwr_size, st_n_filetypes;
@ -94,9 +94,9 @@ void ADIOI_PVFS2_OldWriteStrided(ADIO_File fd, const void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -115,8 +115,8 @@ void ADIOI_ZOIDFS_Open(ADIO_File fd, int *error_code)
#endif #endif
/* broadcast status and (possibly valid) object reference */ /* broadcast status and (possibly valid) object reference */
MPI_Address(&o_status.error, &offsets[0]); MPI_Get_address(&o_status.error, &offsets[0]);
MPI_Address(&o_status.handle, &offsets[1]); MPI_Get_address(&o_status.handle, &offsets[1]);
MPI_Type_struct(2, lens, offsets, types, &open_status_type); MPI_Type_struct(2, lens, offsets, types, &open_status_type);
MPI_Type_commit(&open_status_type); MPI_Type_commit(&open_status_type);

Просмотреть файл

@ -26,7 +26,7 @@ void ADIOI_ZOIDFS_ReadStrided(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp, start_off, initial_off; ADIO_Offset off, disp, start_off, initial_off;
int flag, st_frd_size, st_n_filetypes; int flag, st_frd_size, st_n_filetypes;
@ -80,9 +80,9 @@ void ADIOI_ZOIDFS_ReadStrided(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -31,7 +31,7 @@ void ADIOI_ZOIDFS_WriteStrided(ADIO_File fd, void *buf, int count,
int n_filetypes, etype_in_filetype; int n_filetypes, etype_in_filetype;
ADIO_Offset abs_off_in_filetype=0; ADIO_Offset abs_off_in_filetype=0;
MPI_Count filetype_size, etype_size, buftype_size; MPI_Count filetype_size, etype_size, buftype_size;
MPI_Aint filetype_extent, buftype_extent; MPI_Aint filetype_extent, buftype_extent, filetype_lb, buftype_lb;
int buf_count, buftype_is_contig, filetype_is_contig; int buf_count, buftype_is_contig, filetype_is_contig;
ADIO_Offset off, disp, start_off, initial_off; ADIO_Offset off, disp, start_off, initial_off;
int flag, st_fwr_size, st_n_filetypes; int flag, st_fwr_size, st_n_filetypes;
@ -94,9 +94,9 @@ void ADIOI_ZOIDFS_WriteStrided(ADIO_File fd, void *buf, int count,
return; return;
} }
MPI_Type_extent(fd->filetype, &filetype_extent); MPI_Type_get_extent(fd->filetype, &filetype_lb, &filetype_extent);
MPI_Type_size_x(datatype, &buftype_size); MPI_Type_size_x(datatype, &buftype_size);
MPI_Type_extent(datatype, &buftype_extent); MPI_Type_get_extent(datatype, &buftype_lb, &buftype_extent);
etype_size = fd->etype_size; etype_size = fd->etype_size;
bufsize = buftype_size * count; bufsize = buftype_size * count;

Просмотреть файл

@ -50,7 +50,7 @@ int MPI_Type_create_darray(int size, int rank, int ndims,
{ {
int err, error_code; int err, error_code;
int i; int i;
MPI_Aint orig_extent, size_with_aint; MPI_Aint orig_extent, orig_lb, size_with_aint;
MPI_Offset size_with_offset; MPI_Offset size_with_offset;
static char myname[] = "MPI_TYPE_CREATE_DARRAY"; static char myname[] = "MPI_TYPE_CREATE_DARRAY";
@ -159,7 +159,7 @@ int MPI_Type_create_darray(int size, int rank, int ndims,
return MPIO_Err_return_comm(MPI_COMM_SELF, error_code); return MPIO_Err_return_comm(MPI_COMM_SELF, error_code);
} }
MPI_Type_extent(oldtype, &orig_extent); MPI_Type_get_extent(oldtype, &orig_lb, &orig_extent);
/* check if MPI_Aint is large enough for size of global array. /* check if MPI_Aint is large enough for size of global array.
if not, complain. */ if not, complain. */

Просмотреть файл

@ -43,7 +43,7 @@ int MPI_Type_create_subarray(int ndims, int *array_of_sizes,
int order, MPI_Datatype oldtype, int order, MPI_Datatype oldtype,
MPI_Datatype *newtype) MPI_Datatype *newtype)
{ {
MPI_Aint extent, size_with_aint; MPI_Aint extent, lb, size_with_aint;
int i, err, error_code; int i, err, error_code;
MPI_Offset size_with_offset; MPI_Offset size_with_offset;
@ -128,7 +128,7 @@ int MPI_Type_create_subarray(int ndims, int *array_of_sizes,
return MPIO_Err_return_comm(MPI_COMM_SELF, error_code); return MPIO_Err_return_comm(MPI_COMM_SELF, error_code);
} }
MPI_Type_extent(oldtype, &extent); MPI_Type_get_extent(oldtype, &lb, &extent);
/* check if MPI_Aint is large enough for size of global array. /* check if MPI_Aint is large enough for size of global array.
if not, complain. */ if not, complain. */