Skip to content

Add new variant of MPI_Pcontrol that allows Fortran to pass more than just an integer value #26

@jprotze

Description

@jprotze

The C and Fortran bindings of MPI_Pcontrol are:

int MPI_Pcontrol(const int level, ...)

MPI_Pcontrol(level)
    INTEGER, INTENT(IN) :: level

Being a variadic function in C, there is no way to call the C function from Fortran, so the only option is to call the Fortran API function with the limitation of having only a single integer value.

The OMPT interface has a similar function defined as omp_control_tool(int command, int modifier, void* arg). Using bind-c, Fortran applications can use this function to pass information like a string to the tool.

The idea is to introduce a new MPI_P function to pass information to tools:

int MPI_Px(int level, void* arg)

Suggested names in the discussion: MPI_Pcontrol_tool, MPI_Pcontrol_x, MPI_Pinstrument

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions