Parallel hisoblash uchun mo‘ljallangan masalalar

Parallel hisoblash uchun mo‘ljallangan masalalar. Eng avvalo kompyuterda
parallel dasturlash kerakmi degan savolga javob olish kerak. Lekin bu savol javob
olishni istagan yagona savol emas. Aynan shuning uchun ham, parallel hisoblash
dunyosini tushunish qiyin bo'lgan sodda, tushunarli, tushunarli dunyodan navbatdagi
hisob-kitoblardan nima o'tish kerakligini tushunish ham muhimdir. Parallel
hisoblashning afzalliklari nimadan iborat va parallel hisobga yo'naltirilgan dasturlarni
yaratishda dasturchi uchun qanday muammolar kutilmoqda. Ushbu savollarga javob
berish uchun keling, kompyuterni rivojlantirish tarixini tezroq ko'rib chiqamiz.
Birinchi kompyuterlar Fon Neyman tomonidan ishlab chiqilgan printsiplarga
muvofiq qurilgan. Ularning uchta asosiy komponenti bor edi: xotira, protsessor va
kirish va chiqish ma'lumotlarini beruvchi tashqi qurilmalar to'plami.
Xotira ko'p darajali va tashqi xotirasi va ichki xotirasi bo'lgan birinchi
kompyuterlar uchun - operatsion va ro'yxatga olish xotirasi. Tashqi xotira (magnit
lenta, punch karta, disklarda) kompyuterning yoqilgan yoki yoqilmaganligidan qat'iy
nazar, dastur va ma'lumotlarni saqlash imkonini berdi. Ichki xotira faqat kompyuter
bilan sessiya davri uchun ma'lumot saqlanadi. Kompyuterni o'chirib qo'ysangiz, ichki
xotiraning mazmuni g'oyib bo'ldi.
Dastur kompyuterda bajarilishi uchun u RAMga yuklanishi kerak edi. U o'sha
dasturda ishlangan ma'lumotlar kabi saqlangan. Xotirada saqlangan dasturning
printsipi Von Neumann kompyuterlarining asosiy tamoyillaridan biridir.
Ro'yxatdan o'tish xotirasi hisoblash vaqtida ishlatilgan. Ma'lumotlar bo'yicha ba'zi
operatsiyalarni bajarishdan oldin, ma'lumotlar registrlarda joylashtirilishi kerak. Ushbu
tezkor xotira turi ma'lumotlar bo'yicha operatsiyalarni bajarishda zarur tezlikni
ta'minladi.
Barcha operatsiyalarni bajarish - hisoblash jarayonini boshqarishda ma'lumotlar
va operatsiyalar bo'yicha operatsiyalarni protsessor amalga oshirdi. Kompyuter
protsessori o'ziga xos ko'rsatmalarga ega edi. Ushbu to'siq potentsial hisoblash
funktsiyasini hisoblash uchun universal edi. Boshqa tomondan, ushbu vosita
odamlarning yozish dasturlarining nisbiy soddaligini ta'minladi.
Dastlabki kompyuterlar uchun dasturlar, amaldagi protsessor buyruqlar
majmuasiga kiritilgan qator buyruqlarni ifodalaydi. Dasturni kompyuterda ijro etish
juda oddiy edi. Har safar kompyuterda bitta dastur bajarilgan. Protsessor, dasturga
muvofiq ketma-ket navbatdagi buyruqlar ketma-ketlikda bajarildi. Barcha kompyuter
resurslari - xotira, protsessor vaqti, barcha qurilmalar - dasturning to'liq tasarrufida edi
va hech narsa uning ishiga aralashmasdi (albatta odamni hisobga olmagan).
Parallelizm ko'zga ko'rinmasdi.
Bu idial juda uzoq vaqt davomida juda qimmat bo'lmagan kompyuter resurslari
samarasiz ishlatgani tufayli uzoq davom etmadi. Kompyuterlar o'chirilmadi, bitta
dastur boshqasini o'zgartirdi.
Yaqin orada kompyuter protsessor bilan birga markaziy protsessor deb
nomlanuvchi qo'shimcha protsessorlarga, eng avvalo, sekin komutlarni bajarish uchun
mas'ul bo'lgan kirish / chiqish qurilmalarining maxsus protsessorlariga ega edi. Bu esa,
bir vaqtning o'zida bir nechta dastur kompyuterda ishlayotgani - dastur natijalarini
nashr etishi, ikkinchisi - bajarilishi va uchinchisi - masalan, magnit tasmasi yoki
boshqa tashqi vositadan ma'lumotlarni kiritish uchun dasturni bajarishning ommaviy
rejimini tashkil etishga imkon berdi.
Inqilobiy qadam 1964 yilda IBM - OS 360 operatsion tizimining paydo bo'lishi
bo'ldi. Kompyuterda paydo bo'lgan operatsion tizim uning mutlaq egasi bo'ldi - barcha
resurslari menejeri. Endilikda foydalanuvchi dasturi faqat operatsion tizim nazorati
ostida bajarilishi mumkin. Operatsion tizim ikkita muhim vazifani hal etishga imkon
berdi: bir tomondan, bir vaqtning o'zida kompyuterda ishlashning barcha dasturlariga
zarur xizmatni taqdim etish, ikkinchidan, mavjud resurslarni ushbu resurslarga da'vo
qilayotgan dasturlar orasida samarali foydalanish va tarqatish. Operatsion tizimlarning
paydo bo'lishi bitta dasturli rejimdan ko'p dasturli rejimga o'tishga olib keldi, bir
vaqtning o'zida bir xil dasturda bir nechta dastur mavjud. Ko'p dasturlash parallel
dasturiy emas, biroq bu parallel hisoblash uchun bir qadamdir.
Ko'p dasturlash - bir nechta dasturlarni parallel bajarish. Ko'p dasturlash sizga
ularni bajarish uchun umumiy vaqtni kamaytirish imkonini beradi.
Parallel hisoblashda bir xil dasturni parallel bajarish nazarda tutiladi. Parallel
hisoblash bir dasturning bajarilish vaqtini kamaytirish imkonini beradi.
Ko'p dasturlash uchun kompyuterning bir nechta protsessorlarga ega bo'lishi juda
muhim. Ko'p dasturlashni amalga oshirish uchun protsessorlarning o'zaro ishlashini
tashkil qiluvchi operatsion tizim mavjudligi etarli.
Parallel hisoblash uchun dasturning o'zi uchun zarur bo'lgan qo'shimcha talab
mavjud - dastur hisoblarni parallellashtirish imkoniyatini yaratishi kerak, chunki
operatsion tizimning ko'rinishi kompyuterni apparat (xotira, protsessorlar, boshqa
qurilmalar) deb hisoblash mumkin emasligini anglatadi. Endi u ikki qismga ega: qattiq
(qattiq) va yumshoq (yumshoq) - bir-birini to'ldiruvchi apparat va dasturiy
komponentlar. Yarim asrdan ko'proq vaqt mobaynida komponentlar tez rivojlana
boshladi, asbobuskunalar uchun eksponentsional o'sishni odatiy holga keltirdi, bu
Murning taniqli ampirik qonunida aks ettirilgan - barcha muhim belgilar kattalashib
ketgan - barcha darajalarda xotira hajmi, xotiraga kirish vaqtini kamaytirish, protsessor
tezligi. Murning qonuniga ko'ra (Gordon Moore Intelning asoschilaridan biri),
xarakterli qiymatlar har yarim yilda ikki baravarga ko'paydi. Kompyuterga kiritilgan
protsessorlarning soni ham ortdi. O'zgarildi va kompyuter arxitekturasi. Ushbu
o'zgarishlar ko'p jihatdan hisoblarni parallellashtirishga qaratilgan qadamlar edi. Bu
erda parallelizatsiya jarayoni bilan bevosita bog'liq bo'lgan protsessor arxitekturasidagi
o'zgarishlarning bir qismi:
Buyruqlar chizig'ini qayta ishlash. Protsessor tomonidan buyruqlar oqimini
bajarish jarayoni endi buyruq buyrug'i ketma-ket ravishda bajarilmasligi sifatida
ko'rilmaydi. Buyruqlar oqimini qayta ishlash jarayoni quvur liniyasida amalga
oshirildi, shuning uchun bir nechta buyruqlar bir vaqtning o'zida bajarishga
tayyorlandi. Bir-biriga bog'liq bo'lmagan buyruqlar bir vaqtning o'zida bajarilishi
mumkin, bu allaqachon haqiqiy parallelizmdir. "Uzoq buyruqlar".
Ba'zi bir kompyuterlarning arxitekturasi bir nechta protsessorlarni o'z ichiga
olgan bo'lib, ular mantiqiy va arifmetik operatsiyalarni butun sonlar bo'yicha bajarish
imkonini beradi, bir nechta protsessorlar suzuvchi nuqtali raqamlarda operatsiyalarni
amalga oshiradi. Uzoq buyruq bitta buyruqda mavjud protsessorlarning har biri
bajarishi kerak bo'lgan amallarni ko'rsatishga imkon berdi. Bu esa, apparat darajasida
parallelizmni amalga oshirish imkonini berdi Vektorli va matritsali protsessorlar.
Ushbu protsessorlarning ko'rsatmalar to'plami vektorlar va matritsalar bo'yicha asosiy
operatsiyalarni o'z ichiga oladi. Masalan, bitta guruh ikkita matritsani qo'shishlari
mumkin. Bunday buyruq parallel hisoblashlarni amalga oshiradi. Ushbu operatsiyalar
ma'lumotni qayta ishlash asoslarini tashkil etuvchi ilovalar keng tarqalgan.
Ma`lumotlarning parallel ishlashi ushbu klassdagi ilovalarning samaradorligini
sezilarli darajada oshirishi mumkin. Dasturiy ta'minot darajasida parallel ijro etiladigan
dasturlarning yana bir muhim turi - grafik tasvirlar bilan intensiv ishlash. Ushbu
ishlash grafik ishlovchilar tomonidan amalga oshiriladi. Grafik tasvirni ballar to'plami
sifatida ko'rish mumkin. Rasmni qayta ishlash ko'pincha hamma punktlarda bir xil
operatsiyani bajarish uchun kamayadi. Ushbu vaziyatda ma'lumotlar parallelizatsiyasi
osongina amalga oshiriladi. . Shu sababli, grafik protsessorlar avvaldan ko'p yadroli
bo'lib, bu jarayonni parallellash va tasvirni samarali ishlash imkonini beradi.
Superkompyuterlar hozirgi vaqtda eng yuqori ko'rsatkichlarga ega bo'lgan
kompyuterlarni o'z ichiga oladi. Ular yuz minglab protsessorlardan iborat.
Superkompyuterlardan samarali foydalanish hisob-kitoblarning eng keng tarqalgan
parallelligini o'z ichiga oladi ..
Ilmiy tadqiqotlarda va yangi texnologiyalarda mavjud hisoblash tizimlarining
barcha kuchini talab qiluvchi vazifalar mavjud. Mamlakatning ilmiy salohiyati ko'p
jihatdan
o'zining
superkompyuterlari
mavjudligi
bilan
belgilanadi.
Superkompyuterning
kontseptsiyasi
nisbatan
nuqtai
nazardir.
O'n
yillik
superkompyuterning xususiyatlari odatdagi kompyuterning xususiyatlariga mos keladi.
Bugungi superkompyuterlar petafloplarda (1015 dona perimetrli operatsiyalar)
o'lchovlarda ishlaydi. 2020 yilga qadar superkompyuterlarning ishlashi 1000 barobarga
oshadi va eksaflopslarda o'lchov qilinadi Kompyuterlar tasniflash Kompyuterlar
dunyosi miniatyura o'rnatilgan kompyuterlardan individual binolarni ishlaydigan ko'p
tonna superkompyuterlarga qadar farq qiladi. Ular turli yo'llar bilan tasniflanishi
mumkin.
Birinchi va eng sodda tasniflardan biri - Flynn tasniflashini ko'rib chiqing, bu
ma'lumotlar kompyuterda qanday ishlashga asoslangan. Ushbu tasnifga ko'ra, barcha
kompyuterlar (komp'yuter komplekslari) to'rtta sinfga bo'linadi - arxitekturali
kompyuterlar: SISD (Single Instruction stream - yagona ma'lumotlar oqimi) - bitta
ma'lumot oqimi - bitta ma'lumot oqimidir. Bu sinf, programma buyruqlar ketma-ket
bajarilganda, keyingi ma'lumotlar elementini qayta ishlashda von Neumann
arxitekturasiga ega oddiy "ketma-ket" kompyuterlarni o'z ichiga oladi SIMD (bitta
yo'riqnoma oqimi - bir nechta ma'lumotlar oqimi) - bitta buyruq xartasi - bir nechta
ma'lumotlar oqimi.
Vektorli va matritsali protsessorlarga ega kompyuterlar ushbu turga tegishli: MISD
(bir nechta yo'riqnoma oqimi - yagona ma'lumotlar oqimi) - bir nechta buyruqlar oqimi
- bitta ma'lumot oqimi. Ushbu turdagi ma'lumotlarni o'tkazishning konveyer turiga ega
kompyuterlar bo'lishi mumkin.
Foydalanilgan Adabiyotlar.
Asosiy adabiyotlar:
1. Andreew S. Tanenbaum. Structured computer organization. Sixth edition. 2012. –
801 p. 2. Tanenbaum E. Arxitektura kompyutera. 6-e izd. SPb.: Piter. 2013. – 816
s. 3. Tanenbaum E. Arxitektura kompyutera. 5-e izd. SPb.: Piter. 2011. – 844 s. 4.
Broydo V.L. Arxitektura EVM i sistem. Uchebnik dlya vuzov. SPb. 2011.- 720 s 5.
Badenko V.L. Vыsokoproizvoditelьnыe vыchisleniya. Uchebnoe posobie. SPb.
2011. – 180 s.
|