Tek Dişli Qaud Core vs Hyper-Threading Dual Core [çift]


10

Bu sorunun burada zaten bir cevabı var:

Diyelim ki iki işlemcimiz var, Biri 4 Çekirdekli Dört Çekirdekli 3.2 Ghz ve Her Çekirdekte 2 Çekirdekli İki Çekirdekli 3.2 Çekirdekli (Hyper-Threading). Bir programcı olarak benim varsayım, 4 çekirdekli 4 iş parçacığının 2 çekirdekten daha hızlı çalışması gerekir çünkü ikinci işlemcinin 4 çekirdeği taklit etmek için dişler arasında geçiş yapması gerekirken, ilk işlemcinin her biri gibi bir geçiş yapması gerekmiyor çekirdek bağımsız ve ayrı ayrı gerçekleştirebilir.

Varsayımımın doğru olduğunu onaylamak istiyorum, lütfen birinin neden diğerinden daha iyi olduğunu açıklamayın.


3
Olumsuz oy, çünkü kısa bir Google araması (Wikipedia) cevap verecektir.
Werner Henze

4
@WernerHenze, söyledikleriniz doğruyken, Google’ın bu tür şeylerden SuperUser sonuçlarını görmesini istiyoruz :)
Shekhar

Yanıtlar:


10

Bunun doğru olduğuna inanıyorum - hiper iş parçacığı bazı öğeleri - özellikle ana yürütme kaynaklarını paylaştığı için, bu kaynakların serbest bırakılmasını beklemek yerine, aynı anda 4 tam iş parçacığı çalıştırabileceksiniz.

HT'nin amacı, daha küçük bir kalıp alanı kullanımıyla daha iyi performans elde etmektir - dört çekirdeğiniz genellikle daha büyük bir çip olacaktır - HT çift çekirdekli bir çip yaklaşık olurken HT olmayan çift çekirdekli çipten neredeyse iki kat daha büyük % 5 daha büyük. Dört çekirdekli doğru iş yükü altında iki kat daha fazla hız görebiliyordu (ancak çoğu durumda tam kapasitede 4 iş parçacığı çalıştırmayacağınız için), çift çekirdekli HT işlemcisi% 15-30 daha iyi görebiliyordu. HT çekirdekli işlemci olmayan çift çekirdekli performansa ( wikipedia göre ) göre.

Daha gerçek çekirdekler genellikle daha iyidir.


1
HT işlemcisi% 15-30'u görebilir ... Burada anahtar. HT, gerçek bir ikinci çekirdeğin (ya da 2 ya da 4 vb.) Yerine geçmez
Austin T French

1
Hiper iş parçacıklı, daha fazla çekirdekli, daha fazla CPU daha iyi olurdu ...: D
Keltari

HT ile performans geliştirmenin en büyük nedeninin CPU'nun nadiren tam olarak yüklendiği; Bu, tek bir iş parçacığının her CPU döngüsünde nadiren veri işleyeceği anlamına gelir. HT, işlemcinin kullanılmayan bu döngüleri sırasında ikinci bir iş parçacığı zamanlamasını sağlar. Facebook ve e-posta arasında geçiş yapmak için bu çok etkili olabilir, ancak her iş parçacığı ne kadar yoğun olursa, performans artışı o kadar düşük olur.
Thomas,

1

Gönderen Vikipedi :

Hiper iş parçacığı, işlemcinin belirli bölümlerini (mimari durumu depolayanları) çoğaltarak çalışır, ancak ana yürütme kaynaklarını çoğaltmaz. Bu, hiper iş parçacıklı bir işlemcinin ana bilgisayar işletim sistemine normal "fiziksel" işlemci ve ek bir "mantıksal" işlemci olarak görünmesini sağlar (HTT-habersiz işletim sistemleri iki "fiziksel" işlemci görür), işletim sisteminin iki iş parçacığı zamanlamasını sağlar veya aynı anda ve uygun şekilde işler. Yürütme kaynakları, geçerli görev tarafından hiper iş parçacıklı olmayan bir işlemcide kullanılmayacaksa ve özellikle işlemci durduğunda, hiper iş parçacıklı bir donanımlı işlemci başka bir zamanlanmış görevi yürütmek için bu yürütme kaynaklarını kullanabilir. (İşlemci, önbellek kaçması, dal yanlışlığı,

Dört çekirdekli bir sisteminiz varsa, her biri tam çekirdekte 4 iplik çalıştırılabilir. Eğer bir çift çekirdekli hiper-dişi sisteminiz varsa, o zaman her biri tam bir çekirdekte 2 diş çalıştırılabilir, ancak 4 diş ile 1 ve 2 dişleri bir çekirdeği paylaşır ve 3 ve 4 dişleri diğer çekirdeği paylaşır. Hyperthreading, aynı işlemci kaynaklarını kullanmazlarsa, iki iş parçacığının paralel olarak çalışmasını sağlar. Bu yüzden ideal bir durumda, yüksek derecede paralellik elde edebilirsiniz, ancak Wikipedia’nın belirttiği gibi performans artışı% 100 değil, sadece% 15-30.


1

Hiper iş parçacılığında, görev A için çekirdeğin boşta kalma süresi (söz konusu çekirdek, veri için bir istek gönderebilir, diskin plaka alanını aramasını bekleyebilir, verileri okuyabilir ve çekirdeğe geri gönderebilir). ) başka bir görevi yerine getirmek için istismar edilirB. Bu nedenle, görev B'ye konu 2 iş parçacığı tarafından hizmet verildiğinde ve görev A tarafından veri toplama isteği tamamlandığında, görev A hala çekirdeğin iş parçacığı 2'yi bitirmesini beklemek zorunda kalır. Her iki iş parçacığı aynı anda bir çekirdekte yürütülemez. Yine, HT, çekirdek / işlemci ve bilgisayarınızdaki çeşitli alt sistemler arasındaki hız uyumsuzluğundan yararlanır. HT çekirdeklerinizi tam kapasiteye kullanıyor ... tam kapasite kullanımı gibi. Dolayısıyla, tarayıcınızda dört sekme açarsanız, her sekmenin 4 çekirdekli bir sistemde bir çekirdeği olacak ve iki sekmenin çekirdeği 2 çekirdekli bir sistemde paylaşması gerekecek.

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.