Ўзбекистон республикаси ахборот технологиялари ва коммуникацияларини ривожлантириш вазирлиги муҳаммад ал-хоразмий номидаги


CPU VA GPU DA KUBIK SPLAYNNI HISOBLASH JARAYONLARINI



Download 4,05 Mb.
Pdf ko'rish
bet8/87
Sana28.05.2022
Hajmi4,05 Mb.
#614253
1   ...   4   5   6   7   8   9   10   11   ...   87
Bog'liq
28-29-aprel

 
CPU VA GPU DA KUBIK SPLAYNNI HISOBLASH JARAYONLARINI 
PARALLELLASHTIRISH 
O.U. Mallayev
(
dotsent, Muhammad al-Xorazmiy nomidagi TATU

A.H.Madrahimov (assistant, Muhammad al-Xorazmiy nomidagi TATU) 
Kengaytirilgan to‘rga berilgan: 
.
...
...
...
:
3
1
0
2
3












n
n
n
x
x
x
x
x
x

Normallashtirilgan asosiy funksiyalar 
,
1
,
,...,
0
,
1
),
(



n
n
i
x
B
i
bu yerda 
i
x

tashuvchining markazi hisoblanadi. Ushbu funksiyalar defekti 1 ga teng bo‘lgan 
splaynni yartishni hisobga olib, ushbu to‘plamdagi S(x) splaynni quyidagicha 
ko‘rsatish mumkin: 


23 
,
)
(
)
(
1
1





n
i
i
i
x
B
b
x
S
(1) 
bu yerda B
i
- aniqlanilishi kerak bo‘lgan koeffitsiyentlardir. Masalan, qo‘shimcha 
shartlar uchun (1) interpolyatsion splayn koeffitsiyentlarini aniqlash uchun 
tenglamalar tizimi quyidagi shaklga ega bo‘ladi: 

































.
1
1
1
1
1
1
1
1
0
0
1
1
0
0
0
0
1
1
)
(
)
(
)
(
,
,
0
,
)
(
)
(
)
(
,
)
(
)
(
)
(
n
n
n
n
n
n
n
n
n
n
i
i
i
i
i
i
i
i
i
i
f
x
B
b
x
B
b
x
B
b
n
i
f
x
B
b
x
B
b
x
B
b
f
x
B
b
x
B
b
x
B
b
(2) 
1

i
b
va 
1

n
b
istisno qilinganidan keyin, bunday sistema progonka usuliga ruxsat beradi. 
Agar 

,
3
.
2
2
/
)
13
1
(
max
1





j
i
j
i
h
h
bo‘lsa bu matritsaning diagonal ustunli holatiga mos 
keladi. 
)
,
(
1


i
i
x
x
x
uchun 
)
(
x
B
i
ni hisoblashda quyida formuladan foydalaniladi: 




.
/
)
(
],
1
,
0
[
,
,
6
1
)
(
,
)
1
(
3
3
1
6
1
)
(
,
)
1
(
3
)
1
(
3
1
6
1
)
(
,
)
1
(
6
1
)
(
3
2
2
1
2
3
1
n
a
b
h
t
h
x
x
t
t
x
B
t
t
t
x
B
t
t
t
x
B
t
x
B
i
i
i
i
i




















E’tibor bering, B-funksiya (2) orqali splaynni tasvirlash n ning katta qiymatlari 
uchun qulay. Uni hisoblash uchun ma’lumotlar ikkita massivda saqlanishini talab 
qiladi (x
i
tugun va b
i
koeffitsiyetnlar). Boshqa tomondan, (2) da koeffitsiyentlardan 
birining o‘zgarishi S(x) ning o‘zgarishini faqat mos keladigan B-funksiyani qo‘llab-
quvvatlanilishini anglatadi. Bu esa splaynni lokal ravishda o‘zgartirish uchun 
ishlatilishi mumkin.
Vujudga 
kelayotgan 
muammolarning katta qismi katta o‘lchamdagi 
matritsalarning xususiy qiymatlarini topish bilan bog‘liq. 
]
[
ij
A
a
n
i

- haqiqiy 
nosimmetrik matritsa bo‘lsin. Keyin, Gershgorin teoremasidan foydalanib, ushbu 
matritsaning barcha haqiqiy elementlari λi bo‘lgan [a,b] oraliqni aniqlash mumkin. 
Agar biz [a,b] ga bitta ω to‘r kiritilsa va unga to‘r vazifasi beriladi. 
,
,
0
,
/
)
(
,
),
det(
n
i
n
a
b
h
h
i
a
E
A
f
i
i
i










So‘ngra spalyn usuli bilan koeffitsiyentlarni aniqlash muammosi, ω to‘rning har 
bir intervalida kubik spalynni ildizlarni topishgacha kamayadi. Protsessor elementlari 
soni bo‘yicha tarmoq domenining dekompozitsiyasidan foydalanib, M
i
va f
i
mos 
keladigan qiymatlarini yuklanganidan so‘ng kubik tenglamalarning ildizlarini tahlil 
qilish parallel rejimda bajarilishi mumkin. Hisob-kitoblarni boshqarish uchun siz 
ma’lum munosabatlardan foydalanishingiz mumkin. 
.
)
det(
,
)
(
1
1
1










n
i
i
n
i
i
n
i
j
i
A
a
A
Sp




24 
Shuni esda tutingki, kubik splayndan foydalanib, tenglamaning haqiqiy 
ildizlarini aniqlashda h har bir oraliqda uchta ildizdan ko‘p bo‘lmasligi uchun h 
to‘rning qadamini tanlash kerak. Kubik splayn koeffitsiyentlarini hisoblash 
jarayonlarini bosqichlarga ajratib olinganidan keyin parallellashtirish shartlariga 
to‘g‘ri keladigan bosqichlarni ko‘p protsessorli tizimlarda amalga oshiriladi. 
Hisoblash jarayonlarini GPU da dasturlash uchun NVIDIA video chiplarining 
asosiy tashkil topuvchilari xususiyatlarini o’rganish talab etiladi. Videokartadagi 
barcha ko'rsatmalar SIMD printsipiga binoan bajariladi, agar bitta yo'riqnomaning 
barcha oqimlariga bitta qo'llanma qo'llanilsa (CUDA-da bu 32 ta oqimdan iborat 
guruh - ko'p protsessorlar tomonidan qayta ishlangan ma'lumotlarning minimal 
miqdori).
Dasturni bajarishda markaziy protsessor kodning qismlarini, GPU esa eng og'ir 
parallel hisoblashlar bilan CUDA kodini bajaradi. GPUga ajratilgan ushbu qism 
yadro deb nomlanadi. Yadro ma'lumotlar ustida bajariladigan operatsiyalarni 
belgilaydi. CUDA parallel hisoblash modelidan foydalanadi, bu yerda har bir SIMD 
protsessor parallel ravishda har xil ma'lumotlar elementlari bo'yicha bir xil 
ko'rsatmalarni bajaradi. GPU - bu o'z xotirasiga ega bo'lgan va ko'p sonli oqimlarni 
parallel ravishda qayta ishlaydigan markaziy protsessor uchun hisoblash qurilmasidir. 
Yadro GPU uchun funktsiya bo'lib, u oqimlar tomonidan bajariladi. Video chip 
protsessordan farq qiladi, chunki u bir vaqtning o'zida yuz minglab oqimlarni qayta 
ishlay oladi, bu odatda yaxshi parallel bo'lgan grafikalar uchun mo'ljallangan. CUDA 
dasturlash modeli oqimlarni guruhlashni o'z ichiga oladi. Oqimlar oqim bloklariga 
birlashtiriladi - umumiy xotira va sinxronizatsiya nuqtalari yordamida o'zaro ta'sir 
o'tkazadigan oqimlarning bir o'lchovli yoki ikki o'lchovli katakchalaridir. Dastur 
(yadro) oqim bloklarida ishlaydi. Bir vaqtning o'zida bitta mashina bajariladi. Har bir 
blok bir, ikki yoki uch o'lchovli shaklda bo'lishi mumkin va joriy apparatda 512 ta 
oqim bo'lishi mumkin. 
Video chip tomonidan bajariladigan funktsiyalar quyidagi cheklovlarga ega: 
rekursiya yo'q, funktsiyalar ichida statik o'zgaruvchilar va o'zgaruvchan sonli 
argumentlar mavjud emas. Xotirani boshqarishning ikkita turi qo'llab-quvvatlanadi: 
32-bitli ko'rsatgichlar bilan kiradigan chiziqli xotira va faqat fakturalarni olish 
funktsiyalari orqali kirish huquqiga ega CUDA-massivlari. 
CUDA dasturlari grafik API bilan o'zaro aloqada bo'lishi mumkin: dasturda 
hosil bo'lgan ma'lumotlarni ko'rsatish, natijalarni o'qish va ularni CUDA vositalari 
yordamida qayta ishlash uchun (masalan, keyingi ishlov berish filtrlarini amalga 
oshirishda). Buning uchun grafik API resurslarini CUDA global xotira maydoniga 
(resurs manzilini olish bilan) solishtirish mumkin. 
Nvidia tomonidan CUDA video chiplarini hisoblash uchun taqdim etilgan 
apparat va dasturiy ta'minot arxitekturasi yuqori parallellik bilan juda ko'p vazifalarni 
hal qilish uchun juda mos keladi. CUDA juda ko'p sonli Nvidia GPU-larida ishlaydi 
va GPU dasturlash modelini ancha soddalashtirish va umumiy xotira, oqimlarni 
sinxronizatsiya qilish va butun sonli operatsiyalar kabi qo'shimcha funktsiyalarni 
qo'shish orqali yaxshilaydi. CUDA har bir dasturiy ta'minot ishlab chiqaruvchisi 


25 
uchun mavjud bo'lgan texnologiyadir va uni har qanday C dasturchisi ishlatishi 
mumkin. Parallel hisoblashga xos bo'lgan boshqa dasturlash paradigmasiga o'rganish 
zarur. Ammo agar algoritm, asosan, yaxshi parallellashtirilgan bo'lsa, u holda CUDA-
da dasturlash uchun sarflangan vaqt va o'rganish ko'p marta qaytib keladi. 
Ehtimol, dunyoda videokartalardan keng foydalanilganligi sababli, GPU-da 
parallel hisoblash rivojlanishi yuqori samarali hisoblash sanoatiga katta ta'sir 
ko'rsatishi mumkin. Ushbu imkoniyatlar allaqachon emas, balki ilmiy doiralarda ham 
katta qiziqish uyg'otdi. Umumjahon protsessorlar juda sekin rivojlanmoqda, ular 
bunday ishlash pog'onalariga ega emaslar.
Ko'plab hisoblashlarning kelajagi parallel algoritmlarda aniq; deyarli barcha 
yangi yechimlar va tashabbuslar shu yo'nalishga yo'naltirilgan. Ammo hozircha yangi 
paradigmalarning rivojlanishi dastlabki bosqichda, siz qo'lda ish zarrachalarini 
yaratishingiz va xotiraga kirishni rejalashtirishingiz kerak, bu odatiy dasturlash bilan 
taqqoslaganda vazifalarni murakkablashtiradi. Ammo CUDA texnologiyasi to'g'ri 
yo'nalishda qadam tashladi va unda muvaffaqiyatli yechim aniq ko'rinib turibdi. 
Ammo, albatta, GPU protsessorlarning o'rnini bosa olmaydi.
Hozirgi shaklida ular bunga mo'ljallanmagan. Endi video-mikrosxemalar asta-
sekin protsessor tomon siljiydi va tobora ko'proq universal (bir va ikki aniqlikdagi 
suzuvchi nuqta hisob-kitoblari, butun sonli hisob-kitoblar), shuning uchun 
protsessorlar tobora ko'proq "parallel" bo'lib, ko'p sonli yadrolarni, multithread 
texnologiyalarini, bloklar SIMD va heterojen protsessor loyihalari ko'rinishi haqida 
gapirmasa ham bo'ladi. Ehtimol, GPU va protsessor kelajakda shunchaki birlashadi.
Ma'lumki, ko'plab kompaniyalar, shu jumladan Intel va AMD ham shu kabi 
loyihalar ustida ishlamoqda.
CUDA ning bir nechta kamchiliklaridan biri bu portativlikdir. Ushbu arxitektura 
faqat ushbu kompaniyaning video chiplarida balki Geforce 8 va 9 seriyalari va 
tegishli Quadro va Tesla-dan boshlab foydalaniladi.
Texnologiyalarning qaysi biri g'olib chiqadi, boshqalarga qaraganda keng 
tarqaladi va uzoqroq umr ko'radi - buni vaqt ko'rsatadi. Ammo CUDA yaxshi 
imkoniyatlarga ega, chunki, masalan, Stream Computing bilan taqqoslaganda, u 
odatdagi C tilida yanada rivojlangan va foydalanishda qulay dasturlash muhitini aks 
ettiradi. Ehtimol, uchinchi tomon ba'zi bir umumiy yechimlarni berish orqali ta'rifga 
yordam berishi mumkin. CUDA va GPU da hisoblash jarayonlarini parallellashtirish 
natijalari 1- jadvalda keltirilgan.
Hisoblash jarayonlarini parallellellashtirish natijalari 1- jadval 
Kirish signali 
namunalari soni - N 
CUDA 
(sek.) 
GPU 
(sek.) 
8192 = 2
10
0,2 x10
-3
0, 1 x10
-3
32768 = 2
15
0,4 x10
-3
0,082 x10
-3
1048576 = 2
20
4,4 x10
-3
2,5 x10
-3
33554432 = 2
25
7,48 x10
-3
2, 2 x10
-3
1- jadvalda keltirilgan natijalariga asosan kiruvchi signal qiymatlar soni 2
10
da 
hisoblash jarayonlarini CPU da amalga oshirishsh uchun 0.2x10
-3
sekund, GPU da 


