PIO  2.5.4
Frequently Asked Questions

Here is a list of frequently asked questions and their answers.

How do I specify which tasks perform IO?

This is done in the call to Initialize an IOSystem which has two interfaces: init_intracom and init_intercom.

  • In the init_intracom interface, use the num_iotasks and stride variables to specify the total number of io tasks and the stride between them with respect to the mpi communicator, comp_comm, which is provided. You can also use the optional base argument to shift the first IO task away from the first computational task, this is often desirable because the applications first computational task often has higher memory requirements than other tasks. IO tasks are a subset of the tasks defined in comp_comm.

  • In the init_intercom interface, IO tasks are a disjoint set of tasks from those in the computational communicator.

Note that num_iotasks is the maximum number of IO tasks to use for an IO operation. The size of the field being read or written along with the tunable blocksize parameter, Box Rearranger Settings, determines the actual number of tasks used for a given IO operation.

How do I test if PIO is installed and working correctly?

The PIO Library distribution contains tests for PIO. They are run my 'make check'. The tests use mpiexec to run tests on 4, 8, or 16 processors.