Как вынудить OpenMPI использовать GCC вместо ICC? Действительно ли перекомпиляция OpenMPI необходима?

У меня есть C-код для параллельных вычислений, записанных для gcc, и я хочу скомпилировать его на кластере, который, по-видимому, использует icc через mpicc. Исправление кода, чтобы быть icc- дружественный, кажется, слишком требует время, поэтому интересно, могу ли я спросить OpenMPI использовать gcc вместо этого. У меня нет прав администратора на том кластере, и я на самом деле предпочел бы не делать, смешивают исходную конфигурацию.

Если не возможно начаться, например. Makefile, затем я мог, надо надеяться, скомпилировать OpenMPI в моем корневом каталоге, но мне нужно некоторое руководство в том, что должно быть сделано после этого.Вы не могли бы мне помочь?


UPDATE1

Makefile содержит

CC = mpicc
CFLAGS += -DMPI

И вот некоторые файлы OpenMPI

$ which mpicc
/usr/bin/mpicc

lrwxr-xr-x  /usr/bin/mpicc -> opal_wrapper
-rwxr-xr-x  /usr/bin/opal_wrapper

Сообщите мне, если я могу предоставить Вам больше информации.


UPDATE2

С помощью Jeff я смог найти OpenMPI настройки для mpicc

$ more /usr/local/share/openmpi/mpicc-wrapper-data.txt 
project=Open MPI
project_short=OMPI
version=1.1.4
language=C
compiler_env=CC
compiler_flags_env=CFLAGS
compiler=icc
extra_includes= openmpi
preprocessor_flags= 
compiler_flags=-pthread 
linker_flags=    
libs=-lmpi -lorte -lopal   -ldl   -Wl,--export-dynamic -lnsl -lutil -ldl 
required_file=

Однако я не имею прав отредактировать этот файл, и OPMI_CC = gcc не изменяет компилятор.


UPDATE3

Переменная окружения CC = gcc не помогает

$ export CC=gcc
$ echo $CC
gcc
$ make clean $$ make
...icc:...errors

UPDATE4

... но export OMPI_CC=gcc действительно наконец помогает (благодаря sharth). Я должен однажды помнить, что это разные вещи...

Несмотря на это двоичный файл был создан, я добрался, следующие пока обмениваются сообщениями

/opt/intel/fce/9.1.036/lib/libimf.so: warning: warning: feupdateenv is not implemented and will always fail

7
задан Community 23 May 2017 в 11:54
поделиться