Hangi CPU'lar 1GB sayfaları destekliyor?


19

Bazı Intel CPU'lar 1GB sayfaları destekler. Bu, CPUID 0x80000001, EDX bit 26'ya bakarak tanımlanır . Linux çekirdeği bunu bayrak/proc/cpuinfo olarak ortaya koyar .pdpe1gb

Hangi CPU'ların bunu desteklediğini ve hangilerinin desteklemediğini nerede bulabiliriz? Veya bu özelliği hangi ürün yelpazesi destekliyor? Bu Intel ARK sayfalarında bu özellik için destek belirten hiçbir şey yoktur.

CPU'lar yapmak desteği 1GB sayfalarını:

Diğer CPU'lar yok 1GB sayfalarını destekler:


Yanıtlar:


4

Bu sayfaya göre :

AMD'nin yeni AMD64 işlemcileri ve Intel'in Westmere ve sonraki işlemcileri gibi standart 4 KB'lık daha yeni x86-64 işlemcilere ek olarak uzun modda 1 GB sayfa kullanabilir

Westmere işlemcilerin yeni bir özelliği olduğu için doğru gibi görünüyor .


5
Evet, kesinlikle tüm bu Wikipedia sayfalarına baktım! Ancak bu cevap doğru değil. Sandy Bridge o Westmere yeni olduğunu ve şimdi iki Sandy Bridge işlemciye sahiptir yok destekliyorum.
Jonathon Reinhart

2
@JonathonReinhart: genel kullanım için Hugepages'in büyük dezavantajı, esp. 1G sayfaları, tüm büyük sayfanın bu kadar fiziksel RAM bağlamasıdır. Bir işlem normalde 1GiB ayırırsa, yalnızca dokunduğu parçalar aslında sanal bellek kullanır. (fazla taahhüt, çekirdeğin işlemek için yeterli takas alanına sahip olmadığı ayırmalara bile izin verir). Bir işlem durdurulsa bile Linux devasa sayfaları diske sayfalayamaz, bu nedenle devasa bir sayfa tahsisi bu fiziksel belleği etkin bir şekilde sabitler / kilitler.
Peter Cordes

1
2M devasa sayfalar, yarı boş bırakılmayacakları zaman mantıklıdır (örneğin, 2M'nin her 4k'sını yazacağınızdan emin olduğunuzda ), ancak sayfalama eksikliği çok önemlidir . Bellek amaçlı masaüstlerinde korkunç bir şekilde çalışmak için genel amaçlı yazılım tasarlamak iyi bir fikir değildir. Hatta 2M devasa sayfalara sahip bir dosyayı mmap edebileceğinizi sanmıyorum, ancak 2M bloğunda dokunulmayan bazı 4k sayfalar olacağı için yürütülebilir dosyalar için kötü bir fikir olurdu. Bunlar pagecache'den çıkarılabilir (önceden getirildikleri varsayılarak), RAM'i serbest bırakır.
Peter Cordes

1
Mevcut CPU'lar çok seviyeli TLB'lere sahipken, TLB özledikleri için harcanan toplam süre muhtemelen çok kötü değil , değil mi? Firefox gibi büyük bir şey bulamadım. TLB özledikleri, (özellikle sayfa yürüyüşleri) ve L1 I-önbellek özledikleri gibi şeyler için ne kadar zaman harcadığının okunabilir bir özetini görmek isterim. Sadece işaret edebileceğimi biliyorum perf... Firefox için 2M büyük sayfalar kullanmak isteseniz bile, iç verilerinin büyük bir kısmı bundan daha küçük parçalar halinde tahsis edildiğini tahmin ediyorum. Büyük bir sayfa arabelleği içindeki tahsislerin harici parçalanmasını en aza indirdiğinizden emin olmak için ek yük olurdu.
Peter Cordes

1
TLB kayıpları, birçok veritabanı uygulaması gibi yüksek bellekli, rasgele erişimli işlemlerde pahalıdır. Büyük sayfalar önemli bir fark yaratır - ancak orada bile 1GB'den değil 2MB'lık sayfalardan bahsediyorlar. İşletim sistemi, tüm fiziksel adres alanının doğrudan eşleştirilmesiyle 1 GB'lik sayfaların en olası kullanıcısıdır.
GreenReaper
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.