PIO  2.5.4
Functions/Subroutines
Define a Decomposition

Define a new decomposition of variables to distributed arrays in Fortran. More...

Functions/Subroutines

subroutine piolib_mod::pio_initdecomp_bc (iosystem, basepiotype, dims, compstart, compcount, iodesc)
 IO system descriptor structure. More...
 
subroutine piolib_mod::initdecomp_1dof_bin_i8 (iosystem, basepiotype, dims, lenblocks, compdof, iodofr, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::initdecomp_1dof_bin_i4 (iosystem, basepiotype, dims, lenblocks, compdof, iodofr, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::initdecomp_2dof_nf_i4 (iosystem, basepiotype, dims, lenblocks, compdof, iodofr, iodofw, start, count, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::initdecomp_2dof_nf_i8 (iosystem, basepiotype, dims, lenblocks, compdof, iodofr, iodofw, start, count, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::initdecomp_1dof_nf_i4 (iosystem, basepiotype, dims, lenblocks, compdof, iodof, start, count, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::initdecomp_1dof_nf_i8 (iosystem, basepiotype, dims, lenblocks, compdof, iodof, start, count, iodesc)
 PIO supports different kinds of Fortran types. More...
 
subroutine piolib_mod::pio_initdecomp_dof_i4 (iosystem, basepiotype, dims, compdof, iodesc, rearr, iostart, iocount)
 IO system descriptor structure. More...
 
subroutine piolib_mod::pio_initdecomp_dof_i8 (iosystem, basepiotype, dims, compdof, iodesc, rearr, iostart, iocount)
 

Detailed Description

Define a new decomposition of variables to distributed arrays in Fortran.

Use the generic function PIO_initdecomp() to call the underlying Fortran functions.

Function/Subroutine Documentation

◆ initdecomp_1dof_bin_i4()

subroutine piolib_mod::initdecomp_1dof_bin_i4 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (i4), intent(in)  lenblocks,
integer (i4), dimension(:), intent(in)  compdof,
integer (i4), dimension(:), intent(in)  iodofr,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined pio system descriptor, see PIO_types
basepiotypethe type of variable(s) associated with this iodesc. - PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
dimsan array of the global length of each dimesion of the variable(s)
lenblocks
compdofmapping of the storage order of the variable to its memory order
iodofr
iodescCreate a decomposition of data from a variable to multiple computation tasks.
Deprecated:
Author
Jim Edwards

◆ initdecomp_1dof_bin_i8()

subroutine piolib_mod::initdecomp_1dof_bin_i8 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer(i4), intent(in)  lenblocks,
integer(pio_offset_kind), dimension(:), intent(in)  compdof,
integer(pio_offset_kind), dimension(:), intent(in)  iodofr,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined pio system descriptor, see PIO_types
basepiotypethe type of variable(s) associated with this iodesc. - PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
dimsan array of the global length of each dimesion of the variable(s)
lenblocks
compdofmapping of the storage order of the variable to its memory order
iodofr
iodescCreate a decomposition of data from a variable to multiple computation tasks.
Deprecated:
Author
Jim Edwards

◆ initdecomp_1dof_nf_i4()

subroutine piolib_mod::initdecomp_1dof_nf_i4 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (i4), intent(in)  lenblocks,
integer (i4), dimension(:), intent(in)  compdof,
integer (i4), dimension(:), intent(in)  iodof,
integer(pio_offset_kind), dimension(:), intent(in)  start,
integer(pio_offset_kind), dimension(:), intent(in)  count,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined PIO system descriptor, see pio_types
basepiotypeThe type of variable(s) associated with this iodesc.
  • PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
    Parameters
    dimsan array of the global length of each dimesion of the variable(s)
    lenblocks
    compdofmapping of the storage order of the variable to its memory order
    iodof
    start
    count
    iodescCreate a decomposition of data from a variable to multiple computation tasks.
    Deprecated:
    Author
    Jim Edwards

◆ initdecomp_1dof_nf_i8()

subroutine piolib_mod::initdecomp_1dof_nf_i8 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (i4), intent(in)  lenblocks,
integer (pio_offset_kind), dimension(:), intent(in)  compdof,
integer (pio_offset_kind), dimension(:), intent(in)  iodof,
integer(pio_offset_kind), dimension(:), intent(in)  start,
integer(pio_offset_kind), dimension(:), intent(in)  count,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined PIO system descriptor, see pio_types
basepiotypeThe type of variable(s) associated with this iodesc.
  • PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
    Parameters
    dimsan array of the global length of each dimesion of the variable(s)
    lenblocks
    compdofmapping of the storage order of the variable to its memory order
    iodof
    start
    count
    iodescCreate a decomposition of data from a variable to multiple computation tasks.
    Deprecated:
    Author
    Jim Edwards

◆ initdecomp_2dof_nf_i4()

subroutine piolib_mod::initdecomp_2dof_nf_i4 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (i4), intent(in)  lenblocks,
integer (i4), dimension(:), intent(in)  compdof,
integer (i4), dimension(:), intent(in)  iodofr,
integer (i4), dimension(:), intent(in)  iodofw,
integer(pio_offset_kind), dimension(:), intent(in)  start,
integer(pio_offset_kind), dimension(:), intent(in)  count,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined pio system descriptor, see PIO_types
basepiotypethe type of variable(s) associated with this iodesc. - PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
dimsan array of the global length of each dimesion of the variable(s)
lenblocks
compdofmapping of the storage order of the variable to its memory order
iodofr
iodofw
startused with count to give a block description of the shape of the data
count
iodescCreate a decomposition of data from a variable to multiple computation tasks.
Deprecated:
Author
Jim Edwards

◆ initdecomp_2dof_nf_i8()

subroutine piolib_mod::initdecomp_2dof_nf_i8 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (i4), intent(in)  lenblocks,
integer (pio_offset_kind), dimension(:), intent(in)  compdof,
integer (pio_offset_kind), dimension(:), intent(in)  iodofr,
integer (pio_offset_kind), dimension(:), intent(in)  iodofw,
integer(pio_offset_kind), dimension(:), intent(in)  start,
integer(pio_offset_kind), dimension(:), intent(in)  count,
type (io_desc_t), intent(inout)  iodesc 
)

PIO supports different kinds of Fortran types.

A deprecated interface to the PIO_initdecomp method.

Parameters
iosystema defined pio system descriptor, see PIO_types
basepiotypethe type of variable(s) associated with this iodesc. - PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
dimsan array of the global length of each dimesion of the variable(s)
lenblocks
compdofmapping of the storage order of the variable to its memory order
iodofr
iodofw
startused with count to give a block description of the shape of the data
count
iodescCreate a decomposition of data from a variable to multiple computation tasks.
Deprecated:
Author
Jim Edwards

◆ pio_initdecomp_bc()

subroutine piolib_mod::pio_initdecomp_bc ( type (iosystem_desc_t), intent(inout)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (kind=pio_offset_kind), dimension(:)  compstart,
integer (kind=pio_offset_kind), dimension(:)  compcount,
type (io_desc_t), intent(out)  iodesc 
)

IO system descriptor structure.

Implements the block-cyclic decomposition for PIO_initdecomp. This provides the ability to describe a computational decomposition in PIO that has a block-cyclic form. That is something that can be described using start and count arrays. Optional parameters for this subroutine allows for the specification of io decomposition using iostart and iocount arrays. If iostart and iocount arrays are not specified by the user, and rearrangement is turned on then PIO will calculate a suitable IO decomposition

Parameters
iosystemThis structure contains the general IO subsystem data and MPI structure
basepiotypePIO supports different kinds of Fortran types. The type of variable(s) associated with this iodesc.
  • PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
    Parameters
    dimsAn array of the global length of each dimesion of the variable(s)
    compstartThe start index into the block-cyclic computational decomposition
    compcountThe count for the block-cyclic computational decomposition
    iodescCreate a decomposition of data from a variable to multiple computation tasks.
    Author
    Jim Edwards

◆ pio_initdecomp_dof_i4()

subroutine piolib_mod::pio_initdecomp_dof_i4 ( type (iosystem_desc_t), intent(inout)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer(i4), dimension(:), intent(in)  compdof,
type (io_desc_t), intent(inout)  iodesc,
integer, optional, target  rearr,
integer (pio_offset_kind), dimension(:), optional  iostart,
integer (pio_offset_kind), dimension(:), optional  iocount 
)

IO system descriptor structure.

Implements the degrees of freedom decomposition for PIO_initdecomp(). This provides the ability to describe a computational decomposition in PIO using degrees of freedom method. This is a decomposition that can not be easily described using a start and count method.

Optional parameters for this subroutine allows for the specififcation of io decomposition using iostart and iocount arrays. If iostart and iocount arrays are not specified by the user, and rearrangement is turned on then PIO will calculate an suitable IO decomposition.

Note
This subroutine was previously called initdecomp_1dof_nf_box.
Parameters
iosystemThis structure contains the general IO subsystem data and MPI structure
basepiotypePIO supports different kinds of Fortran types. The type of variable(s) associated with this iodesc.
  • PIO_doauble : 8-byte reals or double precision
  • PIO_real : 4-byte reals
  • PIO_int : 4-byte integers
  • PIO_short : 2-byte integers
  • PIO_char : character
    Parameters
    dimsAn array of the global length of each dimesion of the variable(s)
    compdofMapping of the storage order for the computational decomposition to its memory order
    iodescCreate a decomposition of data from a variable to multiple computation tasks.
    rearrrearranger
    iostartThe start index for the block-cyclic io decomposition
    iocountThe count for the block-cyclic io decomposition
    Author
    Jim Edwards

◆ pio_initdecomp_dof_i8()

subroutine piolib_mod::pio_initdecomp_dof_i8 ( type (iosystem_desc_t), intent(in)  iosystem,
integer(i4), intent(in)  basepiotype,
integer(i4), dimension(:), intent(in)  dims,
integer (pio_offset_kind), dimension(:), intent(in)  compdof,
type (io_desc_t), intent(inout)  iodesc,
integer, optional, target  rearr,
integer (pio_offset_kind), dimension(:), optional  iostart,
integer (pio_offset_kind), dimension(:), optional  iocount 
)

I8 version of PIO_initdecomp_dof_i4.

Author
Jim Edwards