OpenMP на Dev C ++ - PullRequest
       14

OpenMP на Dev C ++

1 голос
/ 07 ноября 2011

Есть ли в любом случае использовать openmp с dev c ++.Я видел ссылки о том, как использовать в Visual Studio, но мне больше нравится интерфейс Dev C ++.Добавление / openmp в командной строке компоновщика также не работает.Я не мог найти библиотеку для загрузки тоже.Я что-то пропустил.Я попытался запустить этот пример кода:

#include <stdio.h> 
#include <stdlib.h>

int main(int argc, char *argv[])
{
    #pragma omp parallel
    { 
       printf("Hello, world.\n");
    }
   return 0;
 }

Из того места, где я читал, упоминалось «Вывод на компьютер с 2 ядрами и 2 потоками», и дважды будет напечатан «Hello World».У меня есть ядро ​​i7, но оно было напечатано только один раз.

Ответы [ 5 ]

8 голосов
/ 24 ноября 2013

Инструменты> Параметры компилятора> Установите флажок «Добавить следующие команды при вызове компилятора»> в текстовой области введите «-fopenmp»

Скомпилируйте и выполните снова:)

4 голосов
/ 07 ноября 2011

Я не знаю Dev C ++, но чтобы включить openmp, вам также нужно добавить флаг -fopenmp в ваш компилятор. Дополнительно к ссылке на omp.

С g ++ это выглядит так

g ++ yourProgram.cpp -o yourProgram -lgomp -fopenmp

-fopenmp скажет компилятору генерировать параллельный код. Я надеюсь, что это поможет.

0 голосов
/ 02 февраля 2017

Вы должны включить -fopenmp в

  1. Проект-> Параметры проекта-> Параметры - Ссылка и
  2. Инструменты -> Параметры компилятора (Общие) (установите флажок, чтобы добавитьследующие команды при вызове компилятора »и включают -fopenmp в текстовое поле

Я также включил #include <omp.h> dev-c ++ версия 5.6.1

0 голосов
/ 23 октября 2016

Полагаю, вам также нужно включить заголовочный файл # include отдельно

0 голосов
/ 20 мая 2015

есть только параллельная область, процессор проинформирован о том, что есть что распараллелить, но так же, как распараллелить код, который они должны сказать через сборщики, вероятно, то, что вы хотите использовать: #pragma omp section

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...