941-18 guruh talabasi
Sa’dullayev Jo’rabekning
Kompyuterni tashkillashtirish
fanidan tayyorlagan
HISOBOTI.
18-mavzu. Parallel hisoblashlarni amalga oshirish
Men “Parallel hisoblashlarni amalga oshirish Konveyerli hisoblash. Superskalyar hisoblashlar” haqida malumotlarga ega bo’ldim va youtube orqali videolarni ko’rib chiqdim vas hu malumotlar orqali hisobot tayyorladim.
Komandalar konveyeri.
MP ning turli komandalarni bajarishga turlicha vaqt sarflashi ma’lum. Agar turli komandalarni bir xil vaqtda bajarilishini sun’iy usulda ta’minaladigan bo’lsa (fiksatorlar kiritish orqali yoki sinxronlashtirish yordamida) bu usul bilan komandalar konveyerini tashkil qilish mumkin.
Slayd
Bitta komandani bajarilish vaqtini sun’iy yo’l bilan ko’paytilisa, konveyer to’liq bo’lgan holatda unumdorlik 1/Tk ga yaqin bo’ladi. Bunda Tk – kopnveyer takti, bu holatda bir etapni bajarish vaqti. Bu MP ning unumdorligini 5 barobar oshirish imkonini beradi. Bu – nazaiy jihatdan qaraganda. Amaliyotda esa bunga erishish qiyin, chunki konveyerlashtirishdagi nizolar (конфликт) bunga yo’l qo’ymaydi.
Komandalar konveyerlashdagi nizo deganda potokdagi keyingi kelayotgan komandani shu komanda uchun ajratilgan takt davomida bajarila olmay qolishiga aytiladi. Nizolar 3 turli bo’ladi:
1 Strukturali yoki resursli nizolar. Barcha komandalar kombinatsiyalarini bir vaqtda konveyerda joylashtirish va bajarishda apparat vositalar bajara olmay qolganda yuzaga keladi. MP dagi qaysidir qurilma konveyerlanmagan yoki yagona nusxada mavjud bo’lsa (parallellanmagan bo’lsa) strukturali yoki resursli nizo kelib chiqadi. Masalan kesh xotira bilan bog’liq shunday nizo bo’lishi mumkin: bitta komandani keshdan o’qib olish jarayoni kechayotganda (komandani bajarishning 1-bosqichi) boshqa komanda hisoblash natijasini keshga yozishga uringanda. Bunday resursli nizolarni kelib chiqmasligi uchun 3 xil uslub ishlatiladi:
Nizo hal bo’lgunicha konveyerni to’xtatib turish (pipeline stall)
Nizo kelib chiqadigan qurilmani ikkilantirish, masalan kesh xotirani 2 ga: komandalar keshi va ma’lumotlar keshiga ajratish
Nizo keltirgan uskunani tezlatish (tezkorrog’iga almashtirish) yoki konveyerlash
Superskalyar arxitektura.
Komandalar konveyerini ishlatish CPI ning ko’rsatkichini 1 gacha tushirish imkonini beradi, boshqacha aytganda har bir taktda bitta “bajarilgan” komanda chiqadi. Bunday holatda takt uzunligi 10 ns (nanosekund) bo’lgan (takt chastotasi 100 MHz) MP ning unumdorligi 4 barobar oshib, 100 MIPS ga teng bo’ladi. Lekin, 1-dan Celeron MP da 250 MIPS bor, 2-dan CPI=1 ko’rsatkichi konveyerlashdagi nizolar sababli bajarilmaydi, nari borsa CPI=1,5 yoki CPI=2 bo’lishi mumkin. Bunday CPI bilan Celeron va shu kabi arxitekturali MP larning yuqori unumdorligi qanday ta’minlanadi?
Buning uchun ularda superskalyar qayta ishlash qo’llaniladi. Bu degani komandalarni ko’ppotokli qayta ishlash bo’lib, bir taktda 1 dan ko’p komanda bajariladi (CPI<1).
Aslida supers kalyar jarayonda bir nechta komandalar potoki bir nechta qurilmalardan teng o’tadi, boshqa yondashuvlar esa u yoki bu usulda bir potok bilan ishlaydi. Dekodlash, tanlash, RISC-simon ko’rsatma shakliga o’tkazish, qayta tartiblash kabi potok tezliklari va bajaruvchi qurilmalardagi potok tezliklarini moslashtirish uchun shu qurilmalarning ko’rsatma navbatlaridan (FIFO buferidan) foydalaniladi.
Superskalyar MP larda joriy dasturining komandalarining ketma-ket potokini parallel potok triadasiga (amallar+operandlar+natijanibelgilash) aylantirish va shu bilan bir vaqtda, parallel ravishda ijrochi qurilma komandalar ketma-ketligini bajarishida juda murakkab o’zgartirishlar bajariladi.
Do'stlaringiz bilan baham: |