pborawski

bilbioteka omp petla i watki

Nov 5th, 2012
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.27 KB | None | 0 0
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <unistd.h>
  4. #include <sys/types.h>
  5. #include <sys/wait.h>
  6. #include "errno.h"
  7. #include <string.h>
  8. #include <omp.h>
  9.  
  10. int i, n = 10;
  11.  
  12. int main(int argc, char* argv[])
  13. {
  14.     //zadanie 1
  15.     //#pragma omp parallel
  16.     //{
  17.     //  if(omp_get_thread_num() == 0)
  18.     //  {
  19.     //          printf("watek 1\n");
  20.     //  }
  21.     //  printf("Region kodu wykonuje watek %d \n", omp_get_thread_num());
  22.     //}
  23.     //zadanie 2
  24.  
  25.     // #pragma - ta dyrektywa sluzy do wywalowania innych
  26.     // omp - wywolanie z bilbioteki omp
  27.     // parallel - slowo okreslajace rodzielenie kodu pomiedzy watki
  28.     // default(none) - domyślna zmiana atrybutów zmiennych określających ich dostępność wewnątrz konstrukcji
  29.     // shared(n) - zawiera w nawiasach liczbe zmiennych ktore sa wspoldzielone przez watki tj liczba iteracji musi byc wspoldzialona
  30.     // private(i) - zawiera w nawiasach liczbe zmiennych ktore sa prywatne dla kazdego watku tj zmienna iteracyjna i gdyz kazdy watek
  31.     //              ma "swoje" i do przerobienia
  32.     // for - dyrektywa do wskazania zeby for byl rozdzielony miedzy watki
  33.  
  34.     #pragma omp parallel default(none) shared(n) private(i)
  35.     {
  36.         #pragma omp for
  37.         for(i = 0;i < n; i++)
  38.             printf("Przebieg %d wykonuje watek %d\n", i, omp_get_thread_num());
  39.  
  40.     }
  41.  
  42.     return 0;
  43. }
Advertisement
Add Comment
Please, Sign In to add comment