Bonjour,
Je suis débutante en OpenMp. Je veux développer un simple programme qui utilise OpenMp. EN fait, je veux lancer 4 threads qui fonctionnent en même temps.
J'ai un PC avec i3 donc normalement J'ai 4 core et je peux avoir 4 threads qui fonctionnent en même temps.
Voilà le code que j'ai utilisé
Le problème est que j'ai un seul thread qui affiche un résultat.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 #include <omp.h> #include <stdio.h> #include <stdlib.h> #include <iostream> int main (int argc, char *argv[]) { int nthreads, tid; int threads = 100; //int id = 100; int id ; omp_set_num_threads(4); #pragma omp parallel(4) { threads = omp_get_num_threads(); id = omp_get_thread_num(); std::cout << "hello from thread: "<<id << "out of "<<std::endl; std::cout << threads <<std::endl; } system("pause"); return 0; }
J'ai pas compris les raisons. Je travaille sous windows en utilisant VS 2010
Partager