Проблемы с компилятором PGI, сбой программы с MPI - PullRequest
0 голосов
/ 10 июля 2019

У меня есть несколько простых кодов, которые хорошо компилируются с помощью компилятора GNU. Затем я переключился на компилятор PGI. Но программа не удастся. Я собираю на десктопе процессор Xeon E5 с процессором 16 и двумя видеокартами, одну титановую и одну 1080.

Я тестировал со следующим простым привет миром,

#include <mpi.h>
#include <iostream>

using namespace std;

int main(int argc, char **argv){
        int procid, numprocs;
        MPI_Init(&argc, &argv);
        MPI_Comm_rank(MPI_COMM_WORLD, &procid);
        MPI_Comm_size(MPI_COMM_WORLD, &numprocs);

        cout << "hello world"<< endl;

        MPI_Finalize();
        return 0;
}

Ошибка следующая

[WorkStation:14395] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 388
[WorkStation:14395] [[INVALID],INVALID] ORTE_ERROR_LOG: A system-required executable either could not be found or was not executable by this user in file ../../../../../orte/mca/ess/singleton/ess_singleton_module.c at line 166
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    orte_init:startup:internal-failure
But I couldn't open the help file:
    /proj/pgi/linux86-64-llvm/2019/mpi/openmpi-3.1.3/share/openmpi/help-orte-runtime: No such file or directory.  Sorry!
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    mpi_init:startup:internal-failure
But I couldn't open the help file:
    /proj/pgi/linux86-64-llvm/2019/mpi/openmpi-3.1.3/share/openmpi/help-mpi-runtime.txt: No such file or directory.  Sorry!
--------------------------------------------------------------------------
*** An error occurred in MPI_Init
*** on a NULL communicator
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
***    and potentially your MPI job)
[WorkStation:14395] Local abort before MPI_INIT completed completed successfully, but am not able to aggregate error messages, and not able to guarantee that all other processes were killed!

Результаты выполнения mpic ++:

/opt/pgi/linux86-64/2019/mpi/openmpi-3.1.3/bin/mpic++

Я попробовал то же самое на своем ноутбуке с такой же настройкой. Компилируется хорошо без проблем. Я начинаю задаваться вопросом, является ли причиной возникновения проблемы многопроцессорность. Поскольку у каждого GPU есть разные цели PGI, я попробовал оба -ta = tesla: cc70 и -ta = tesla: cc60. Ни то, ни другое не работает.

Я понятия не имею, как это отладить, если потребуется дополнительная информация, я могу добавить ее.

...