MPI_Type_extent(MPI_Datatype datatype,MPI_Aint extent)
return the extent of a datatype.
MPI_Type_size(MPI_Datatype datatype,int *size)
return the total size,in bytes,of the entries in the type signature associated with datatype.
eg:type={(double,0),(char 8)}(a double at displacement zero,followed by a char at displacement eight)
a call to MPI_Type_extent(type,i) will return i=16,a call to MPI_Type_size(type,i) will return i=9.
MPI_Type_contiguous(int count,MPI_Datatype oldType,MPI_Datatype *newType)
return a newType consisting of the replication of a datatype into contiguous location.
eg:type={(double,0),(char 8)},let count=3,call MPI_Type_contiguous(3,type,newtype),so the newtype={(double,0),(char 8),(double,16),(char 24),(double,32),(char 40)}
MPI_Type_vector(int count,int blocklen,int stride,MPI_Datatype oldtype,MPI_datatype *newtype)