Çok çekirdekli proc ve multiproc sistemi arasındaki fark nedir?


18

Bir çift çekirdekli bilgisayar ve anne gemide 2 işlemciye sahip bir bilgisayar arasındaki fark ne var merak .. ben ilişkin 's şey düşünmek parçacığı ama ben çok iyi anlamıyorum ..

Yanıtlar:


19

Birden çok işlemci, bilgisayarınızın aynı anda iki şeyi yapmasına izin verir (aynı anda iki şeyi yapmak yerine, aslında görevler arasında son derece hızlı bir şekilde geçiş yapmak yerine).

Birden çok çekirdek aynıdır. Birden çok işlemciye göre birden çok çekirdeğin avantajı, CPU'nun bazı bitlerini, örneğin ikinci düzey önbelleği paylaşmalarıdır; Bu onları üretmeyi çok daha ucuz hale getirir. Tek bir çift çekirdekli CPU, iki tek çekirdekli CPU'dan daha az yer kaplıyor, bu da bugünlerde herkes dizüstü bilgisayarlara taşınırken önemli bir faktör.

Bazı performans farklılıkları olabilir, ancak fark edeceğiniz hiçbir şey yoktur.


2
Sadece daha az yer kaplamakla kalmaz, aynı zamanda daha az ısı üretir (daha az güç kullanarak) ve sadece bir soğutma fanı gerektirir.
CarlF

13

Çoklu İşlemci, Hiper Dişli ve Çok Çekirdekli arasındaki farkı gösteren bu resme bakın:

resim açıklamasını buraya girin



2

Şey, dikey yerine yatay olarak ölçeklendirmekle ilgili. Eskiden CPU'ları daha hızlı ve daha hızlı hale getiriyorlardı. Zamanla CPU'ların hızı sadece bir avuç megahertz'den 3 gigahertz'e kadar süper hızlara yükseldi. Bununla birlikte, 3 gigahertz hızına ulaşıldığında CPU üreticileri, hızı tek bir CPU çekirdeğinde ne kadar zorlayabilecekleri konusunda bir sınır bulmuşlardır.

Bu hız yarışı gerçekleşirken, daha fazla güce ihtiyaç duyan uygulamalar için (sunucular ve CGI render çiftlikleri gibi), tanıtılan çok soketli CPU anakartlar. Bu, anakarta birden fazla CPU (genellikle iki) yerleştirilmesine izin verdi. Birden fazla CPU'yu aynı anda kullanabilen işletim sistemleri, bu iki CPU'ya yük dağıtarak bu özellikten yararlanan yazılımı çalıştırabilir ve böylece yürütme hızını artırabilir.

Günümüze hızlı ileri. CPU hız sınırına biraz ulaşıldı ve dikey ölçeklendirme (daha hızlı hale getirme) yerine, CPU üreticileri tek bir yongaya birden fazla çekirdek yerleştirerek yatay olarak ölçeklenmeye başlıyor. Şu anda çift çekirdekli çipler çok yaygın ve yakında dört çekirdekli standart olacak. Şimdi tek bir anakarta iki adet dörtlü çekirdek yerleştirdiğinizi düşünün. Bu, işletim sisteminin yaklaşık 3 gigahertz'de çalışan 8 CPU'ya erişeceği anlamına gelir.

Çok çekirdekli işlemcilerin yanı sıra, 'hiper iş parçacığı' olarak bilinen bir teknolojiyi kullanan 'sahte' çift çekirdekli bir işlemci de vardır. Hiper iş parçacığı ile CPU, gerçekte sadece bir gerçek çekirdek olduğunda iki CPU'nun varlığını taklit eder. CPU, talimatları belirli bir şekilde planlayarak normalde kapalı kalma süresini nasıl kullanacağını bilir ve daha fazla verimlilik elde eder.


3
-1: Bu cevapta birçok yanlışlık var. (1) 3 GHz bir "hız sınırı" değildir, 3 GHz'den daha yüksek frekanslarda çalışan işlemciler vardır. CPU üreticisinin karşılaştığı sınır, sürdürülebilir bir güç zarfı içinde daha yüksek performanslı işlemciler kullanmaktı. (2) İkinci paragrafınız, "hız sınırına" ulaşıldığı için çoklu CPU anakartlarının tanıtıldığını gösterir. Aslında, çok soketli anakartlar yaklaşık 5-10 yıl önceydi (belki daha da uzun, PC sunucularının çok çekirdekli olduğu kesin bir tarih bulamıyorum).
hanleyp

% 100 doğru olmadığını biliyorum ve cevabımı layman'ın şartlarında tutmaya çalıştım. Bu sadece aptalca bir versiyon, bu yüzden insanlar farkın ne olduğunu anlıyorlar. Eminim insanlar gerçekten giriş ve çıkışları bilmek istediklerinde kendileri için daha fazla araştırma yapacaklardır. Paragraf 2, "Bu arada" ile başlar, yani CPU'nun daha hızlı oluşturulduğu yerlerde (yaklaşık 10 yıl önce) çok soketli CPU anakartlar.
Luke

Çok havalı. Sadece açıklığa ihtiyaç duyduğumu düşündüğümü belirtmek istedim. Oyumu geri alacağım, ancak cevabı bir şekilde düzenlemedikçe yapamam.
hanleyp

Değişiklik yaptığım için mutluyum ama tam olarak ne değiştirmemi istiyorsun? 3.2 gigahertz veya belki biraz daha yüksek CPU'lar olduğunu? Lütfen açıklar mısın?
Luke

2
-1: Neden çok çekirdekli sistemleri gördüğümüzü açıklıyorsunuz, ancak soru soran bu değil. Çoklu çekirdekler ve çoklu işlemciler arasındaki farkı açıklamadınız.
John Fouhy

1

Yazılım geliştirme açısından nispeten az fark vardır.

Bazı yanlış yazılmış çok iş parçacıklı uygulamalar yanlışlıkla çok çekirdekli bir işlemcide çalışabilir, ancak çok işlemcili bir anakartta çalışmayabilir, ancak bunun üzerinde çok fazla uyku kaybetmeyeceğim, çünkü ... şey ... yanlış konuşuyoruz yazılı yazılım.

Aynı toplam kullanılabilir çekirdek sayısı için iki senaryo arasındaki temel fark (örneğin, 1x 4 çekirdekli işlemci ile 2x 2 çekirdekli işlemciye karşı), çok işlemcili senaryo durumunda, genellikle daha büyük bir toplu bellek olması -Bant genişliği. Bu, bellek yoğun olan herhangi bir iş yükü için ikincisiyle daha iyi olabileceğiniz anlamına gelir. Bununla birlikte, kilitlenme ilkellerinin aslında biraz daha yavaş olabileceğini (donanım uygulamasına bağlı olarak) unutmayın, bu nedenle çok fazla senkronizasyon kullanan algoritmalar, ikincisinde daha kötü performans gösterebilir.

Öyle olsa bile, o zaman bile fark hakkında çok fazla endişelenmeyeceğim, çünkü bu farkın önemli olduğu bir alanda çalışıyorsanız, muhtemelen bunu zaten biliyorsunuzdur (alana özgü bilgi).

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.