Чтобы в MPI обеспечить интерфейс профилирования, реализация MPI
должна:
Обеспечить механизм, с помощью которого ко всем определенным в MPI
функциям можно обращаться по смещенному имени. Таким образом все функции
MPI (которые обычно начинаются с префиксом ``MPI_'')
должны быть также доступны с префиксом ``PMPI_ ''.
Гарантировать, что те функции MPI, которые не изменены, так же можно
включать в исполнительный файл без конфликтов в отношении имен.
Документировать реализацию различных языковых привязок интерфейса MPI,
если они располагаются иерархически, так, чтобы разработчик знал, обязан ли
он разрабатывать интерфейс профилирования для каждой привязки или можно для
экономии ограничиться только самыми нижними уровнями.
Там, где реализация различных языковых привязок выполнена путем разделения на
уровни (например, привязка в языке ФОРТРАН есть ряд функций
``оболочек'', которые вызывают реализацию Си), гарантировать, что эти
функции отделяются от остальной части библиотеки. Это требование позволяет
составителю профилирующей библиотеки извлекать эти функции из оригинальной
MPI библиотеки и добавлять их в библиотеку профилирования без
импортирования кода из какого-либо ненадежного источника.
Обеспечивать подпрограмму холостой команды MPI_PCONTROL в
библиотеке MPI.