1-ma’ruza: Parallellashtirishni amalga oshirish yo’llari. Parallel hisoblash
tizimlariga misollar.
Reja:
1.
Parallellashtirishni amalga oshirish yo’llari.
2.
Parallel kompyuter tizimlari haqida umumiy ma’lumot.
3.
Parallel hisoblash tizimlariga misollar.
Tayanch iboralar:
Parallel hisoblash tizimi, superkompyuter, ko’p
vazifalilik, parallel hisoblash, taqsimlangan hisoblash.
1. Parallellashtirishni amalga oshirish yo’llari
Parallel hisoblash atamasi odatda har qanday ma’lumotlarni qayta ishlash
uchun qo’llaniladi, unda bir vaqtning o’zida bir nechta kompyuter operatsiyalari
bajarilishi mumkin. Parallellikka erishish, kompyuter tizimlarining arxitekturaviy
tamoyillariga quyidagi talablar bajarilgan taqdirdagina mumkin bo’ladi:
• alohida kompyuter qurilmalarining mustaqil ishlashi - bu talab kompyuter
tizimining barcha asosiy tarkibiy qismlari - protsessorlar, saqlash moslamalari,
kirish / chiqish qurilmalari uchun bir xil;
• kompyuter tizimlari elementlarining ortiqcha bo’lishi - zaxira quyidagi
asosiy shakllarda amalga oshirilishi mumkin:
- butun sonli va haqiqiy qiymatli arifmetikaga alohida protsessorlar kabi
ixtisoslashtirilgan qurilmalardan foydalanish, ko’p darajali xotira qurilmalari
(registrlar, kesh);
- bir xil yoki bir nechta alohida protsessorlardan foydalangan holda kompyuter
qurilmalarini ko’paytirish, RAM (Operativ xotira) qurilmalari va boshqalar.
Protsessor oqimlari qurilmalarda operatsiyalarni bajarishda parallelizmga
erishishning qo’shimcha shakli bo’lishi mumkin, bu operatsiyani tashkil etuvchi
quyi komandalar ketma-ketligini bajarish sifatida taqdim etiladi. Natijada, bunday
qurilmalar hisoblash bilan shug’ullanayotganda bir nechta turli xil ma’lumotlar
elementlari bir vaqtning o’zida turli xil ishlov berish bosqichlarida bo’lishi mumkin.
2
Paralelizmga erishishning mumkin bo’lgan usullari Patterson va Xennessi
(1996), Kuller va Singx (1998) da batafsil muhokama qilingan; xuddi shu asarlar
parallel hisoblashlar tarixini tavsiflaydi va parallel kompyuterlarning o’ziga xos
namunalarini keltiradi (shuningdek, Xu va Xvan (1998), Kuller, Singx va Gupta
(1998) Buyya (1999)).
Parallel hisoblashlar muammolarini ko’rib chiqib, dasturning mustaqil
qismlarini bajarishda quyidagi rejimlarni ajratib ko’rsatish kerak:
- Ko’p vazifali (Multitasking - vaqtni taqsimlash) rejimi. Multitasking
rejimida jarayonlarni bajarish uchun bitta protsessor ishlatiladi. Ushbu rejim soxta
parallel bo’lib, faqat bitta jarayon faol bo’lsa (amalga oshirilmoqda), boshqa
protsessorlar esa protsessorni ishlatish uchun navbatma-navbat turishadi. Vaqtni
birgalikda almashtirish rejimidan foydalanish hisob-kitoblarni yanada samaraliroq
qilishi mumkin (masalan, agar biron-bir ma’lumotni kiritish kutilganligi sababli
protsessor bajarilmasa, protsessor bajarishga tayyor bo’lgan jarayonni amalga
oshirish uchun ishlatilishi mumkin - Tanenbaum (2001).) . Jarayonlarning o’zaro
bog’liqligi va sinxronizatsiya zarurati kabi parallel hisoblash effektlari ham ushbu
rejimda o’zini namoyon qiladi va natijada bu rejim parallel dasturlarni dastlabki
tayyorlash uchun ishlatilishi mumkin;
- Parallel ravishda bajarish (Parallel execution). Parallel ravishda bajarilganda
bir vaqtning o’zida ma’lumotlarni qayta ishlash bo’yicha bir nechta yo’riqlar
bajarilishi mumkin. Ushbu hisoblash rejimi nafaqat bir nechta protsessor mavjud
bo’lganda, balki oqim va vektorni qayta ishlash moslamalari yordamida ham
ta’minlanishi mumkin;
- Taqsimlangan hisoblashlar (Distributed computations). Ushbu atama bir-
biridan uzoqlikda joylashgan bir nechta ishlov berish moslamalaridan foydalanishni
o’z ichiga olgan ma’lumotlarni parallel ravishda qayta ishlashni anglatadi.
Ma’lumotni qayta ishlash moslamalari o’rtasida aloqa liniyalari orqali uzatish vaqtni
ko’paytirishga, ma’lumotlarni samarali qayta ishlashga olib keladi. Ushbu hisoblash
rejimida faqat protsessor protsessori oqimlarining past intensivligi bilan parallel
algoritmlar uchun foydalanish mumkin. Yuqorida sanab o’tilgan shartlar bir nechta
3
alohida kompyuterlar LAN yoki WAN aloqa kanallari bilan ulanganda hosil
bo’ladigan ko’pkompyuter tizimlaridagi hisoblashlarga xosdir.
Do'stlaringiz bilan baham: |