G‘afarov, A. F. Galimyanov parallel hisobiyotlar qo'llanma Qozon


Download 1.46 Mb.
bet71/85
Sana24.12.2022
Hajmi1.46 Mb.
#1062519
1   ...   67   68   69   70   71   72   73   74   ...   85
Bog'liq
ParVychGafGal (1)

To'g'ri


#pragma omp parallel
{
L1:
wrk[id] = keraksiz [id]; res[id] = wrk[id]*1,342; if(conv(res)) o'tish L1;
}
printf("%d", id);
To'g'ri emas
{
L1:


wrk[id] = keraksiz [id];
L2:
res[id] = wrk[id]*1,342;
if(conv(res)) o'tish L3;


L1ga o'ting;


}


agar(not_done) L2 ga o'ting;
L3:
printf("%d", id);


8.3. Parallel hududlar


Parallel hududlar OpenMP da asosiy tushunchadir. Aynan


bu hudud ko'rsatilgan joyda dastur parallel ravishda bajariladi. Bir marta kompilyator omp parallel pragma bilan duch keladi, u ko'rsatmalarni kiritadi
parallel oqimlarni yaratish.
120
Machine Translated by Google
Yuqorida yuqorida aytib o'tilgan ediki, ular uchun tug'ilgan iplar soni atrof-muhit o'zgaruvchisi orqali boshqariladigan parallel hududlar OMP_NUM_THREADS va funksiya chaqiruvi orqali ham sozlanishi mumkin dastur ichida.
Har bir hosil qilingan ip struktura blokidagi kod blokini bajaradi. Odatiy bo'lib, mavzular o'rtasida sinxronizatsiya yo'q va shuning uchun
ma'lum bir bayonotning turli xil iplar tomonidan bajarilishi ketma-ketligi

aniqlanmagan.


Kodning parallel bo'limi bajarilgandan so'ng, bundan mustasno, barcha mavzular asosiy ip tugaydi va faqat asosiy ip bajarishda davom etadi, lekin


allaqachon yolg'iz.

Har bir ip o'zining noyob raqamiga ega, u 0 dan farq qiladi (asosiy ip uchun) iplar sonigacha - 1. Thread ID omp_get_thread_num() funksiyasi yordamida aniqlash mumkin .


Ip identifikatorini bilib, siz parallel maydonga kirishingiz mumkin

bajarish oqimlarni turli tarmoqlarga yo'naltiradi.





Download 1.46 Mb.

Do'stlaringiz bilan baham:
1   ...   67   68   69   70   71   72   73   74   ...   85




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling