Matematik asoslar va raqamli modellashtirish usullari


Qabul qilish 3. Kodni takrorlash



Download 212,84 Kb.
bet41/43
Sana13.06.2022
Hajmi212,84 Kb.
#661878
1   ...   35   36   37   38   39   40   41   42   43
Bog'liq
tayyor

Qabul qilish 3. Kodni takrorlash
(code replication)
Buning uchun parallelizatsiya, oxiridan bitta misol, biz yangi qabulga murojaat qilamiz.
Biz vaqtinchalik o'zgaruvchini kiritamiz va manba kodini biroz yomonlashtiramiz, dasturni muayyan
operatsiyalarni bajarishga majbur qilamiz tashnalik.
do i = 1, u
S
1
:
a[i+1] = d[i] + 5 * i
if(i == 1) t = a[1]
else t = d[i-1] + 5 * (i-1)
S
2
:
c[i] = a[i+1] * 2 + t
enddo
Bunday konvertatsiya algoritmning grafigini o'zgartirmasligini unutmang, lekin ayni paytda biz
bir iteratsiya ichida lokalizatsiya qilingan qaramlikka ega bo'lamiz. Natijada, aylantirilgan tsikl
parallellashtirilishi mumkin.
Ushbu ma'ruzaning asosiy teoremasini murakkab bo'lmagan tsikllar uchun shakllantiramiz.
Teorema. Tsiklni ajratish usullari, tsiklni moslashtirish va
tsikldagi operatorlarning ruxsat etilgan almashinuvi, agar tsikl bilan bog'liq bog'liq bog'liq bog'liqlikni bartaraf etish uchun etarli
bo'lsa:

tsiklda rekursiv qaramlik yo'q
• * har bir qaramlik uchun masofalar tsikl indeksidan qat'i nazar doimiy.
Teoremaning isboti mustaqil ish uchun qoldiriladi. Tabiiy ravishda teorema,
ichki tsikllar uchun umumiy bo'lishi mumkin.
Array elementlariga bog'liqlikdan tashqari, tsikllarda
tsikllarning parallelizatsiyasiga to'sqinlik qiluvchi skalar o'zgaruvchilari bilan bog'liqliklar ham bo'lishi mumkin. Ba'zi
hollarda ular har doim ham emas, balki algoritm grafigini saqlab qolish bilan kurashishadi.
Skalar bilan bog'liqliklar bilan kurashish usullari xavfli bo'lishi mumkin (masalan, ketma-ket dastur
parallel dasturning natijalaridan boshqa natijalarni beradi).
Ehtiyot bo'ling!
Qabul qilish 4. Skalar o'zgaruvchilarini xususiylashtirish
Tsiklni ko'rib chiqing.
do i = 1, u
t = a[i]
a[i] = b[i]
b[i] = t
enddo
Vektorli parametrlarga ko'ra, bizda doimiy qarama-qarshilik mavjud, ular ichida joylashgan
bir iteratsiya. Lekin skalar o'zgaruvchisi
t parallelizatsiyani oldini oladi(
umumiy xotiraga ega bo'lgan mashinalarda eng aniq). Har
bir iteratsiya yoki undan ham amaliy bo'lsa, o'zingizning vaqtinchalik o'zgaruvchiga ega bo'lishingiz mumkin.
do i = 1, u
private t
t = a[i]
a[i] = b[i]
b[i] = t
enddo
Bu xavfsiz qabul.

Download 212,84 Kb.

Do'stlaringiz bilan baham:
1   ...   35   36   37   38   39   40   41   42   43




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