Arxitekturaning to‘rt sinfi: SISD, MISD, SIMD, MIMD

|
Arxitekturaning to‘rt sinfi: SISD, MISD, SIMD, MIMD
|
bet | 4/5 | Sana | 13.10.2024 | Hajmi | 29,59 Kb. | | #274874 |
Bog'liq Namuna-mustaqil ishArxitekturaning to‘rt sinfi: SISD, MISD, SIMD, MIMD
Dunyodagi yaratilgan dastlabki kompyuterlardan biri EDSAC (1949 y.) daqiqasiga 100 ta arifmetik amallarni bajara olish qobiliyatiga ega edi. Eng kuchli zamonaviy ishlab chiqarilgan kompyuterlar esa daqiqasiga bir necha o‘n trillionlab (1012) operatsiyalarni bajara oladi. Bunday ishlab chiqarishning olamshumul darajada o‘sib borishini qanday tushuntirish mumkin?
SHubxasiz, buning sabablaridan biri elementlar bazasining mukammallashib borishi xisoblanadi. Elektron lampalarni tranzistorlar bilan almashtirish, integral sxemalarning paydo bo‘lishi, kremniy moddasidan tayyorlangan chiplarni ishlab chiqish – bu xodisalarning barchasi kompyuter texnikasinining inqilobiga olib keldi. CHiplarni yaratishning zamonaviy texnologiyalari qator o‘nlab mikron zarrachalari (10-6 m) o‘lchamidagi elementlar bilan ishlash imkonini bermoqda. CHiplar xajmining doimiy ravishda kichrayib borishi protsessor ishlashining takt chastotasining evolyutsion ortishini ta’minlab beradi. Ya’ni, EDSA Cimel takt vaqti 2 mikrosekund (10-6 sek), lekin zamonaviy Hewlett-Packard V2600 esa bitta taktni 1.8 nanosekundda (10-9 sek) amalga oshiradi. HP V2600 esa bir protsessor buyrug‘ini 1000 marta tezroq amalga oshiradi. SHu bilan birga uni maxsuldorlik ko‘rsatkichi sekundiga 77 milliard operatsiyalarni tashkil etadi va bu EDSACga qaraganda 70 million marta ko‘p operatsiyani bajarish qobilyatiga egadir. Maxsuldorlikning bunday ortib borishini faqatgina elementlar bazasini o‘zgarishi bilan izoxlash qiyin.
Xisoblash ilmida elektron-xisoblash mashinalari qurilmalari bilan bog‘liq uchta ibora qo‘llaniladi:
Kompyuter arxitekturasi – bu kompyuter komponentlari tavsifi va ularning o‘zaro aloqasi.
Kompyuterni tashkillash – arxitekturani aniq tadbiq etish, uning “temirga” moslashishi. Masalan, CRAY kompyuterlari. Ular o‘xshash arxitekturaga ega. Dasturchi nuqtai nazari bilan qaraganda, ularda ma’lumotlarni vaqtincha saqlab turish uchun qo‘llaniladigan ichki registrlari soni, mashina buyruqlarining bir xil to‘plami, ma’lumotlarni namoyish qilishning bir xil formati bil xildir. Lekin CRAYning turli modellardagi kompyuterlarini tashkillash mazmunan farq qilishi mumkin: ulardagi protsessorlar soni xar xil bo‘lishi, operativ xotir turli xajmlarda bo‘lishi, turli tezliklarda ishlashi mumkin.
Kompyuterning sxemasi – bu uning barcha komponentlari, ularning ulanishi, quvvat olish, sovutish va boshqa qurilmalarining batafsil tavsifidir. Dasturchidan doim kompyuter arxitekturasini yaxshi bilishi talab qilinadi. Kompyuterning tashkillanishini bilish kamdan-kam, uning sxemasini bilishni talab qiladi.
Kompyuter arxitekturasidagi ro‘y bergan inqilob tufayli bir nechta xarakatlarni bir vaqtda (parallel) amalga oshirish g‘oyasini qo‘llab-quvvatlovchi ma’lumotlarni parallel qayta ishlash tamoyili ishlab chiqildi. Ma’lumotlarni parallel qayta ishlash ikki xil ko‘rinishga ega: konveyerlilik va xususiy parallellik.
Parallel qayta ishlash. Agar qaysidir qurilma bitta operatsiyani bir birlik vaqt davomida amalga oshirsa, u xolda mingta operatsiyani ming birlik vaqt davomida amalga oshiradi. Agar bunday bir vaqtda ishlash qobilyatiga ega bo‘lgan mustaqil qurilmalardan beshtasini joylashtirilsa, u xolda o‘sha mingta operatsiyani beshta qurilmadan tashkil topgan tizim orqali ming birlik emas, balki ikki yuz birlik vaqt davomida amalga oshirish imkoniyati paydo bo‘ladi. Xususiy xolda N qurilma shu ishni 1000/N birlik vaqtda bajaradi. Yana ham tushunarliroq bo‘lishi uchun hayotiy misol ko‘rib chiqamiz. Agar bir kishi bir kvadrat metr yerni kavlashi uchun ikki daqiqa sarflaydigan bo‘lsa, bu o‘n ikki nafar kishi shu joyni o‘n sekundda kavlaydi, degani emas. CHunki ular bir-birlariga xalaqit berishi va buning oqibatida ish tezligi yanada kamayadi. Buning xisoblashga nima bog‘liqligi bor? SHunday algoritmlar borki, parallelashtirishda nafaqat tezlikni oshirish imkonini bermaydi, xatto uni sekinlashishiga ham sabab bo‘ladi.
Konveyerli qayta ishlash. Suzib yuruvchi vergul ko‘rinishida tasavvur qilinadigan ikki mavjud sonlarni qo‘shish uchun nima kerak bo‘ladi? Tartibni solishtirish, tartibni to‘g‘rilash, mantissalarni ko‘paytirish, muvozanatlashtirish va x.k.lar kabi ko‘plab mayda operatsiyalar. Dastlabki kompyuterlarning protsessorlari barcha ushbu “mikrooperatsiyalar”ni xar bir juft argumentlar biri keyingisining ortidan ketma-ket ravishda oxirgi natijaga erishmagunlarigacha amalga oshirganlar. Faqatgina natijaga erishilgandan so‘nggina keyingi ko‘paytmali juftni qayta ishlashga o‘tadilar.
Konveyerli qayta ishlash g‘oyasi aloxida bosqichlarni umumiy operatsiyaning bajarilishida ajratib olinadi, bunda xar bir bosqich o‘z ishini tugatib, bir vaqtning o‘zida kiruvchi ma’lumotlarning yangi ulushini qabul qilgan xolda natijalarni keyingi bosqichga uzatgan bo‘ladi.
Ko‘rinishiga ko‘ra 1966 yilda Flinn tomonidan taklif qilingan xisoblash tizimlarining nisbatan eng dastlabki mashxur arxitektura klassifikatsiyasi xisoblanadi. Ushbu klassifikatsiya elementlar ketma-ketligi ostida tushuniladigan buyruq yoki protsessorda qayta ishlanadigan ma’lumotlar oqimi tushunchasi asosiga quriladi. Buyruqlar soni va ma’lumotlar oqimi asosida Flinn arxitekturaning to‘rt turini farqlaydi:
SISD (single instruction stream / single data stream) – birlik buyruqlar oqimi va birlik ma’lumotlar oqimi. Bu sinfga, eng avvalo, klassik ketma-ket mashinalar yoki boshqacha aytganda, Fon Neyman tipidagi mashinalar.
Bunday mashinalarda faqat bitta oqim buyruqlar mavjud bo‘lib, barcha buyruqlar ketma-ket birin-ketin qayta ishlanadi va xar bir buyruq bitta operatsiyani bitta buyruqlar oqimi bilan birga ishlaydi.
SIMD (single instruction stream / multiple data stream) – birlik buyruqlar oqimi va ko‘plikdagi ma’lumotlar oqimi. Bunday turdagi arxitekturalarda bitta buyruqlar oqimi va oldingi klasslardan farqli o‘laroq vektorli buyruqlar ham saqlanadi. Bu bitta arifmetik operatsiyani birdaniga birnechta ma’lumotlar – vektor elementlari ustida amalga oshirish imkoniyatini beradi.
Vektorli operatsiyalarni amalga oshirish usulini tushuntirib berish ancha qiyin masala. SHuning uchun vektor elementlarini qayta ishlash protsessor matritsasi yordamida ILLIAC IVdagi kabi yoki konveyer yordamida CRAY-1 mashinalaridagi kabi amalga oshirilishi mumkin.
MISD (multiple instruction stream / single data stream) – ko‘plikdagi buyruqlar oqimi va birlik ma’lumotlar oqimi. Buning ma’nosi shuki, arxitektura bitta ma’lumotlar oqimini qayta ishlovchi ko‘pgina protsessorlarga egaligidir. Darvoqe, na Flinn, na boshqa mutaxassislar xaligacha kompyuter arxitekturasi soxasida mazkur tamoyilda qurilgan aniq mavjud xisoblash tizimlarini taqdim eta olganlari yo‘q.
MIMD (multiple instruction stream / multiple data stream) – ko‘plab buyruqlar oqimi va ko‘plab ma’lumotlar oqimi.
Ushbu sinf xisoblash tizimi yagona kompleksga birlashtirilgan va xar biri o‘zining buyruq va ma’lumotlar oqimi bilan ishlovchi buyruqlarni qayta ishlashning birnechta qurilmalari borligini bildiradi.
Taklif qilingan klassifikatsiya sxemasi xozirgi vaqtgacha u yoki bu kompyuterning boshlang‘ich xarakteristikasida eng ko‘p qo‘llanilayotgan klassifikatsiya xisoblanadi. Agar kompyuter SIMD yoki MIMD sinfiga mansub deb qaralsa, u xolda uning ishini bazali printsipi tushunarli bo‘la boshlaydi, ayrim xolatlarda buning o‘zi yetarlidir. Lekin uning kamchiliklari yanada yaqqolroq namoyon bo‘ladi.
Klasterli tizimlar
Klaster deganda, shinali yoki kommutatorli arxitektura va foydalanuvchi oldiga qo‘yilgan masalani yagona axborot-xisoblash resursi sifatidagi tarmoq texnologiyasini qo‘llash yordamida birlashtirilgan ikki yoki undan ortiq kompyuterlar (ko‘pincha tugunlar deb ataladi) tushuniladi. Klaster tugunlari sifatida istalgan kompyuterlarni olish mumkin.
Klasterlar MPP-sistemaga tegishli bo‘lib, ular boshqa arxitekturalardan quyidagi parametrlar bilan farq qiladi:
Xisoblash tugunlari sifatida maxsus modellar emas, balki oddiy kompyuterlardan tashkil topadi;
O‘zaro munosabat umumiy foydalishga mo‘ljallangan tarmoq orqali amalga oshiriladi;
Ular o‘rtasidagi tugun va aloqalar xar xil manbali bo‘lishi mumkin.
Klasterlash kompyuter tiimlarining turli darajalari: qurilmaviy ta’minot, operatsion tizim, utilit dasturlar, boshqaruv tizimlari va ilovalarida ham qo‘llanilishi mumkin. Tizim darajalari qancha ko‘p klaster texnologiyasi orqali birlashtirilgan bo‘lsa, klasterning ishonchliligi, masshtabliligi va boshqarilishi shuncha yuqori bo‘ladi.
Klasterli superkompyuterli tizimlar eng arzon tizimlar xisoblanadi. CHunki protsessorlar, kommutartorlar, disklar va tashqi qurilmalar standart to‘plam elementlar bazasida yig‘iladi („off the shelf“).
|
| |