Функциональные указатели MPI +? - PullRequest
1 голос
/ 07 сентября 2011

Если я использую один и тот же двоичный файл (что подразумевает одну и ту же архитектуру) на нескольких узлах кластера Beowulf в конфигурации MPI, безопасно ли передавать указатели функций через MPI, чтобы сообщить другому узлу о вызове функции?При каких обстоятельствах, если таковые имеются, одна и та же функция в одном и том же двоичном файле может иметь разные виртуальные адреса на разных машинах или в разных экземплярах?

Ответы [ 2 ]

4 голосов
/ 07 сентября 2011

Просто создайте массив функций, заполненных известным порядком и идентификатором проходных функций.

4 голосов
/ 07 сентября 2011

Передача указателям любого вида, кроме одного общего указателя файла на коллективный MPI_FILE_OPEN (который поддерживает MPI), в другие процессы не имеет смысла. Отдельные адресные пространства означают, что значение указателя бесполезно в любом процессе, кроме того, который его сгенерировал.

С другой стороны, вы можете передать информацию о , какую функцию вы хотите, чтобы каждый процесс вызывал, или сделать так, чтобы каждый решал индивидуально. Конечно, это зависит от того, что делает ваш код.

...