8. openmp asosida parallel dasturlash


Dastur profilini yaratish. Xotira ierarxiyasi


Download 48.95 Kb.
bet14/14
Sana19.04.2023
Hajmi48.95 Kb.
#1365571
1   ...   6   7   8   9   10   11   12   13   14
Bog'liq
openmself

Dastur profilini yaratish. Xotira ierarxiyasi. Ko'pgina hisoblash tizimlarida quyidagi xotira ierarxiyasi mavjud:
1. registrlar
2. birinchi darajali kesh
3. ikkinchi darajali kesh
4. mahalliy xotira
5.uzoq xotira (masalan, boshqa klaster tugunining xotirasi yoki qattiq disk)
Bunday holda, ro'yxat qanchalik past bo'lsa, mos keladigan xotiradan ma'lumotlarni olish uchun shuncha ko'proq vaqt kerak bo'ladi.
Shuning uchun optimallashtirish uchun mahalliy xotira va keshdan samaraliroq foydalanish va masofaviy xotiraga kirishni minimallashtirish kerak. Buni amalga oshirish uchun biz xotirada ma'lumotlarni joylashtirishga harakat qilishimiz kerak, shunda ular minimal miqdordagi qayta yozish yoki keshda qayta yozilmaydi. Bular. massiv elementlariga xotirada saqlanadigan tartibda kirish kerak. Shunday qilib, C / C ++ da ko'p o'lchovli massivlar bilan ishlashda elementlarga eng tez kirish eng o'ngdagi indeks (yozuv bo'yicha), Fortranda esa chap tomonda bo'ladi. Ba'zida xotiradan foydalanishni optimallashtirish uchun ichki o'rnatilgan tsikllarni almashtirish kerak bo'ladi.
for(j=1; j for(i=1; i i++)
B[i][j] = (A[i][j-1] + A[i][j+1] + A[i-1][j] + A[i-1][j])/4.0;
for(i=1; i for(j=1; j j++)
B[i][j] = (A[i][j-1] + A[i][j+1] + A[i-1][j] + A[i-1][j])/4.0;







Download 48.95 Kb.

Do'stlaringiz bilan baham:
1   ...   6   7   8   9   10   11   12   13   14




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