Laboratoriya ishi №1 C++ dasturlash tilining ppl kutubxonasi bilan tanishish va uning yordamida parallel dasturlar tuzush



Yüklə 15,76 Kb.
səhifə2/4
tarix19.12.2023
ölçüsü15,76 Kb.
#184562
1   2   3   4
Laboratoriya ishi №1 C dasturlash tilining ppl kutubxonasi bil-fayllar.org

Parallel_for algoritmi. Parallel_for algoritmi parallel ravishda bir xil
vazifani bajaradi. Ushbu vazifalarning har biri iteratsiya qiymati bilan 
parametrlangan. Ushbu algoritm sizga iteratsiyalari o'rtasida resurslarni
taqsimlamaydigan masalalarni parallel yechishda yordam beradi. 
Parallel_for algoritmi parallel bajarish uchun optimal tarzda ishlaydi. 

Parallel_for algoritmi ichki parallelizmni ham qo'llab-quvvatlaydi. Ya’ni har bir


itaratsiyada parallel bajaraliadigan bir nechta masalalarni bajarishimiz mumkin. 

Ichki iteratsiyalar oxirida olingan natijalar yuqorida turgan iteratsiya bajariladigan


vazifaga natijalarni uzatadi.
Parallel_for algoritmining bir nechta parametrlari mavjud. Birinchi 

parametrlari boshlang'ich qiymatini, yakuniy qiymatini va ish funktsiyasini


(lambda ifodasi, funktsiya obyekti yoki funktsiyani ko'rsatuvchi) oladi.
Parallel_for algoritmi o'zboshimchalik bilan bekor qilish shartlarini qo'llab-
quvvatlamaydi. Parallel_for algoritmi iteratsiya o'zgaruvchining joriy qiymati 
oxirgi qiymatdan pastroq bo'lganda to'xtaydi. Ya’ni barcha iteratsiyalar to’liq
bajariladi. Sikl iteratsiyasi oldinga qarab bo'lishi kerak. Parallel_for algoritmi stst 
:: invalid_argument turidagi istisnolardan foydalanadi, agar _Step parametri 1 dan
kichik bo'lsa. PPL ko’p yadroli dasturlash uchun funktsiyalarni ta'minlovchi 
mahalliy C ++ dasturchilari tomonidan ishlab chiqilgan Microsoft kutubxonasi. U
Visual Studio ning 2010-yilgi dasturiga kiritilgan. C ++ standart kutubxonasiga 
o'xshash va Visual Studio 2010 bilan tanishtirilgan C ++ 11 til funktsiyasi bilan
ishlaydi. 

Quyidagi misolda esa parallel_for algoritmining asosiy tuzilishi


ko'rsatilgan. Ushbu misol konsolga parallel ravishda [1, 5] oralig'idagi har bir 
qiymatni yozishga imkon beradi.


1.1-rasm. parallel_for operatordan foydalanish 

#include

#include

#include


#include


using

namespace
concurrency;
using

namespace


std

;
int

wmain

()
{


parallel_for(1, 6, [](

int
value) { 


wstringstream ss;
ss << value << L' 
';
wcout << ss.str(); 

};
}





Yüklə 15,76 Kb.

Dostları ilə paylaş:
1   2   3   4




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin