Sobes.tech
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.