• !$omp parallel do
  • Ko’p yadroli protsessorlarda tbb interfeysi yordamida signallarga parallel ishlov berish jarayonlarini o’rganish mavzusida bitiruv malakaviy ishi




    Download 1,16 Mb.
    bet17/27
    Sana18.05.2024
    Hajmi1,16 Mb.
    #242810
    1   ...   13   14   15   16   17   18   19   20   ...   27
    Bog'liq
    O‘zbekiston respublikasi axborot texnologiyalari va kommunikatsi

    Oddiy siklni parallellashtirish

    Yuqori darajadagi tushunchalar yetarli: oddiy siklni parallel ravishda bajarishni ko'rsatadigan oddiy parallel dasturni ko'rib chiqamiz. 2.1-misolni ko'rib chiqing: ko'paytirish-qo'shish yoki ko'pincha deyilganidek, sakso qolli sikl (" bir aniqlikdagi a*x plus y; uchun). Haqiqiy py da y o'zgaruvchisi massivdir, lekin soddalik uchun bu yerda y faqat skalyar o'zgaruvchi sifatida berilgan.


    Saxyga o’xshash xalqaga namuna
    subroutine saxpy(z, a, x, y, n)
    integer i, n
    real z(n), a, x(n), y


    do i = 1, n
    z(i) = a * x(i) + y
    enddo
    return
    end
    2.1-misoldagi sikl hech qanday bog'liqlikka ega emas. Boshqacha qilib aytganda, bitta siklni takrorlash natijasi boshqa iteratsiya natijasiga bog'liq emas. Bu shuni anglatadiki, ikki xil iteratsiya bir vaqtning o'zida ikkita turli protsessor tomonidan bajarilishi mumkin. 2.2-misolda ko'rsatilganidek, parallel do konstruktsiyasi yordamida bu siklni parallellashtiramiz .
    Saxpyga o'xshash halqa OpenMP yordamida parallellashtirilganda.
    subroutine saxpy(z, a, x, y, n)
    integer i, n
    real z(n), a, x(n), y
    !$omp parallel do
    do i = 1, n
    z(i) = a * x(i) + y
    enddo
    return
    end

    Ko'rib turganimizdek, dastlabki dasturga yagona o'zgartirish parallel do direktivasi qo'shilishi hisoblanadi. Ushbu direktivadan so'ng do sikli konstruktsiyasi kelishi kerak va do siklining takrorlanishi bir vaqtning o'zida bir nechta bog’lanmalar bo'ylab bajarilishini bildiradi. OpenMP kompilyatori iplar to'plamini yaratishi va parallel bajarish uchun do siklining iteratsiyasini ushbu iplar bo'ylab taqsimlashi kerak. Ish vaqtining bajarilishini batafsil tavsiflashdan oldin, dastlabki ketma-ket dasturdagi minimal o'zgarishlarga e'tibor bersak. Bundan tashqari, asl dastur o'zgarishsiz qoladi. OpenMP bo'lmagan kompilyator yordamida kompilyatsiya qilinganda, parallel do direktivasi shunchaki e'tiborga olinmaydi va dastur ketma-ket va to'g'ri ishlashda davom etadi.





    Download 1,16 Mb.
    1   ...   13   14   15   16   17   18   19   20   ...   27




    Download 1,16 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Ko’p yadroli protsessorlarda tbb interfeysi yordamida signallarga parallel ishlov berish jarayonlarini o’rganish mavzusida bitiruv malakaviy ishi

    Download 1,16 Mb.