Junior
Paralelizm nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Parallelizm (Parallelism) — bu bir vəzifənin və ya onun hissələrinin eyni vaxtda yerinə yetirilməsidir, adətən çox nüvəli prosessorlar və ya ayrı hesablama cihazlarından istifadə etməklə. Məqsəd — proqramın ümumi icra vaxtını azaltmaqdır.
.NET-də parallelizmi həyata keçirmək üçün istifadə olunur:
- Task Parallel Library (TPL): yüksək səviyyəli kitabxana, paralel əməliyyatlar üçün.
- Parallel LINQ (PLINQ): LINQ sorğularının paralelləşdirilməsi.
- İşləri əl ilə idarə etmək (Threads): aşağı səviyyəli nəzarət, threadlərin yaradılması və idarə olunması.
TPL-dən istifadə nümunəsi:
// Sadə paralel dövr nümunəsi
Parallel.For(0, 1000, i =>
{
// hər i üçün paralel əməliyyat yerinə yetiririk
Console.WriteLine($"İterasiya {i} və thread {Thread.CurrentThread.ManagedThreadId}");
Thread.Sleep(10); // işin simulyasiyası
});
Əsas fərqlər çox iş parçacığı ilə (Concurrency) müqayisədə:
| Parametr | Parallelizm (Parallelism) | Çox iş parçacığı (Concurrency) |
|---|---|---|
| Məqsəd | Eyni zamanda işləyən işləri sürətləndirmək | Bir neçə vəzifəni idarə etmək, onlar eyni vaxtda (və ya yox) işləyə bilər |
| Tələblər | Bir neçə nüvə (və ya cihazlar) üçün həqiqi parallelizm | Bir çox iş parçacığı, ki, bir nüvədə keçid edə bilər |
| Diqqət | Bir vəzifəni daha sürətli yerinə yetirmək (bölərək) | Bir neçə müstəqil vəzifənin idarə olunması və koordinasiyası |
Parallelizm xüsusilə yüksək hesablama yükü olan (CPU-bound) vəzifələr üçün effektivdir, onlar müstəqil alt vəzifələrə bölünə bilər.