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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions