KOMPYUTER TADQIQOTLARI VA MODELLASHTIRISH
Algoritmlar va dasturlarni parallelizatsiyalashga kirish
237
tegishli pragmlardan foydalangan holda yuqori darajadagi tilda grammlash.
Birinchi submodel yaxshi taşınabilirliğe
ega, ijro etilishi ustidan to'liq nazorat qiladi,lekin juda qattiq. Dasturlash uchun ikkinchi kichik model, ammo
muammoni hal qilishni to'liq nazorat qilish imkonini bermaydi.
* Modelsiz ma'lumotlar. Dastur Pro to'plamlaridan iborat deb taxmin qiladi-
CESS yoki thread'ov, ularning har biri o'z ma'lumot to'plami bilan ishlaydi
, ish paytida ma'lumot almashish yo'q. Cheklangan vazifa sinfiga nisbatan qo'llaniladi.
7. Dasturni yozish, algoritmni amalga oshirish, tanlangan dasturlash modelida
va tanlangan algoritmik tilda.
8. Ko'rish (xaritalash). Parallel kompyuter tizimida dasturni ishga tushirganingizda
dasturiy paradigmaning oldingi bosqichlarida paydo bo'lgan virtual ijrochilar, haqiqiy jismoniy qurilmalar bilan taqqoslash kerak.
Tanlangan dasturiy modelga qarab, bu
hisoblash tajribasini va operatsion tizimni boshqaradigan shaxs sifatida amalga oshirilishi mumkin.
Keyingi bo'limlarda biz ajralish bosqichini o'rganishga e'tibor qaratamiz. Lekin
algoritm dekompozirovat oldin, siz tanlagan algoritm samarali yoki yo'qligini, bu, albatta, kerak yoki yo'qligini tushunish kerak
.
Algoritmlarni asimptotik tahlil qilish va parallellashtirish
Matematik simulyatsiyaning ko'plab muammolari uchun siz shakllantirishingiz mumkin
tasodifiy muammoni hal qiluvchi algoritmlar. Albatta, nutq to'g'ri ishlaydigan
algoritmlardan mahrum bo'ladi, ya'ni. juda keng kirish ma'lumotlarida to'g'ri natija beradiganlar haqida
. Biz kelajakda ular bilan shug'ullanamiz, shuning
uchun to'g'rilik bilan bog'liq masalalar bizning e'tiborimizdan tashqarida qoladi.
Tanlangan algoritm uni amalga oshirish uchun "etarlicha yaxshi"
yoki boshqa biror narsa izlashni xohlaysizmi? Odatda, ko'pgina haqiqiy topshiriqlarda
kirish miqdori bilan bog'liq ba'zi o'lchov parametrlari mavjud. Misol
uchun, axborot qator saralash vazifalari, bu parametr boshlang'ich
qator hajmi hisoblanadi. O'lchov parametrlarini raqamli modellashtirish muammolari hisob-kitob tarmog'ining o'lchamlari hisoblanadi
. Misol uchun, bir qator asarlarda [Miller, Boxer, 2006] kiritilgan nomning o'rniga
"o'lchov parametrlari" atamasidan foydalanish odatiy holdir, lekin mening nuqtai nazarimga ko'ra, bu butunlay
to'g'ri emas. Hisoblash tajribasida "o'lchov" atamasi odatda
mustaqil o'zgaruvchilar soni bilan bog'liq. Biz qochishga harakat qilamiz bir vaqtning o'zida ahamiyatga ega.
Vazifa miqyosi parametrlari turli algoritmlarning ishlash vaqtiga va
ularni samarali amalga oshirish uchun zarur bo'lgan resurslar hajmiga (xotira, ijrochilar soni va
boshqalar) ta'sir qiladi. Zamonaviy hisoblash komplekslari uchun (har doim ham bo'lmasa ham)
algoritmni bajarish vaqti aniq. Bu qanchalik kichik bo'lsa, foydalanuvchi uchun yaxshiroqdir.
Quyidagi belgilarni kiriting. Agar vazifa bitta o'lchov parametriga ega bo'lsa
n, qo'rg'oshin vaqt
algoritm quyidagicha yoziladi:
T
A
(n). Bir nechta o'lchov parametrlari uchun n
1
, . . . ,
n
k
muvofiq-
yuschee belgisi bo'ladi
T
A
(n
1
, . . . , n
k
) yoki T (n).
Quyidagi shartlarga muvofiq o'lchov parametrlarining bir xil qiymatlarida
(oddiylik uchun biz bitta parametrga ega deb hisoblaymiz) ish vaqti bo'yicha turli xil algoritmlarni taqqoslaymiz.
1. Baholash
T
(n) bo'lishi mumkin emas muayyan hisoblash tizimiga bog'liq. Agar uchun
algoritm a qiymati ma'lum
T
A
(n) bitta kompyuter uchun, keyin algoritm uchun o'lchash
B vaqti
T
B
(n) boshqa tizimda,
a va B ning qiyosiy samaradorligi haqida hech narsa aytilmaydi. shu tarzda olingan baholashlar
kompyuter komplekslarining kamchiliklari yoki afzalliklari haqida dalolat beradi va ular bo'yicha amalga oshirilmaydi-
Do'stlaringiz bilan baham: |