11Aug
Şimdiye kadar yeni bir işlemci için çok fazla karşılaştırma yapmış iseniz, çekirdeklerin hepsinin farklı olanın birleşiminden çok bir hıza sahip olduğunu fark etmişsinizdir. Neden? Bugünün Süper Kullanıcısı Q & A yayını, merak uyandırıcı bir okuyucunun sorusuna cevap buluyor.
Bugünkü Soru &Yanıt oturumu bize Q & A web sitelerinin topluluk temelli bir gruplandırması olan Stack Exchange'in bir alt bölümü olan SuperUser nezaketen geliyor.
Soru
SuperUser okuyucu Jamie neden CPU çekirdeklerinin hepsinin aynı hız yerine farklı çekirdek hızlarına sahip olduğunu bilmek istiyor:
Genel olarak, yeni bir bilgisayar satın alıyorsanız, bilgisayar için beklenen iş yüküne dayanarak hangi işlemcinin satın alacağını belirleyeceksiniz. Video oyunları performansı tek çekirdek hızı ile belirlenirken, video düzenleme gibi uygulamalar çekirdek sayısına göre belirlenir. Piyasada mevcut olanlarla ilgili olarak, tüm CPU'lar ana farklılıkların daha çok iş parçacığı ya da daha çok çekirdek olması ile kabaca aynı hıza sahip görünüyor.
Ö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 parça
- AMD Ryzen 7 1800X, taban frekansı 3.60 GHz, 8 çekirdek, 16 iş parçacığı
Neden artan çekirdeklerin bu paternini görüyoruz, ancak tüm çekirdeklerin saat hızı aynı mı?Saat hızları farklı olan neden hiçbir varyasyon yok?Örneğin, iki "büyük" çekirdek ve çok sayıda küçük çekirdek.
Örneğin, 4.0 GHz'de dört çekirdeği( yani 4 × 4 GHz, maksimum 16 GHz) olan dört çekirdek yerine, 4.0 GHz hızında çalışan iki çekirdeği ve 2.0 GHz hızında çalışan dört çekirdekli( yani 2 × 4.0 GHz + 4 ×2.0 GHz, maksimum 16 GHz)?İkinci seçenek, tek iş parçacıklı iş yüklerinde eşit derecede iyi olurdu, ancak çok iş parçacıklı iş yüklerinde potansiyel olarak daha iyi olurdu mu?
Bunu, yukarıda sıralanan CPU'lara veya belirli bir iş yüküne ilişkin olarak değil, genel bir soru olarak düşünüyorum. Ben desenin neden olduğu gibi sadece merak ediyorum.
Neden CPU çekirdeklerinin hepsi farklı olanın yerine aynı hıza sahip?
Cevap
SuperUser katkıda bulunan bwDraco bize cevap vermektedir:
Bu, heterojen çoklu işlem( HMP) olarak bilinir ve mobil cihazlar tarafından yaygın şekilde kabul görür. Big. LITTLE'i uygulayan ARM tabanlı aygıtlarda, işlemci farklı performans ve güç profillerine sahip çekirdekler içeriyor, yani bazı çekirdekler hızlı çalışıyor ancak çok güç çekiyorlar( daha hızlı mimari ve / veya daha yüksek saatler) ve diğerleri enerji açısından verimli ama yavaşyavaş mimari ve / veya daha düşük saatler).Bu yararlıdır çünkü belirli bir noktayı aştığınızda performansı artırdığınızda güç kullanımı orantısız bir şekilde artma eğilimi gösterir. Buradaki fikir, ihtiyaç duyduğunuzda performans elde etmek ve olmadığında pil ömrü elde etmektir.
Masaüstü platformlarda güç tüketimi daha az bir sorun olduğundan, bu gerçekten gerekli değildir.Çoğu uygulama, her çekirdeğin benzer performans özelliklerine sahip olmasını bekler ve HMP sistemleri için zamanlama süreçleri, geleneksel simetrik çok işleme( SMP) sistemleri için planlama yönteminden çok daha karmaşıktır( teknik olarak, Windows 10 HMP'yi desteklemektedir, ancak esas olarak mobil kullanım için tasarlanmıştırARM big. LITTLE kullanan cihazlar).
Ayrıca çoğu masaüstü ve dizüstü bilgisayar işlemcileri termal olarak veya elektrikle, bazı çekirdeğin kısa patlamalarda bile diğerlerinden daha hızlı çalışması gereken noktayla sınırlı değildir. Temel olarak, tek tek çekirdekler ne kadar hızlı yapabileceğimiz konusunda bir duvara çarptık, bu nedenle bazı çekirdeklerin yavaş çekimlerle değiştirilmesi, çekirdeklerin daha hızlı çalışmasına izin vermeyecektir.
Bu yetenek, diğerlerinden daha hızlı çalışabilen bir veya iki çekirdeğe sahip birkaç masaüstü işlemcisi olmasına rağmen şu anda yalnızca belirli üst düzey Intel işlemcilerle( Turbo Boost Max Teknoloji 3.0 olarak bilinir) sınırlıdır ve yalnızca hafif bir kazanç içerirdaha hızlı çalışabilen çekirdeğin performansı.
Her ne kadar büyük, hızlı çekirdekler ve daha ağır ve daha yavaş çekirdeklerle geleneksel bir x86 işlemcisi tasarlamak kesinlikle mümkün olsa da, bu da iş parçacıklı iş yüklerini optimize etmek için, işlemci tasarımına önemli derecede karmaşıklık katıyor ve uygulamaların onu düzgün şekilde desteklemesi pek mümkün değildir.
İki hızlı Kaby Lake( 7. nesil) çekirdeği ve sekiz yavaş Goldmont( Atom) çekirdeği bulunan bir sanal işlemci kullanın. Toplam 10 çekirdeğe sahip olacaksınız ve bu tür işlemci için optimize edilmiş ağır iş parçacıklı iş yükleri, normal bir dört çekirdekli Kaby Lake işlemcisine kıyasla bir performans ve verimlilik artışı görebilir. Bununla birlikte, farklı çekirdek türleri çılgınca farklı performans seviyelerine sahiptir ve yavaş çekirdekler AVX gibi hızlı çekirdeklerin desteklediği talimatların bazılarını bile desteklememektedir( ARM, aynı talimatları desteklemek için hem büyük hem de KÜÇÜK çekirdekleri gerektirerek bu sorunu önlemektedir).
Yine, Windows tabanlı çok iş parçacıklı uygulamaların çoğu, her çekirdeğin aynı veya neredeyse aynı düzeyde performans aldığını ve aynı talimatları uygulayabileceğini varsayıyor; bu nedenle bu tür asimetri, belki de ideal performansdan daha düşük bir performansa neden olabilir.daha yavaş çekirdekler tarafından desteklenmeyen talimatları kullanırsa çöker. Intel, bütün çekirdeklerin tüm talimatları uygulayabilmesi için yavaş çekirdekleri gelişmiş yönerge desteği eklemek için değiştirebilirken, heterojen işlemciler için yazılım desteği ile ilgili sorunları çözmez.
Uygulamanın tasarımında, muhtemelen sorunuzda düşünüşünüze daha yakın olan farklı bir yaklaşım, GPU'yu, uygulamaların oldukça paralel bölümlerini hızlandırmak için kullanır. Bu OpenCL ve CUDA gibi API'leri kullanarak yapılabilir. Tek yongalı bir çözüm gelince, AMD, geleneksel CPU ve yüksek performanslı entegre bir GPU'yu aynı çipte birleştiren APU'lardaki GPU hızlandırması için donanım desteğini, Heterojen Sistem Mimarisi olarak desteklemektedir; ancak, bu, dış alanlar arasında çok fazla endüstri alımı görmemesine rağmenbirkaç özel uygulama.
Açıklamaya eklemek için bir şey var mı?Yorumların sesini kapatın. Diğer teknik uzman Stack Exchange kullanıcılarından daha fazla cevap okumak ister misiniz? Buradaki tam tartışma dizinine göz atın.
Resim Kredisi: Mirko Waltermann( Flickr)