Zbekiston respublikasi raqamli texnologiyalar vazirligi muhammad al-xorazmiy nomidagi


Download 0.9 Mb.
bet5/11
Sana26.03.2023
Hajmi0.9 Mb.
#1296733
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
Invididual loyiha 2

Thread-level parallelism (TLP) - bu bir vaqtning o'zida bir nechta iplarni ishga tushiradigan ilovaga xos bo'lgan parallelizm. Ushbu turdagi parallelizm asosan ma'lumotlar bazalari kabi tijorat serverlari uchun yozilgan ilovalarda uchraydi. Bir vaqtning o'zida ko'plab ish zarralarini ishga tushirish orqali ushbu ilovalar katta hajmdagi kiritish-chiqarish va xotira tizimining kechikishiga toqat qila oladi, ularning ish yuklari yuzaga kelishi mumkin - bir ish zarrachalari xotira yoki diskdan foydalanishni kutish uchun kechiktirilsa, boshqa oqimlar foydali ishlarni bajarishi mumkin.
Ko'p yadroli mikroprotsessorlarning paydo bo'lishi bilan ish stoli bozorida ushbu darajadagi parallelizmdan foydalanish ham boshlandi. Buning sababi, turli sabablarga ko'ra, soat tezligini yoki bitta yadroning soatiga ko'rsatmalarni oshirish tobora amaliy bo'lmagan. Agar bu tendentsiya davom etsa, potentsial hisoblash quvvatining o'sishidan foydalanish uchun yangi ilovalar bir nechta ish zarralarini ishlatish uchun ishlab chiqilishi kerak bo'ladi. Bu avvalgi mikroprotsessor innovatsiyalaridan farq qiladi, bunda mavjud kod avtomatik ravishda yangi/tezroq kompyuterda ishga tushirilgan.
Ushbu parallelizm ishlashiga bir misol:
program:
...
if CPU = "a" then
do task "A"
else if CPU="b" then
do task "B"
end if
...
end program
Dasturning maqsadi aniq jami vazifani bajarishdir ("A+B"). Agar kodni yuqoridagidek yozsak va uni 2 protsessorli tizimda ishga tushirsak, u holda ish vaqti muhiti uni quyidagicha bajaradi.
SPMD (bitta dastur, bir nechta ma'lumotlar) tizimida ikkala protsessor ham kodni bajaradi.
Parallel muhitda ikkalasi ham bir xil ma'lumotlarga kirish huquqiga ega bo'ladi.
"If" bandi protsessorlarni farqlaydi. Protsessor "a" "if" da "true" deb o'qiydi va "b" protsessor "else if" da rost bo'ladi, shuning uchun o'z vazifalariga ega bo'ladi.
Endi ikkala protsessor bir vaqtning o'zida alohida kod bloklarini va bir vaqtning o'zida turli vazifalarni bajaradi.
A kompyuter bajaradigan kod:
program:
...
do task "A"
...
end program
B kompyuter bajaradigan kod:
program:
...
do task "B"
...
end program



    1. Superword” darajasidagi parallelizm

Superword darajasidagi parallelizm (SLP) an'anaviy vektorlashtirishning ilg'or usuli bo'lib, u loop iteratsiyalari, SIMD va asosiy bloklar bo'ylab parallelizmni osonlashtiradi. Ushbu kontekstda vektorlashtirish bir vaqtning o'zida bir nechta o'xshash vazifalarni (yoki ko'rsatmalarni) bajarish uchun ishlatiladigan jarayondir, shuning uchun ishlov berish vaqti va resurslarini tejaydi.
Taqqoslash uchun ko'rsatmalar darajasidagi parallelizm (ILP), kompyuter bir vaqtning o'zida ma'lum bir jarayon uchun boshqarishi mumkin bo'lgan ko'rsatmalar (foydalanuvchi yoki dasturiy ta'minot so'rovlari) sonini o'lchaydi.
Superword darajasidagi parallelizmdan farqli o'laroq, ILP bitta ko'rsatma, bir nechta ma'lumot (SIMD) yoki asosiy bloklarni aniqlay olmaydi. Zamonaviy kompyuterlar deyarli hamma joyda SLP yordamida SIMD ko'rsatmalarini qayta ishlash texnologiyasini o'z ichiga oladi, lekin u ko'pincha tasvirlar, audio, video va 3D dasturiy ta'minot kabi multimediyani o'zgartirganda ko'rinadi.
Vektorizatsiya singari, super so'z darajasidagi parallelizm ham parallel ishlov berishga erishish usulidir. Qurilmalarda multimedia ilovalarining ko'payishi ko'pchilik mavjud mikroprotsessorlarda multimedia kengaytmalariga olib keldi. Qisqa SIMD ko'rsatmalari endi qurilmalarda keng tarqalgan bo'lsa, ko'rsatmalar darajasidagi parallelizm etarli emas.
Dasturchilar SIMD ishlov berishni ta'minlab, pastadir uyalariga emas, balki bloklarga mo'ljallangan super so'z darajasidagi parallelizmni aniqlash uchun kompilyator yaratishi mumkin. 2000 yilda Dasturlash tillari bo'yicha maxsus qiziqish guruhi SLP ni standart vektorizatsiyaga qarshi sinovdan o'tkazdi va SLP dinamik ko'rsatmalar sonini 46% ga kamaytirdi va tezlikni 1,24 dan 6,70 gacha qisqartirdi.
Superword darajasidagi parallelizm, shuningdek, pastadirni ochish texnikasi deb ham ataladi, chunki u o'zining dastur kodi qiymatida tsiklni qayta ishlashni optimallashtiradi. Kosmik-vaqt almashinuvi deb ataladigan SLP-ni qo'llash ko'rsatmalarni bajarish uchun zarur bo'lgan vaqtni keskin qisqartirishi va ko'proq ikkilik bo'sh joyni talab qilishi mumkin. Og'irroq, bo'sh joyni talab qiluvchi kod SLPni osonlashtirishi mumkin, ammo natija ko'proq ko'rsatmalar keshini o'tkazib yuborishi va ishlashning pasayishiga olib kelishi mumkin.

7-rasm. “Superword” darajasidagi parallelizmga bir misol.




  1. Download 0.9 Mb.

    Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




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