Parallelizm turlari - 7-mavzu: Parallel ishlov berish vositalari

|
7-mavzu: Parallel ishlov berish vositalari
|
bet | 2/4 | Sana | 13.01.2024 | Hajmi | 1,2 Mb. | | #136491 |
Bog'liq 7-mavzu Parallel ishlov berish vositalariParallelizm 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.
2. Parallel qayta ishlashni tashkil etishda asosan uchta yo’nalishni
ko’rsatish mumkin
Masalani yechishni turli bosqichlarini vaqt bo’yicha birlashtirish;
Masalalarni yoki bitta masalani qismlarini bir vaqtda yechish;
Axborotlarni konveyerli qayta ishlash.
Birinchi yo’nalish bo’yicha axborotlarni multidasturli qayta ishlash amalga oshiriladi. Multidasturli qayta ishlashni bir protsessorli EXMlarda ham tashkil etish mumkin.
Ikkinchi yo’nalish bo’yicha turli yoki bitta masala qismlarini bir vaqtda yechish bir qancha qayta ishlovchi qurilmalar yordamida amalga oshiriladi. Bunday xollarda masalalarning yoki masala oqimlarining parallel qayta ishlashi mumkin bulgan xususiyatlaridan foydalaniladi.
Tizimda bir vaqtda bir qancha masalalarni bajarilishi yoki bitta masalaning bir qancha qismlarini bajarilishiga qarab, quyidagi parallellik turlari mavjuddir:
bir-biriga bog’liq, bo’lmagan masalalarning tabiiy
parallelligi;
bir-biriga bog’liq, bo’lmagan shoxchalar parallelligi;
tizimning ishlashining konveyerli rejimi.
Bir biriga bog’liq, bo’lmagan masalalarni tabiiy paralleligi - bu tizimga bir-biri bilan bog’lanmagan uzluksiz masalalar kelib tushayotganda ya’ni, bitta topshiriq, natijasi, ikkinchi masala yechimiga kerak bo’lmagan xollarda namoyon bo’ladi.
Bunday xollarda tizimda bir qancha qayta ishlovchi qurilmalardan foydalanish uning unumdorligini oshiradi. Bunday xolatda tizimning ishlashini tashyush etishdagi unumdorlik
ga teng bo‘ladi.
Bu erda parallel ishlamaydigan hisoblash mashinasi unumdorligi: Ti — i modulining topshiriqning o’ziga tegishli rdasmini bajarish uchun ketadigan Vaqti; m - parallellik soni, ya’ni topshiriq, qismlarini sonini tizim modullari soniga mos kelishi.
Tizimning maksimal unumdorligiga topshiriqning barcha qismlarini bir xil vaqtda bajarilishi bilan erishish mumkin. Bunday hollarda tizim qurilmalari xajmi, parallel xizmat ko’rsatmaydigan xisoblash majmualariga nisbatan p-martaga oshib ketadi. Bir-biriga bog’liq, bo’lmagan, mustakdp bulgan topshiriq, shohchalarini parallel bajarish, axborotlarni kdyta ishlashni parallellashtirishdagi eng Ko’p tarqalgan usul hisoblanadi. Bunday parallellashtirishni mazmuni, katta masalalarni yechishda, ularni bir-biriga bog’liq, bo’lmagan kdemlarga (shohchalarga) ajratishni anglatadi, ana shu kdemlarga tuzilgan dastur asosida shoxchalarining har biri bir vaqtda, alohida qayta ishlovchi qurilmalarda mustahkam ravishda parallel bajariladi.
Agar masala kdemlarini yechish jarayonida quyidagi shartlar bajarilsa, u holda shu kdemlarga tuzilgan dasturlar shohchalari mustahkam hisoblanadi:
dastur shoxchasi uchun kirish kattaligi, boshqa dasturning chiqish kattaligi bo’lib xisoblanmaydi;
ikkala dastur shoxchasi, xotiraning bitta yacheykasiga yozilmaydi;
dasturning ikkala shoxchasi xam aloxida-aloxida bajariladi.
Parallellash xaqidagi tasavvurlarni quyidagi dasturning yarusli - parallel shaklini graf ko’rinishida ko’rib chiqamiz. (1-rasm)
7.1-rasm. Dasturlarni yarusli - parallel shakli
Dastur bir qancha darajalarga joylashgan shoxchalardan tuzilgan bo’lib, bu shohchalar yaruslar deyiladi. Doirachalar ko’rinishida har bir shoxcha belgilanib, ularning uzunligi esa yonidagi yozilgan raqamlar bilan, ko’rsatilgan. Undan tashqari kirishdagi ma’lumotlar xgbelgisi bilan, chiqishdagi ma’lumotlar ugbelgisi bilan belgilangan. Y-belgisi xam pastki, ham ustki indeksga ega, ustki indeks natija olish uchun bajariladigan shoxcha tartib nomeri, pastki indeks shu shoxcha bajarilgandan keyingi olingan natija tartib nomerini anglatadi.
10.1-rasmda ko’rsatilgan dastur 14 ta shoxchadan iborat bo’lib, 5 ta yarusga joylashtirilgan. Xar bir yarus shoxchasi bir-biri bilan bog’langan, ya’ni xoxlagan shoxcha natijasi shu yarusdagi boshqa shoxcha uchun kirishdagi ma’lumotlar bo’lib xisoblanadi. Ushbu grafda boshqarish yoki xotira bog’lanishlari xam keltirilgan bo’lishi mumkin. Agar i-shoxchasining uzunligini tj-Vaqt birligi deb qabul qilsak u xolda grafda ko’rsatilgan xamma dasturlarni bajarish uchun
Vaqt birligi kerak bo’ladi. Agar dastur 2 ta bir-biriga bog’liq, bo’lmagan qayta ishlovchi qurilmada bajarilsa, u holda yuqorida ko’rsatilgan vaqt o’z –o’zidan kamayadi.
Dastur bajarilishini yarusli - paralel shaklining 3 ta ko’rinishini ko’rib chiqamiz.
1. Birinchi protsessor 1-4-5-9-10-13 shoxchalarni bajarib, 145 birlik vaqt sarf qiladi, shundan 13-shoxchani bajarish
uchun 55 vaqt birligida ma’lumotlarni kutib ishlamay turadi, ikkinchi protsessor esa 2-6-3-7-8-11-12-14 shoxchalarni 230
Vaqt birligida bajaradi.
Birinchi protsessor 1-4-5-9-10-11-13 shoxchalarni bajarish uchun 220 Vaqt birligi sarf qiladi, shundan 25 Vaqt birligida ishlamay turadi. Iikkinchi protsessor 2-6-3-7-8-11- 12-14 shoxchalarni bajarish uchun 215 Vaqt birligini sarf qiladi.
Birinchi protsessor 1-4-8-12-11-13 shoxchalarni, ikkinchi protsessor 2-5-6-3-7-9-10-14 shoxchalarni bajaradi. Birinchi protsessor 235 Vaqt birligini sarf qiladi, ikkinchi protsessor 200 vaqt birligini sarf qiladi.
Ko’rib o’tilgan uchta xolatlarni solishtirsak ikkita protsessorli tizimda yt13 yt14 - natijalarni xarsil qilishga ketgan vaqt sezilarli kamayganini ko’ramiz, ya’ni 375 vaqt birligi urniga birinchi variantda 290, ikkinchi variantda 220, uchinchi variantda 235 vaqt birligida tizimga yuklatilgan vazifa bajariladi.
Shunday qilib, bir qancha qayta ishlovchi qurilmalar yordamida, bir-biriga bog’liq, bo’lmagan dastur shoxchalarini parallel bajarish uchun masalani yechish yo’nalishini ko’rsatuvchi, xisoblash jarayonlarini tashyush etish muxim xisoblanadi. Undan tashqari masalani echishda, xar bir protsessor navbatdagi dastur shoxchasini bajarish uchun ma’lumotlar tayyorligi tugrisidagi ma’lumotga ega bo’lishi kerak. Ko’pgina murakkab masalalarni yechishda, ularni mustaqil shoxchalarga ajratib dasturlash, masalani yechish vaqtini sezilarli kamaytiradi. Ammo dastur yaratish davomida mustaqil shoxchalarga ajratishning optimal variantlarini tashkil etish murakkab jarayon xisoblanadi.
|
| |