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é
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;
 
 
}
Le problème est que j'ai un seul thread qui affiche un résultat.
J'ai pas compris les raisons. Je travaille sous windows en utilisant VS 2010