26 
parallel hisoblash uchun 0.1x10
-3
sekund sarflandi. Natijada CPU dan GPU ni 
hisoblash teligi 1.5 barabar tez bo’ldi. Kirish signali namunalarining soni ko‘payishi 
bilan, CPU ga nisbatan GPU da tez bajarildi. 
Demak defekti 1 ga teng bo‘lgan kubik splaynni hisoblash jarayonlarini parallel-
lashtirish CPU va GPU uchun 

to‘rning har bir o‘ralig‘ida lokal kubik spalyn 
qurishga olib keladi. Agar standart shartlar bajarilmasa, splayn koeffitsiyentlarini 
boshqa parallellashtirish usullari bilan yechish ham mumkin. 
Foydalanilgan adabiyotlar 
1.
H.N. Zaynidinov, O.U. Mallayev. Definition of synchronization processes during parallel signal processing in 
multicore processors // International Conference on Information Science and Communications Technologies: 
Applications, Trends and Opportunities, ICISCT 2019 (2019). 
2.
H.N. Zaynidinov, O.U Mallaev and B.B. Anvarjonov. A parallel algorithm for finding the human face in the 
image // IOP Conf. Series: Materials Science and Engineering, 862 Volume-5, May 2020, 052004,
3.
H.N. Zaynidinov, O.U. Mallayev, I. Yusupov. Cubic Basic Splines and Parallel Algorithms // Intern ational 
Journal of Advanced Trends in Computer Science and Engineering (IJATCSE), (Indexed by SCOPUS), ISSN: 2278-
3091, 9(3), May – June 2020, 3957-3960 Available Online at
4.
Исраилов М.И., Бахромов С.А. Об одном локальном интерполяционном кубическом сплайне и 
некоторые его приложения // Тезисы докладов III семинара - совещания Кубатурные формулы и их 
приложения. Уфа - Красноярск, 1995 г. - С.17. (9-13 октябрь, 1995 г.) 
5.
Hakimjon Zaynidinov, Madhusudan Singh, Dhananjay Singh Polynomial Splines for Digital Signal and 
Systems (Монография на англиском языке). LAMBERT Academic publishing, Germany, 2016 year, 208 p. 
6.
Bouaziz R. et al. Efficient parallel multi-objective optimization for real-time systems software design 
exploration /Proceedings of the 27th International Symposium on Rapid System Prototyping - RSP’16.2016.P. 58–64. 
7.
Бурцев А.П. Параллельная обработка данных сейсморазведки с использованием расширенной модели 
Master-Slave // Суперкомпьютерные дни в России: Труды международной конференции (26-27 сентября 2016 
г., г. Москва). М.: Изд-во МГУ, 2016. С. 887-895. 
8.
Kostenetskiy P.S., Safonov A.Y. SUSU Supercomputer Resources // Proceedings of the 10th Annual 
International Scientific Conference on Parallel Computing Technologies (PCT 2016). CEUR Workshop Proceedings. 
Vol. 1576. 2016. P. 561–573.

Download 4,05 Mb.

Do'stlaringiz bilan baham:
1   ...   4   5   6   7   8   9   10   11   ...   87




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish