1-ma’ruza
Kirish. Parallelashtirish – ishlov berish tezligini oshirishning bir yo‘li.
Reja:
Kirish
1.2. Parallelashtirish – ishlov berish tezligini oshirishning bir yo‘li
1.1. Kirish
Bir necha amallarni bir vaqtda bajarish g‘oyasidan iborat bo‘lgan axborotlarni parallel xisoblash ikki xil ko‘rinishi mavjud. Bular: Parallel va konveer. Agar biror qurilma bitta amalni vaqt birligida bajarsa, u holda mingta amalni ming vaqt birligida bajaradi. Agar xuddi shunday bir vaqtda ishlay oladigan va bir–biriga mustaqil beshta qurilma mavjud deb qaralsa, u holda ular yuqoridagi mingta amalni mingta vaqt birligida emas, balki ikki yuzta vaqt birligida bajaradi. Xuddi shunday N ta qurilmadan iborat tizim 1000 ta amalni 1000 c vaqt birligida bajarida. Unga o‘xshash holatlarni hayotdan ham keltirish mumkin. Masalan, agar bitta askar polizga 10 soatda ishlov bersa, u xolda 50 askardan iborat rota bir vaqtda ishlab polizga 12 minutda ishlov beradi. Bu parallel amallar prinsipi hisoblanadi.
- rasm. Ishni parallel bajarish
Konveerli qayta ishlash. Qo‘zg‘aluvchan vergulli shaklda tasvirlangan xaqiqiy ikkita sonni qo‘shish uchun nima qilish kerak? Bunda bir qator mayda amallar bajariladi. Bular: tartibini solishtirish, tartibini tenglash, normallash va boshqa amallar. Dastlabki kompyuterlarning microprotsessorlari yuqorida keltirilgan barcha “mikro amallarni” har bir argumentlar juftligi uchun natijani xosil qilguncha ketma-ket bajargan va bundan keyin qo‘shiluvchilarning keyingi juftligini qayta ishlashga o‘tgan. Konveerli qayta ishlash g‘oyasida umumiy amal bir necha bosqichlarga ajratiladi.
Har bir bosqich bajarilgandan keyin uning natijasi keyingi bosqichga beriladi va shu bilan birga kiruvchi axborotlarning yangi qismi qabul qilinadi. Bunda oldin bajarilgan amallarni natijalarini qo‘llash orqali qayta ishlash tezligi oshiriladi. Faraz qilaylik, amal beshta mikro amaldan iborat bo‘lishi va ularni har biri bitta vaqt birligida bajaradi. Agar ajralmas yagona ketma-ket kurilma mavjud bo‘lsa, u 100 ta argumentlar juftligini 500 vaqt birligida bajaradi. Agar har bir mikro amal konveyrli qurilmaning alohida bosqichida bajarilsa, u xolda bunday qurilmaning har bir qayta ishlash bosqichining beshinchi vaqt birligida birinchi 5ta argumentlari aniqlanadi. Birinchi natija vaqtning 5-birligidan keyin olinadi. 100 ta juftlikdan iborat to‘plam esa 5+99=104 vaqt birligidan keyin olinadi. Ya’ni parallel qurilmaga nisbatan 5 marta tez bajariladi. Bir qarashda konveerli qayta ishlashni parallel qurilmalarini o‘rniga zarur miqdordagi konveyr qurilmalarini qo‘llash mumkindek ko‘rinadi. Biroq bunda xosil bo‘lgan sistema narxi va murakkabligi oshadi.
Unumdorlik esa o‘zgarmay qoladi. Parallel dastur tuzish uchun, dasturdagi bir vaqtda va bir-biridan mustaqil microprotsessorlarda bajariladigan amallar guruhini ajratib olish kerak. Buning imkoniyati mavjudligi dasturda informatsion bog‘liqliklar mavjudligi yoki yo‘qligi bilan aniqlanadi. Agar dasturning biror amali natijasi ikkinchi amal argumenti sifatida qo‘llanilsa amallar informatsion bog‘liq deb ataladi. Agar V amali A amaliga informatsion bog‘liq bo‘lsa, u holda V amali faqt A amali tugagandan keyin bajariladi. Agar A va V amallari informatsion bog‘liqmas bo‘lsa, u xolda algoritmda ularni bajarish ketam-ketligiga cheklanish qo‘yilmaydi, xususan ular bir vaqtda bajarilishi mumkun. Shunday qilib, dasturni informatsion bog‘liq amallarni aniqlashdan va ularni xisoblash qurilmalariga taqsimlashdan, sinxronlashdan va zarur kommunikatsiyani o‘rnatishdan iborat bo‘ladi.
Do'stlaringiz bilan baham: |