Следующий код фрагмента
#pragma omp parallel
printf("%f", 1.0f);
создает «Исключение с плавающей запятой».Кто-нибудь сталкивался с чем-то подобным?
Подробнее:
- Нет проблем, когда я пытаюсь распечатать строки или целые числа.
- Нет проблем, если OpenMP не используется.
- Я использую его на Mac OSX 10.6.8 и компиляторе Intel C ++ 12.0.4.
- Кроме этого, OpenMP работает нормально.
Код:
#include <stdio.h>
#include <omp.h>
int main()
{
#pragma omp parallel
printf("%d", 1);
printf("\n...\n");
fflush(stdout);
#pragma omp parallel
printf("%f", 2.0);
}
скомпилирован с:
icpc -o test test.cc -fp-trap-all=all -openmp
производит:
1111
...
Floating point exception