Linux altında CPU'ların numaralandırılma şeklini etkilemek mümkün mü?


32

İçinde 2 adet eşleşmemiş CPU bulunan bir HP DL380 G7 var. Biri daha hızlı çekirdekli dört çekirdekli bir işlemci ve biri de daha yavaş çekirdekli 6 çekirdekli bir işlemci.

Bu kutuda lisanslama nedeniyle sadece CPU0-CPU3 kullanacak bir uygulama çalıştırıyorum.

Benim için dört çekirdekli işlemcideki daha hızlı çekirdeklerin işletim sistemindeki CPU0-CPU3 değerlerine göre sayılması, bana a) daha hızlı saatli çekirdekler kullanmak için bir performans bonusu vererek ve b) tüm iş parçacıklarını aynı fiziksel işlemcide tutmak isteyebilirdi. .

Bunu BIOS içinde veya Linux'ta bir yapılandırma dosyasında veya önyükleme seçeneğinde gerçekleştirmenin bir yolu var mı?

Özel CPU modelleri:

Intel (R) Xeon (R) İşlemci E5649 @ 2.53GHz (altıgen çekirdek)

Intel (R) Xeon (R) İşlemci E5640 @ 2.67GHz (dört çekirdekli)


Lütfen belirli CPU modellerini adresinden gönderin cat /proc/cpuinfo.
ewwhite,

24
Olumsuz, çünkü eşit olmayan işlemcilerin mümkün olduğunu bilmiyordum, her zaman öğrenmek için yeni bir şey ...
Kyle Brandt

2
@kyle bu mümkün, ancak HP tarafından desteklenmiyor veya desteklenmiyor.
ewwhite,

1
@ kasperd HP diyarında, iki adımda farklı işlemcileri yüklerseniz, POST'ta bir CPU mismatch detectedhata alırsınız . Bir CPU neslinde olabilirdi; örneğin aynı kasa içerisinde bir Intel 5606 ve 5690.
ewwhite,

3
Burada gerçekten ne yaptığımızla ilgilenen olursa, veri merkezine doğru bir yolculuğa çıktık ve dört çekirdekli işlemciyi sunuculardan fiziksel olarak çıkardık
paulos

Yanıtlar:


27

Wut?!?

Bu delilik , biliyor musun? Desteklenmiyor ve donanımınız için muhtemelen iyi değil. Sunucunuzda aynı şekilde belirtilen işlemciler kullanıyor olmalısınız.

Sanırım birkaç kişi, uygulamanızı tasksetyalnızca kullanmak istediğiniz CPU çekirdeğini içeren bir grup veya kalkan (veya aracılığıyla ) yürütün . Ayrıca, bu CPU'ya hafıza erişimini de yapabilirsiniz numactl. Fakat gerçekten, neden yavaş işlemciyi tamamen kaldırmıyorsunuz ya da sistemi spekülasyona sokmak için ne gerekiyorsa ödüyorsunuz.

Belki de apaçık olan, uygulamanız CPU0-CPU3 kullanması için kodlanmışsa, fiziksel olarak soketleri değiştirmektir ... ama gerçekten, burada sadece bir CPU ile çalışabilirsiniz.

ProLiant DL380 G7 donanımından bahsediyorsanız, "daha hızlı" CPU'nuz muhtemelen Nehalem 5500-serisi bir proc'tur, daha yavaş hex-core CPU Westmere'dir. Hiç kıyaslama yaptın mı? Hangi özel CPU'lar yüklü?

Düzenle:

Tamam, bunlar en azından aynı nesil / adımlamanın işlemcileridir. Ama yine de kötü bir fikir ... CPU özelliklerinde ki fark o kadar da iyi değil (3.47GHz'de Intel X5690 gibi bir şey).


4
Herkes aynı tepkiyi verdi! İdeal olarak CPU'nun aynı olacağını biliyorum, ancak HP'nin bize geri verdiği şey bu. Bu ele verdiğim el bu yüzden bir sonraki donanım yenileme gelene kadar en iyisini yapmalıyım. CPU'lar Xeon E5649 @ 2.53 GHz (altıgen çekirdek) ve E5640 @ 2.67 GHz (dört çekirdekli). 6 çekirdekli işlemciyi tamamen çıkarmak aslında masadaki seçeneklerden biri. BIOS'taki soketi tamamen devre dışı bırakabilmek daha uygun olur ancak mümkün görünmüyor.
Paulos

@paulos Bu uygulama nedir?
ewwhite ile

Aslında bir kontrol noktası güvenlik duvarı olarak çalışıyor
paulos

3
@paulos Öyleyse neden 2.53GHz'e karşı 2.67GHz önemli? Sadece 6 çekirdekli işlemciyi sunucuya yerleştirin ve 4 çekirdeği çıkarın.
ewwhite,

re: CPU spec, evet bence sadece yaklaşık% 5 daha hızlı ya da böyle bir şey. Performans kazancının, tüm çalışan iş parçacığı ve özellikle de ağ kartlarındaki irq fırtınasının aynı fiziksel CPU'da olmasıyla ilişkilendirilebileceğini umuyorum. düzenleme: Evet sadece 6 çekirdekli CPU kullanarak da bir olasılıktır.
Paulos,
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.