Makinemde, Windows 7 - 1 x Intel Xeon E5-1660 0 @ 3.30Ghz (Hyper Threading özellikli 6 çekirdek/işlemci) ile Enterprise, tam bir Environment.ProcessorCount dönüşü 12.C# Environment.ProcessorCount her zaman Mantıksal İşlemcinin tam sayısını döndürmez, neden?
Windows Server 2012'de, 2 x Intel Xeon E5-2697 v3 @ 2.60GHz (Hyper Threading etkinleştirilmiş 14 çekirdek/işlemci (bence görev yöneticisi gösterisi: 2 yuva, 28 çekirdek, 56 mantıksal işlemci)), Bize yanlış olarak görünen Environment.ProcessorCount return 28 2x14x2 = 56.
Neden Windows Server 2012 C# yöntemi üzerinde Environment.ProcessorCount uygun sayıda mantıksal işlemci döndürmüyor? aşağıdaki gibi
olarak bilgiye, çevre değişkenleri şunlardır: number_of_processors = 28
Güncelleme 2015/05/26:
bu ilgili daha ayrıntılı/nedenleri vardır Benim diğer soruda hata: Unable to use more than one processor group for my threads in a C# app. Esasen C# 'nin sadece bir işlemci grubu kullandığını düşünüyorum. Werid sunucumuzda, sadece 56 mantıksal işlemci olmasına rağmen 2 işlemci grubu vardı. Ancak, bu HP CUSTOMER ADVISORY, sunucu biyo yapılandırmamızın neden yanlışlıkla pencereleri tetiklediğini açıklıyor. Mevcut makine çok işlemcili gruplar içeriyorsa
", bu tesis, ortak dil çalıştırma süresi (CLR) tarafından kullanılmak üzere mevcut olan mantıksal bir işlemci sayısını verir:
Environment.PermissionAccess' I :-) size bir CPU bilgisini veriyor 'ben şaşırdım belgelenmiş olarak bile bulamıyorum. –
Üzgünüm, soru başlığımı düzenledim ... Yanlış yöntem adını kullandım. Üzgünüm. Bilgi için teşekkürler. –