A. M. Kazennov udc: 04. 42 Moskva fizika-texnika instituti (Davlat universiteti), Rossiya, 141700, Dolgoprudniy, bosh. Institut, 2010 yil sentyabrda qabul qilingan, 2010 yil 20 sentyabrda qayta ko'rib chiqilgan mavhum


- stek yo'q, shuning uchun rekursiya yo'q; -


Download 1.25 Mb.
Pdf ko'rish
bet6/11
Sana20.12.2022
Hajmi1.25 Mb.
#1035614
1   2   3   4   5   6   7   8   9   10   11
Bog'liq
crm602 (1)

- stek yo'q, shuning uchun rekursiya yo'q; - ichki
funktsiyalarda siz o'zgaruvchilarga statik spetsifikatsiyani qo'llay olmaysiz; Funktsiyalarda
argumentlarning oÿzgaruvchan soni qoÿllab-quvvatlanmaydi.
uning tarmoq ichidagi noyob identifikatori.
__host__ va __device__ spetsifikatsiyalari bir vaqtning o'zida xostda ham, qurilmada ham ishlaydigan funksiyalarni
belgilash uchun ishlatilishi mumkin (kompilyator kodning ikkala versiyasini ham o'zi yaratadi). Grafik adapterlarning
eski versiyalari uchun (Fermi'dan oldin) video kartada bajariladigan funktsiyalarga qo'shimcha cheklovlar mavjud:
KOMPYUTER TADQIQOTLARI VA SIMULATSIYA
Machine Translated by Google


O'rnatilgan o'zgaruvchilar
CUDA da yangi ma'lumotlar turlari
Yadro ishga tushirish direktivasi
2010 yil, 2-jild, ÿ3, 295–308-betlar
RW / __syncthreads()
303
__shared__ spetsifikatsiyasi umumiy xotirani belgilash uchun ishlatiladi va deklaratsiyada ishga tushirilmaydi.
Odatda, bunday xotirada har qanday operatsiyadan keyin bir xil blok ichidagi iplarni aniq sinxronlashtirishni talab
qiladi. __constant__ xotirasiga yozish faqat maxsus funksiyalar orqali amalga oshiriladi
CPU bilan.
(u)char, (u)int, (u)short, (u)long, float turlari 1-, 2-, 3-, 4 oÿlchovli vektorlar boÿlishi mumkin, longlong, double esa faqat
1- va 2 boÿlishi mumkin. - o'lchovli. Ushbu turdagi o'zgaruvchilarni yaratish uchun make_(type)(dimension) kabi funksiyalardan
foydalanishingiz kerak, masalan:
CUDA texnologiyasi asoslari
blok
CUDA-da har birida mavjud bo'lgan bir nechta maxsus o'zgaruvchilar mavjud
5-jadval. CUDA-dagi o'zgaruvchilar spetsifikatsiyalari
R
tipidagi qurilmaga kirish
uchun mavjud __constant__
qurilma qurilmasi va xost
• O'zgaruvchilar spetsifikatsiyalari
Tuzilmalar yoki birlashmalar sohalariga hech qanday spetsifikatsiya qo'llanilishi mumkin emas.
hisoblash yadrosi. Ushbu o'zgaruvchilar bir ipni boshqasidan ajratishga imkon beradi:
dim3 gridDim - yadro ishga tushirilganda grid konfiguratsiyasi haqida ma'lumotni o'z ichiga oladi, uint3 blockIdx - to'r
ichidagi joriy blokning koordinatalari, dim3 blockDim - yadro ishga tushirilganda blok hajmi, uint3 threadIdx - blok ichidagi
joriy ipning koordinatalari, int warpSize - warp hajmi (hozirda har doim 32 ga teng).
ma'lumotlarga.
va unga argumentlar o'tkazish.
R/W
Spesifikator __device__ qurilmasida topildi
Nusxa olish va kirish qulayligi uchun CUDA-ga bir nechta vektor turlari qo'shildi
Yadroni ishga tushirish uchun yadroni ishga tushirish parametrlarini o'rnatish uchun maxsus direktivalar qo'llaniladi.
__ umumiy __ qurilma
int2 a = make_int2 (1, 2); float4 b = make_float4 (1,
2, 3, 4); Komponentlar bo'yicha operatsiyalar CUDA Toolkit versiyasi
> 3.0 da barcha turlar uchun belgilangan. Oddiy konstruktorga ega uint3 asosidagi maxsus turdagi dim3 ham
mavjud. Ushbu konstruktor vektorning barcha komponentlarini belgilashga imkon beradi (etishmayotgan komponentlar

Download 1.25 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   11




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