PetscSharedTmp#

Determines if all processors in a communicator share a /tmp or have different ones.

Synopsis#

Collective

Input Parameter#

  • comm - MPI_Communicator that may share /tmp

Output Parameter#

Options Database Keys#

  • -shared_tmp - indicates the directory is shared among the MPI ranks

  • -not_shared_tmp - indicates the directory is not shared among the MPI ranks

  • -tmp tmpdir - name of the directory you wish to use as /tmp

Environmental Variables#

  • PETSC_SHARED_TMP - indicates the directory is shared among the MPI ranks

  • PETSC_NOT_SHARED_TMP - indicates the directory is not shared among the MPI ranks

  • PETSC_TMP - name of the directory you wish to use as /tmp

Notes#

Stores the status as a MPI attribute so it does not have to be redetermined each time.

Assumes that all processors in a communicator either

  1. have a common /tmp or

  2. each has a separate /tmp eventually we can write a fancier one that determines which processors share a common /tmp.

This will be very slow on runs with a large number of processors since it requires O(p*p) file opens.

If the environmental variable PETSC_TMP is set it will use this directory as the “/tmp” directory.

See Also#

PetscGetTmp(), PetscSharedWorkingDirectory(), PetscGetWorkingDirectory(), PetscGetHomeDirectory()

Level#

developer

Location#

src/sys/fileio/fretrieve.c


Edit on GitLab

Index of all Sys routines
Table of Contents for all manual pages
Index of all manual pages