14-ma’ruza. Openmp ishlarni taqsimlash


-  +, *, -, &, |, ^, &&, ||



Download 132,29 Kb.
Pdf ko'rish
bet4/4
Sana02.02.2022
Hajmi132,29 Kb.
#425447
1   2   3   4
Bog'liq
14-ma’ruza. OpenMP ishlarni taqsimlash


+, *, -, &, |, ^, &&, ||
operatorlarning bajarilish tartibi aniqlanmagan, 
shuning uchun natija ishga tushirishdan farq qilishi mumkin; 
collapse(n)
- bu parametr n ta ketma-ket bir-biriga yaqin joylashgan 
sikllar ushbu direktiva bilan bogʻlanganligini bildiradi; sikllar uchun 
oqimlar oʻrtasida boʻlingan umumiy iteratsiya maydoni hosil boʻladi; agar 
collapse
opsiyasi koʻrsatilmagan boʻlsa, u holda direktiv faqat darhol 
keyingi sikl uchun amal qiladi; 
schedule(type [, chunk])
- bu parametr sikl iteratsiyasi oqimlar 
orasida qanday taqsimlanishini belgilaydi; 
ordered
- siklda 
ordered
direktivalarini uchratish mumkinligini 
koʻrsatuvchi variant; bu holda, siklning tanasi ichida blok belgilanadi, bu 
iteratsiyalar ketma-ket siklda oʻtish tartibida bajarilishi kerak; 
nowait
- parallel siklning oxirida parallel ishlaydigan oqimlarning 
yashirin toʻsiqli sinxronizatsiyasi yuzaga keladi: ularning keyingi 
bajarilishi faqat ularning barchasi shu nuqtaga yetganda sodir boʻladi; 
agar bunday kechikish kerak boʻlmasa, 
nowait
opsiyasi sikl oxiriga 
yetgan oqimlarni boshqalar bilan sinxronlashmasdan ishlashni davom 
ettirish imkonini beradi. Agar 
end do
direktivasi aniq koʻrsatilmagan 
boʻlsa, sinxronlash hali ham parallel siklning oxirida amalga oshiriladi. 
Parallel sikllar turiga nisbatan qat’iy cheklovlar qoʻyiladi. Xususan, 
toʻgʻri dastur parallel siklning qaysi iteratsiyasini qaysi oqim bajarishiga 
bogʻliq boʻlmasligi kerak deb hisoblanadi. Parallel halqadan yon 


chiqishdan foydalana olmaysiz. 
schedule
opsiyasida koʻrsatilgan 
iteratsiya blokining oʻlchami sikl ichida oʻzgarmasligi kerak. 
C tilidagi parallel sikllar formatini quyidagicha soddalashtirish 
mumkin: 
for ([
butun son turi
] i =
sikl invarianti

i
 
{<,>,=,<=,>=}
sikl invarianti

i
 
{+,-}=
sikl invarianti

Ushbu talablar OpenMP siklga kirishda takrorlashlar sonini aniq 
aniqlashi uchun kiritilgan. 
Agar parallel bajarish direktivasi bitta operator bilan tugaydigan 
sikllar uyasidan oldin kelsa, u holda direktiva faqat eng tashqi siklda 
ishlaydi. 
Ajratilgan siklning iterativ oʻzgaruvchisi ma’nosi boʻyicha lokal 
boʻlishi kerak, shuning uchun agar u umumiy koʻrsatilgan boʻlsa, u holda 
siklga kirishda bilvosita lokal boʻladi. Sikl tugagandan soʻng, 
takrorlanuvchi sikl oʻzgaruvchisining qiymati, agar 
lastprivate 
opsiyasida koʻrsatilmagan boʻlsa, aniqlanmagan. 
Takrorlash uchun savol va topshiriqlar: 
1.
OpenMP da ishni taqsimlash qanday amalga oshiriladi? 
2.
omp_get_thread_num() funksiyasi qanday vazifani bajaradi? 
3.
Parallel sikllar
4.
lastprivate opsiyasidan foydalanishga oid misollar tuzing 
5.
reduction opsiyasi 

Download 132,29 Kb.

Do'stlaringiz bilan baham:
1   2   3   4




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

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish