¿Cómo obligar a OpenMPI a usar GCC en lugar de ICC? ¿Es necesario volver a compilar OpenMPI?
Tengo un código C para computación paralela escrito paragcc
, y quiero compilarlo en un clúster, que aparentemente usaicc
víampicc
. Corregir el código para sericc
amigable parece ser demasiado exigente con el tiempo, así que me pregunto si puedo preguntarOpenMPI
usargcc
en lugar. No tengo los derechos de administrador en ese clúster, y en realidad preferiría no alterar la configuración original.
Si no es posible configurar, p.Makefile
, entonces espero poder compilarOpenMPI
en mi directorio de inicio, pero necesito alguna orientación sobre lo que debe hacerse después de eso. ¿Usted me podría ayudar?
ACTUALIZACIÓN1
losMakefile
contiene
CC = mpicc
CFLAGS += -DMPI
Y aquí hay algunos archivos OpenMPI
$ which mpicc
/usr/bin/mpicc
lrwxr-xr-x /usr/bin/mpicc -> opal_wrapper
-rwxr-xr-x /usr/bin/opal_wrapper
Avíseme si puedo proporcionarle más información.
ACTUALIZACIÓN2
Con elayuda de JeffPude encontrarOpenMPI
ajustes parampicc
$ 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=
Sin embargo, no tengo derechos para editar este archivo yOPMI_CC = gcc
no cambia el compilador.
ACTUALIZACIÓN3
Variable ambientalCC = gcc
no ayuda
$ export CC=gcc
$ echo $CC
gcc
$ make clean $ make
...icc:...errors
ACTUALIZACIÓN4
...peroexport OMPI_CC=gcc
finalmente ayudagracias a sharth) Algún día debería recordar que estas son cosas diferentes ...
A pesar de que se creó el binario, recibí el siguiente mensaje de adiós
/opt/intel/fce/9.1.036/lib/libimf.so: warning: warning: feupdateenv is not implemented and will always fail