У меня есть простой тестовый код, который я пытаюсь создать, оптимизированный для AVX, для использования icc v12.1 в Linux Redhat 5.6. Код выглядит следующим образом:
int main() {
double sum = 0.0;
for (unsigned int i = 0; i < 1024; i++) {
sum += static_cast<double>(i);
}
std::cout << "Sum: "<< sum << std::endl;
return 0;
}
И я компилирую его с помощью (и в векторном отчете написано, что цикл был векторизован):
icc -xavx -vec-report1 main.cpp
Когда я запускаю код, я получаю следующую ошибку:
Fatal Error: This program was not built to run in your system.
Please verify that both the operating system and the processor support Intel(R) AVX.
Я уверен, что процессор поддерживает AVX, но есть ли у кого-нибудь еще проблемы с AVX на Redhat 5.6?