2014-04-08 6 views
0

У меня проблемы с загрузкой кода fortran в очередь кластера. Администратор установил две версии Fortran. Чтобы получить доступ к команде «ifort», я должен загрузить модуль intel.Проблемы с выполнением фортрана в очереди кластера

Это мой путь varible после загрузки модуля:

/share/apps/openmpi-intel-mx/bin:/opt/intel/Compiler/11.1/064/bin/intel64:/opt/intel/Compiler/11.0/083/bin/intel64:/usr/kerberos/bin:/usr/java/latest/bin:/usr/local/cuda/bin:/usr/local/bin: 

Тогда я компилирую мой код без проблем.

Я написал сценарий для представления в очереди:

#!/bin/bash -l 

#PBS -V 
#PBS -l nodes=1 
#PBS -j oe 
#PBS -l walltime=05:00 
#PBS -N NaN0 
#PBS -q physics 

cd $PBS_O_WORKDIR 
module load intel 

./model 

Затем он возвращает ошибку: ./model: /opt/intel/Compiler/11.0/083/lib/intel64/libiomp5.so : информация о версии отсутствует (требуется ./model)

Я не знаю, как ее решить. Нельзя использовать этот компилятор, потому что он второй на PATH.

Спасибо!

+0

Вы уверены, что это сообщение является ошибкой, а не предупреждением? Можете ли вы проверить 'PATH' в каждом узле? Вы прочитали это [решение] (http://software.intel.com/en-us/forums/topic/269634)? – Andrey

+0

@ Andrey Спасибо за ответ. Путь тот же. Я добавляю echo $ PATH в скрипт и «перекликается» с тем же PATH, что и мой пользователь. – marco

+0

Как обход, вы можете попробовать «ifort ... -openmp-link static». – Andrey

ответ

0

Поиск по времени работы не используется PATH, но LD_LIBRARY_PATH. Добавьте к этому файлу, в котором вы определяете путь:

LD_LIBRARY_PATH="/share/apps/openmpi-intel-mx/lib:$LD_LIBRARY_PATH" 

(это не ясно из вашего вопроса, что правильный каталог, поэтому я принял догадку Используйте каталог под /share/apps/openmpi-intel-mx, который фактически содержит libiomp5.so.).

+0

Я пробовал это, и у меня такая же ошибка: /opt/intel/Compiler/11.0/083/lib/intel64/libiomp5.so: информация о версии отсутствует – marco

+0

'ldd model' на узле компиляции будет укажите правильный путь. Также можно использовать 'LD_PRELOAD =/opt/intel /.../ libiomp5.so./Model', чтобы принудительно использовать определенную библиотеку во время выполнения программы. – Andrey

Смежные вопросы