Компилятор Intel Fortran - параллельный не работает

У меня есть серийный код Fortran, который отлично работает. Когда я компилирую тот же код с помощью ifort -parallel и запускаю его, он дает неправильные результаты и переполняется. Я ожидал, что с флагом «-parallel» компилятор Intel сможет выбирать циклы, безопасные для распараллеливания, и я должен получить те же результаты, что и для последовательного кода, чего не произошло. Еще более странное поведение заключается в том, что я закрыл все распараллеливание циклов do в моем коде с помощью! DEC $ NOPARALLEL, скомпилировал код с помощью ifort -parallel, чтобы убедиться, что ни один из циклов не был распараллелен, а затем запустился. Удивительно, но я получил такие же неправильные результаты и переполнение, хотя последнее действие должно быть в точности эквивалентно последовательному коду.

Есть ли кто-нибудь, кто может объяснить такое поведение, или это просто недостаток компилятора Intel.

Привет.


person Community    schedule 06.10.2009    source источник
comment
этот же флаг работает для c ++?   -  person pyCthon    schedule 17.12.2011


Ответы (2)


Извините за это, но вряд ли это проблема компилятора Intel. Это довольно хороший компилятор (нет, я не работаю в Intel! Но я использую их компиляторы).

Да, я могу объяснить такое поведение, но без вашей программы все, что я предлагаю, будет неправильным.

person High Performance Mark    schedule 07.10.2009
comment
Хм, у меня была своя доля неудач с Intel Fortran (во всех версиях ›= 7). Не зная, я бы винил не плохой пользовательский код или компилятор, а отчет об ошибке :) - person F'x; 08.10.2009
comment
У меня был плохой опыт работы с практически всеми возможными видами программного обеспечения, но все же, чисто статистически, компилятор Intel - один из наиболее часто используемых. Если есть проблема с относительно используемой опцией, больше шансов, что проблема в новом пользователе, чем в компиляторе, протестированном многими. - person Rook; 11.10.2009

На этот идентичный вопрос были даны ответы на форуме Intel Fortran: http://software.intel.com/en-us/forums/topic/269743

РЕДАКТИРОВАТЬ: я изменил ссылку, поскольку, как указано в комментарии, исходная ссылка теперь мертва.

person M. S. B.    schedule 11.10.2009