Çoklu işleme

Vikipedi, özgür ansiklopedi

Git ve: kullan, ara
Columbia süperbilgisayarı çoklu işlemeye güzel bir örnektir.
Columbia süperbilgisayarı çoklu işlemeye güzel bir örnektir.

Çoklu işleme(multiprocessing) iki veya daha fazla işlemcinin biraraya getirilerek, işelenmesi gereken buyruğun daha hızlı bir şekilde işlenmesini sağlamaya yönelik bir tasarımdır. Çoklu işlemcilerin tek başına bir işlemciden daha hızlı olması beklenir. İşlemci tasarımında oluşan zorluklar çoklu işlemcileri zorunlu kılmıştır. Grace Hopper bu konu ile ilgili olarak "Eğer bir öküz işi yapamıyorusa, öküzü büyütmek yerine iki öküz kullandılar"1 demiştir.

Çoklu işlemcileri tasarlamadaki en önemli sorunlarda birisi bu işlemcilerin eşzamanlı olarak nasıl çalışacaklarını bulmaktır. Bir araya getirilen İşlemciler arasında aşağıdaki iki bağlantı vardır

  • İletişim
  • Fiziksel bağ

Konu başlıkları

[değiştir] İşlemci zamanlaması

İşlemciler bir veriyolunu ortak kullanabileceği gibi ağ üzerinden de eşzamanlı olarak çalışabilirler. Bir veriyolu üzerine işlemciler doğrudan ya da çapraz olarak bağlanabilirler. Doğru bağlama, aynı anda sadece bir işlemcinin bilgi aktarımına izin verdiği için yavaştır. Çapraz bağlama çok daha hızlı olmasına rağmen maliyeti çok daha yüksektir.

Birden fazla bilgisayar ağ yolu ile birbirlerine bağlanıp işlemcileri tek bir işlemci gibi kullanılabilir. Bu durumda işlemciler arasındaki haberleşme anuyumlu (synchronous) veya zamanuyumsuz (asynchronous) olarak yapılabilir. Anuyumlu sistemlerde bir ortak saat yardımıyla işlemler gerçekleştirilir. Zamanuyumsuz sistemlerde ise ortak bir saate gerek yoktur. Bilgiler tokalaşma ile iletilir. Zamanuyumsuz sistemler, anuyumlu sistemlere göre ne kadar hızlı olsalar da bilginin aktarımı sırasında kayıplar oluşabilir.

[değiştir] Başarım

Çok sayıda işlemciyi bir araya getirmenin başarımı ne kadar arttıracağı önemli bir sorudur. Diyelim ki H(n) n kadar işlemcinin biraraya getirilmesi sonucu oluşan hızlanmayı göstersin. Bu durumda

    H(n) = Tek bir işlemci kullanlığında işlem süresi / Çoklu işlemci kullanıldığındda işlem süresi

olarak ifade edilebilir. Bir diğer soru n işlemcinin ne kadar etkin kullanıldığıdır. E(n) etkinliği göstermek üzere

    E(n) = (H(n)/n) * %100

şeklinde olacaktır.

[değiştir] Ayrıca bakınız

Seti@home
Çok çekirdekli işlemci
SISD
SIMD
MISD
MIMD
Blue Gene

[değiştir] Dış kaynaklar(İngilizce)

Unix Programlama