PARALLEL.RU

Дискуссионный клуб по параллельным вычислениям
Текущее время: 12 дек 17 16:58

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: А что там с Intel C++?
СообщениеДобавлено: 31 янв 12 0:36 
Не в сети

Зарегистрирован: 11 янв 12 23:36
Сообщения: 11
Друзья, ответьте мне, пожалуйста, на вопрос.

Купили Intel C под x86-Win64. Есть программа на Pure C с примитивным распараллеливанием циклов в OpenMP, которую я на своей домашней машине компилировал MinGW и она успешно работала. Примитивность в данном случае - это использование OpenMP для заполнения двумерного массива по некоторой формуле.
Если я уберу все упоминания об OpenMP - #include omp.h, #pragma omp ... и поставлю опцию интеловского компилятора "Автоматически распараллеливать циклы", то будет ли эта операция аналогична директивам, которые я убрал. Никаких сложных директив я там не использовал, только #pragma omp parallel for.

Заранее благодарен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что там с Intel C++?
СообщениеДобавлено: 12 фев 12 23:36 
Не в сети

Зарегистрирован: 11 янв 12 23:36
Сообщения: 11
Уважаемые коллеги. Так и не дождавшись ответа на свой вопрос и поковырявшись в той самой простенькой программке, я пришёл к однозначному выводу: авто-параллелирование в Intel C++ в принципе не способно к анализу даже примитивных циклов. Увы и ах.
P.S. Испытуемый код - алгоритм FDTD в двумерии на равномерной ортогональной сетке. Простой как пять копеек. Существенно ускорятся он простым добавлением #pragma omp parallel for default(shared) private(I,J) в трёх местах. Жаль, но сам по себе интеловский компилятор на такое не способен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что там с Intel C++?
СообщениеДобавлено: 14 янв 15 16:35 
Не в сети

Зарегистрирован: 14 янв 15 16:34
Сообщения: 1
Если я уберу все упоминания об OpenMP - #include omp.h, #pragma omp ... и поставлю опцию интеловского компилятора "Автоматически распараллеливать циклы", то будет ли эта операция аналогична директивам, которые я убрал. Никаких сложных директив я там не использовал, только #pragma omp parallel for.

_________________
http://www.solitairecardgame.info/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: А что там с Intel C++?
СообщениеДобавлено: 15 янв 15 11:05 
Не в сети

Зарегистрирован: 11 дек 02 19:37
Сообщения: 871
Откуда: НИВЦ МГУ
Компилятор Intel не делает автоматического распараллеливания по нитям, если не используется OpenMP и его директивы. Автоматически он только векторизует циклы и оптимизирует вычисления, насколько мне известно. Но если программа однопоточная, то многопоточную Intel из неё делать не будет.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB