Nazorat savollari
1.
Simmetirk multiprotsessorli tizimlar?
2.
Simmetirk multiprotsessorli tizimlarni qullanilish sohalari.
3.
Protsessorlar sonini cheklash nima uchun kerak
118
20-Ma’ruza.
Buyruqlar darajasidagi parallel vektorli tizimlar (PVP),
klasterli tizimlar
Reja:
1.
Buyruqlar darajasidagi parallellik
2.
Parallel vektorli tizimlar
3.
Klasterli tizimlar
Tayanch iboralar:
buyruqlar,vektor, PVP arxitektura,
Raqamli kompyuter bu berilgan buyruqlar asosida masalalarni echa oladigan
mashinadir. Masala echimini bayon qiladigan buyruqlar ketma ketligi dastur deb
ataladi. Har bir kompyuterning elektron sxemasi cheklangan sondagi buyruqlar
majmuasini taniydi va bajara oladi. Barcha dasturlar bajarilishidan oldin
qo‘yidagilardan murakkab bo‘lmagan buyruqlar ketma ketligiga aylantiriladi:
- Ikkita sonni qo‘shish;
- Son nol emasligiga tekshirish;
- Ma’lumotning biror qismini kompyuter xotirasining bir qismdan ikkinchi qismiga
ko‘chiradi.
Bu sodda buyruqlar majmuasi insonlarning kompyuter bilan muloqatini
ta’minlovchi tilni tashkil etadi. Bunday til mashina tili deb ataladi.
Yangi kompyuter yaratuvchilari kompyuterning mashina tiliga qanday
buyruqlarni kiritish kerakligi masalasini hal qiladilar.Bu kompyuterning ishlatilish
maqsadiga bog‘liq bo‘ladi, ya’ni kompyuter qanday masalalarni echishga
muljallanganligiga. Odatda mashina buyruqlarini mumkin qadar sodda qilishga
harakat qilinadi. Bu kompyuter konstruksiyasi murakkablashuvi oldini oladi va
zaruriy elektronikaga nisbatan xarajatlarni kamaytiradi. Ko‘pchilik mashina tillari
o‘ta sodda bo‘lib, ularni ishlatish murakkab va mashaqqatlidir.
Oddiy kuzatishlar vaqt o‘tishi bilan turli darajadagi abstraksiyalarni
yaratishga olib keldi. Har bir abstraksiya o‘zidan qo‘yi darajadagi abstraksiya
ustiga quriladi. Huddi shunday yo‘l bilangina kompyuter bilan bo‘ladigan muloqat
119
mashaqqatini engib o‘tish mumkin. Inson kompyuter muloqatiga bunday
yondoshuvni kompyuter tashkil etilishidagi ko‘psathlilik deb ataladi.
Parallel kompyuterlar, tAHMinan, apparatning paralellikni qo'llab-
quvvatlash darajasiga qarab tasniflanishi mumkin, ko'p yadroli va ko'p protsessorli
kompyuterlar bitta mashina ichida bir nechta ishlov berish elementlariga ega,
klasterlar, MPP va tarmoqlar bir xil kompyuterda ishlash uchun bir nechta
kompyuterlardan foydalanadi. Ixtisoslashgan parallel kompyuter arxitekturalari
ba'zida an'anaviy vazifalarni tezlashtirish uchun an'anaviy protsessorlar bilan birga
qo'llaniladi.
Ba'zi hollarda parallellik dasturchi uchun shaffof, masalan, bit darajasidagi
yoki buyruq sathidagi parallellikdagi, ammo aniq parallel algoritmlarni, xususan,
parallellikni ishlatadiganlarni yozish ketma-ketlikdan ko'ra qiyinroq, chunki bir
xillik bir nechta yangi mumkin bo'lgan dasturiy ta'minot xatolarining sinflari,
ulardan poyga sharoitlari eng keng tarqalgan. Turli xil kichik topshiriqlar orasidagi
aloqa va sinxronizatsiya odatda dasturning optimal parallel ishlashini ta'minlash
uchun eng katta to'siqlardan biridir.
Parallellashtirish natijasida bitta dasturni tezlashtirishning nazariy yuqori
chegarasi Amdahl qonuni bilan ifodalanadi.
Kompyuter dasturlari an'anaviy ravishda ketma-ket hisoblash uchun
yozilgan. Bu shuni anglatadiki, muammoni hal qilish uchun algoritm muammoni
kichikroq ko'rsatmalarga ajratadi. Ushbu alohida ko'rsatmalar keyinchalik
kompyuterning markaziy protsessor qismida birma-bir bajariladi. Faqat bitta
ko'rsatma tugagandan so'ng, keyingisi boshlanadi.
Parallel hisoblashning afzalliklari shundaki, kompyuterlar kodni yanada
samarali bajarishi mumkin, bu esa "katta ma'lumotlar" ni har qachongidan ham
tezroq saralash orqali vaqt va pulni tejashga imkon beradi. Parallel dasturlash
yanada murakkab muammolarni hal qilishi, jadvalga ko'proq resurslarni keltirishi
mumkin. Bu quyosh energiyasini yaxshilashdan tortib moliya sohasi qanday
ishlashini o'zgartirishgacha bo'lgan dasturlarda yordam beradi.
120
Parallelizm turlari:
Bit darajadagi parallellik: Bu protsessor hajmining o'sishiga asoslangan
parallel hisoblash shakli. Bu katta hajmli ma'lumotlarda vazifani bajarish uchun
tizim bajarishi kerak bo'lgan ko'rsatmalar sonini kamaytiradi.
Misol: 8 bitli protsessor ikkita 16 bitli butun sonlarning yig'indisini hisoblashi
kerak bo'lgan stsenariyni ko'rib chiqing. Dastlab 8 ta pastki tartibli bitni jamlashi
kerak, so'ngra 8 ta yuqori tartibli bitni qo'shib, operatsiyani bajarish uchun ikkita
ko'rsatma kerak. 16 bitli protsessor operatsiyani faqat bitta ko'rsatma bilan
bajarishi mumkin.
Ko'rsatma darajasidagi parallellik: protsessor har bir soat tsikli fazasi uchun
faqat bittadan kam ko'rsatmaga murojaat qilishi mumkin. Ushbu ko'rsatmalarni
qayta buyurtma qilish va guruhlash mumkin, ular keyinchalik dastur natijasiga
ta'sir qilmasdan bir vaqtda bajariladi. Bunga ko'rsatma darajasidagi parallellik
deyiladi.
Vazifa paralelligi: Vazifa parallelligi vazifani pastki topshiriqlarga ajratib,
so'ngra har bir kichik topshiriqni bajarishga ajratishni qo'llaydi. Protsessorlar bir
vaqtning o'zida pastki vazifalarni bajaradilar.
PVP-tizimlarining asosiy xususiyati - bu mustaqil ma'lumotlar vektorlarini
samarali qayta ishlashning bir xil turi uchun buyruqlarni ta'minlaydigan maxsus
vektor-quvur protsessorlarining mavjudligi.konveyerning funktsional qurilmalarida
to'ldirilgan. Qoida tariqasida, ushbu protsessorlarning bir nechtasi (1-16) ko'p
protsessorli konfiguratsiyalarda umumiy xotira (SMP ga o'xshash) bilan bir vaqtda
ishlaydi.
Bir nechta tugunlarni kalit yordamida ulash mumkin (MPP ga o'xshash).
Vektor formatida ma'lumotlarni uzatish skaler formatga qaraganda ancha tezroq
bo'lgani uchun (maksimal tezlik 64 GB / s bo'lishi mumkin, bu skalyar
mashinalarga qaraganda 2 daraja tezdir), keyin parallelizatsiya paytida ma'lumotlar
oqimlari o'rtasidagi o'zaro ta'sir muammosi ahamiyatsiz bo'ladi. Va nima yomon
parchalanib ketgan skalyar mashinalarda parallellashadi, vektorli mashinalarda
yaxshi parallellashadi. Shunday qilib, PVP-arxitektura tizimlari umumiy maqsadli
121
mashinalar bo'lishi mumkin. Biroq, vektor protsessorlari juda qimmat bo'lgani
uchun, bu mashinalarni ommaga taqdim etib bo'lmaydi.
Uchta eng mashhur PVP arxitektura mashinalari:
1. CRAY X1, SMP arxitekturasi. Standart konfiguratsiyadagi eng yuqori
tizim ishlashi o'nlab teraflops bo'lishi mumkin.
20.1-rasm. CRAY X1
2. NEC SX-6, NUMA arxitekturasi. Tizimning eng yuqori ishlashi 8
Tflopsga yetishi mumkin, bu bitta protsessor - 9,6 Gflops. Tizim bitta operatsion
tizim tasviridan 512 tagacha protsessorni o'lchaydi.
3. Fujitsu-VPP5000 (vektorli parallel ishlov berish), MPP arxitekturasi. Bitta
protsessorning ishlashi 9,6 Gflops, eng yuqori ko'rsatkich tizimning ishlashi 1249
Gflops ga yetishi mumkin, maksimal xotira hajmi 8 TB. Tizim 512 tugungacha
o'lchaydi.
20.1-rasm. Fujitsu-VPP5000
PVP tizimlarida dasturlash paradigmasi pastadir vektorizatsiyasini (oqilona
ishlashga erishish uchun) ta'minlaydi bitta protsessor) va ularni parallellashtirish
(bir dastur tomonidan bir nechta protsessorlarni bir vaqtning o'zida yuklash uchun).
Amalda quyidagi tartiblarni bajarish tavsiya etiladi:
122
• masalani matritsa shakliga aylantirish uchun qo‘lda vektorlashtirishni
amalga oshiring. Bunday holda, vektor uzunligiga mos ravishda, o'lchamlar
matritsalar 128 yoki 256 ga karrali bo'lishi kerak;
• virtual fazoda vektorlar bilan ishlash, kerakli funksiyani qatorga
kengaytirish va qatordagi atamalar sonini 128 yoki 256 ga karrali qoldirish.
Katta jismoniy xotira (terabaytning bir qismi) tufayli PVP tizimlaridagi
yomon vektorizatsiya qilinadigan vazifalar ham kompyuterlarda tezroq hal
qilinadi.
Kompyuter protsessorlari arxitekturasining rivojlanish tarixida ikkita asosiy
bosqichni ajratish mumkin:
1-bosqich -protsessorlarning soat chastotasini oshirish (2000 yilgacha);
2-bosqich -ko'p yadroli protsessorlarning paydo bo'lishi (2000 yildan keyin).
Shunday qilib, SMP (Symmetrical MultiProcessing) ga asoslangan
yondashuv, unda bir nechta protsessorlar tizim resursini baham ko'radigan va
birinchi navbatda operativ xotira bilan ishlaydigan yuqori samarali serverlarni
qurishda ishlab chiqilgan bo'lib, ichki yadrolar darajasiga "pastga" o'tdi. protsessor.
Ko'p yadroli protsessorlar yo'lida birinchi bo'lib Hyper-Threading
texnologiyasi birinchi bo'lib 2002 yilda Intel Pentium 4 protsessorlarida taqdim
etilgan:
20.3-rasm.
Hyper-Threading texnologiyasi
123
Ushbu texnologiyada ikkita virtual protsessor bir fizik protsessorning barcha
resurslarini, ya'ni keshlarni, ijro etuvchi quvur liniyasini va individual ijro
birliklarini bir-biri bilan bo'lishadi. Bundan tashqari, agar bitta virtual protsessor
umumiy resursni egallagan bo'lsa, ikkinchisi uning chiqarilishini kutadi. Shunday
qilib, Hyper-Threading-ga ega bo'lgan protsessorni unda ishlaydigan har bir
jarayonni to'liq vositalar to'plami bilan o'z virtual kompyuteri bilan ta'minlaydigan
va fizikaviy apparatda ushbu jarayonlarning tartibi va vaqtini rejalashtiradigan ko'p
vazifali operatsion tizim bilan taqqoslash mumkin. Faqatgina Hyper-Threading
holatida, bularning barchasi ancha past darajada bo'ladi. Shunga qaramay, ikkita
buyruqlar oqimi protsessorning ijro etuvchi qurilmalarini yanada samarali
yuklashga imkon beradi. Hyper-Threading texnologiyasidan foydalanish natijasida
protsessor ishlashining real o'sishi 10 foizdan 20 foizgacha baholanmoqda.
To'liq quvvatli ikki yadroli protsessor (20.2-rasmga qarang) ba'zi vazifalar
bo'yicha ishlash samaradorligini 80 dan 100 foizgacha namoyish etadi.
20.4-rasm.
Ikki yadroli protsessor
Shunday qilib, ikki yadroli va umuman ko'p yadroli protsessorni miniatyura
SMP tizimi sifatida ko'rish mumkin, bu murakkab va qimmat multiprotsessorli
anakartlardan foydalanishni talab qilmaydi.
Bundan tashqari, har bir yadro (masalan, Intel Pentium Extreme Edition 840
protsessorida) Hyper-Threading texnologiyasini qo'llab-quvvatlashi mumkin va
124
shuning uchun bunday ikki yadroli protsessor bir vaqtning o'zida to'rtta dasturni
bajarishi mumkin.
2007 yil boshida Intel Teraflops Research Chip
(http://www.intel.com/research/platform/terascale/teraflops.htm) deb nomlangan
80 yadroli, bitta chipli protsessorni taqdim etdi. Ushbu protsessor minimal yadro
soat tezligi 3,16 gigagerts va 0,95 V kuchlanishda 1,01 teraflop ishlashga erishishi
mumkin. energiya sarfi chip faqat 62 vatt.
Intel keyingi 5 yil ichida ko'proq yadroli protsessorlarning tijorat versiyalari
paydo bo'lishini tAHMin qilmoqda va 2010 yilga kelib etkazib beriladigan
serverlarning to'rtdan bir qismi teraflopga ega bo'ladi ishlash.
Do'stlaringiz bilan baham: |