Yeni bir CPU için daha önce çok fazla karşılaştırma alışverişi yaptıysanız, çekirdeklerin hepsinin farklı olanların bir kombinasyonu yerine hıza sahip olduğunu fark etmiş olabilirsiniz. Neden? Bugünün Süper Kullanıcı Soru-Cevap yayını, meraklı bir okuyucunun sorusunun cevabını içeriyor.
Bugünün Soru-Cevap oturumu bize, topluluk odaklı bir Soru-Cevap web siteleri grubu olan Stack Exchange'in bir alt bölümü olan SuperUser'ın izniyle geliyor.
Soru
Süper Kullanıcı okuyucu Jamie, neden tüm CPU çekirdeklerinin farklı olanlar yerine aynı hıza sahip olduğunu bilmek istiyor:
Genel olarak, yeni bir bilgisayar satın alıyorsanız, bilgisayar için beklenen iş yüküne bağlı olarak hangi işlemcinin satın alınacağını belirlersiniz. Video oyunlarında performans genellikle tek çekirdek hızıyla belirlenirken, video düzenleme gibi uygulamalar çekirdek sayısına göre belirlenir. Piyasada bulunanlar açısından, tüm CPU'lar kabaca aynı hıza sahip gibi görünüyor, temel farklar daha fazla iş parçacığı veya daha fazla çekirdek.
Örneğin:
- Intel Core i5-7600K, temel frekans 3,80 GHz, 4 çekirdek, 4 iş parçacığı
- Intel Core i7-7700K, temel frekans 4,20 GHz, 4 çekirdek, 8 iş parçacığı
- AMD Ryzen 5 1600X, temel frekans 3.60 GHz, 6 çekirdek, 12 iş parçacığı
- AMD Ryzen 7 1800X, temel frekans 3,60 GHz, 8 çekirdek, 16 iş parçacığı
Neden tüm çekirdekler aynı saat hızına sahipken artan çekirdek modelini görüyoruz? Neden farklı saat hızlarına sahip varyantlar yok? Örneğin, iki "büyük" çekirdek ve çok sayıda küçük çekirdek.
Diyelim ki, 4.0 GHz'de dört çekirdek (yani 4 × 4 GHz, maksimum 16 GHz) yerine, 4.0 GHz'de çalışan iki çekirdekli ve 2.0 GHz'de çalışan dört çekirdekli (yani 2 × 4.0 GHz + 4 × 2.0) bir CPU'ya ne dersiniz? GHz, maksimum 16 GHz)? İkinci seçenek tek iş parçacıklı iş yüklerinde eşit derecede iyi, ancak çok iş parçacıklı iş yüklerinde potansiyel olarak daha iyi olabilir mi?
Bunu genel bir soru olarak soruyorum ve özellikle yukarıda listelenen CPU'lar veya belirli bir iş yükü ile ilgili değil. Sadece modelin neden böyle olduğunu merak ediyorum.
Neden CPU çekirdeklerinin hepsi farklı olanlar yerine aynı hıza sahip?
Cevap
SuperUser katılımcısı bwDraco'nun cevabı bizim için:
Bu, heterojen çoklu işleme (HMP) olarak bilinir ve mobil cihazlar tarafından yaygın olarak benimsenir. Uygulayan ARM tabanlı cihazlarda büyük küçük işlemci, farklı performans ve güç profillerine sahip çekirdekler içerir, yani bazı çekirdekler hızlı çalışır ancak çok fazla güç çeker (daha hızlı mimari ve / veya daha yüksek saatler), diğerleri ise enerji açısından verimli ancak yavaştır (daha yavaş mimari ve / veya daha düşük saatler). Bu yararlıdır çünkü güç kullanımı, belirli bir noktayı geçtikten sonra performansı artırdıkça orantısız bir şekilde artma eğilimindedir. Buradaki fikir, ihtiyacınız olduğunda performans, ihtiyaç duymadığınızda pil ömrü elde etmektir.
Masaüstü platformlarda, güç tüketimi çok daha az sorun teşkil eder, bu nedenle bu gerçekten gerekli değildir. Çoğu uygulama, her bir çekirdeğin benzer performans özelliklerine sahip olmasını bekler ve HMP sistemleri için zamanlama süreçleri, geleneksel simetrik çoklu işlem (SMP) sistemleri için planlamadan çok daha karmaşıktır (teknik olarak, Windows 10 HMP desteğine sahiptir, ancak esas olarak mobil cihazlar için tasarlanmıştır. ARM big.LITTLE kullanan cihazlar).
Ayrıca, günümüzde çoğu masaüstü ve dizüstü bilgisayar işlemcisi, termal veya elektriksel olarak bazı çekirdeklerin, kısa patlamalar için bile diğerlerinden daha hızlı çalışması gerektiği noktayla sınırlı değildir. Temelde bir duvara çarptık ne kadar hızlı bireysel çekirdekler yapabiliriz , bu nedenle bazı çekirdekleri daha yavaş olanlarla değiştirmek, kalan çekirdeklerin daha hızlı çalışmasına izin vermez.
Diğerlerinden daha hızlı çalışabilen bir veya iki çekirdeğe sahip birkaç masaüstü işlemcisi varken, bu yetenek şu anda bazı çok yüksek kaliteli Intel işlemcilerle (Turbo Boost Max Technology 3.0 olarak bilinir) sınırlıdır ve yalnızca küçük bir kazanç sağlar. daha hızlı çalışabilen çekirdekler için performans.
Ağır iş parçacıklı iş yüklerini optimize etmek için hem büyük, hızlı çekirdekli hem de daha küçük, daha yavaş çekirdekli geleneksel bir x86 işlemcisi tasarlamak kesinlikle mümkün olsa da, bu işlemci tasarımına önemli ölçüde karmaşıklık katacaktır ve uygulamaların bunu düzgün şekilde desteklemesi olası değildir.
İki hızlı işlemciye sahip varsayımsal bir işlemci alın Kaby Gölü (7. nesil) çekirdek ve sekiz yavaş Goldmont (Atom) çekirdekler. Toplam 10 çekirdeğiniz olacaktır ve bu tür bir işlemci için optimize edilmiş ağır iş parçacıklı iş yükleri, normal dört çekirdekli Kaby Lake işlemciye göre performans ve verimlilikte bir kazanç sağlayabilir. Bununla birlikte, farklı çekirdek türlerinin çılgınca farklı performans seviyeleri vardır ve yavaş çekirdekler, hızlı çekirdeklerin desteklediği bazı talimatları desteklemez. AVX (ARM, hem büyük hem de LITTLE çekirdeklerin aynı talimatları desteklemesini gerektirerek bu sorunu önler).
Yine, Windows tabanlı çok iş parçacıklı uygulamaların çoğu, her çekirdeğin aynı veya neredeyse aynı performans düzeyine sahip olduğunu ve aynı talimatları yürütebileceğini varsayar, bu nedenle bu tür bir asimetri muhtemelen idealden daha az performansla sonuçlanır, hatta belki de yavaş çekirdekler tarafından desteklenmeyen talimatlar kullanıyorsa çöküyor. Intel, gelişmiş yönerge desteği eklemek için yavaş çekirdekleri değiştirebilir, böylece tüm çekirdekler tüm yönergeleri yürütebilir, bu, heterojen işlemciler için yazılım desteğiyle ilgili sorunları çözmez.
Uygulama tasarımına farklı bir yaklaşım, sorunuzda muhtemelen düşündüğünüz şeye daha yakınsa, GPU'yu uygulamaların oldukça paralel kısımlarının hızlandırılması için kullanır. Bu, aşağıdaki gibi API'ler kullanılarak yapılabilir OpenCL ve MUCİZELER . Tek yongalı bir çözüme gelince, AMD, geleneksel bir CPU ile yüksek performanslı bir tümleşik GPU'yu aynı yongada birleştiren APU'larında GPU hızlandırma için donanım desteğini destekler. Heterojen Sistem Mimarisi ancak bu, birkaç özel uygulama dışında pek bir endüstri alımı görmemiştir.
Açıklamaya eklemek istediğiniz bir şey var mı? Yorumlarda ses çıkarın. Diğer teknoloji meraklısı Stack Exchange kullanıcılarından daha fazla yanıt okumak ister misiniz? Tartışma dizisinin tamamına buradan göz atın .
Resim Kredisi: Mirko Waltermann (Flickr)