OpenMP не работает с моей Visual Studio? - PullRequest
0 голосов
/ 02 апреля 2020
// ConsoleApplication1.cpp : This file contains the 'main' function. Program execution begins and ends there.
//

#include "pch.h"
#include <iostream>
#include <omp.h>

/*
This source code can be downloaded from supercomputingblog.com
The purpose of this code is to ensure that OpenMP is working and running on multiple threads.
*/

int main(int argc, char* argv[])
{
    // This statement should only print once
    printf("Starting Program!\n");

#pragma omp parallel
    {
        // This statement will run on each thread.
        // If there are 4 threads, this will execute 4 times in total
        printf("Running on multiple threads\n");
    }

    // We're out of the parallelized secion.
    // Therefor, this should execute only once
    printf("Finished!\n");

    return 0;
}

Разочаровавшись в моих предыдущих попытках использовать openmp, и он работал только в одном потоке, я решил протестировать его, используя приведенный выше код.

Ожидаемый вывод должен выводить «Выполнение на нескольких потоках» несколько раз в зависимости от количества используемых потоков (я также пытался указать #pragma omp parallel num_threads (4)), но он по-прежнему печатается только один раз.

В свойствах -> C / C ++ -> Язык Open MP включен. Режим соответствия установлен на Нет .

Дополнительная информация

  • Я строю свой проект, затем использую cmd для его запуска с помощью теста (тест ConsoleApplication1)

  • My Visual studio: VS2017 Community 15.9.14

  • Мой процессор Intel® Core (TM) i & -4860HQ CPU @ 2,40 ГГц

...