Neden her yuvadaki eşit olmayan RAM miktarı performansı düşürüyor?


12

Bu sayfada birçok MacBook dizüstü bilgisayarı için RAM teknik özellikleri açıklanmaktadır. Dizüstü bilgisayarımın bölümünde (13 "Pro 2011 Sonu) diyor ki:

Ek Notlar: En iyi performans için, her yuvaya eşit bir bellek modülü takarak her iki bellek yuvasını da doldurun.

Bu fenomeni ilk kez duymadım ve kesinlikle Apple'a özgü değil.

Neden böyle? Kullanılabilir hafızadaki bariz düşüş dışında, 6GB (1x4GB + 1x2GB) ile çalıştırmak neden 8GB (2x4GB) ile çalışmaktan daha kötü olur?


Birincisi ... Bu, bellek kanalları ile ilgili bir olgu değil. İkinci olarak, örnekleriniz arasında performans artışı / düşüşü olmazdı.
Ramhound

@Ramhound performans düşüşü yoksa, neden Apple web sitesinde bu uyarı var?
LanceLafontaine

Dedim senin örnekte Eğer çift kanal modunda çalışan olmasaydı olmazdı. Teorik performans kaybı ile gerçek performans kaybı arasında bir fark vardır.
Ramhound

Yanıtlar:


17

Her iki yuvada eşit miktarda bellek olduğunda, bellek "araya sokulabilir", böylece ardışık bellek parçaları yuvaları değişebilir. Bu şekilde, bellek erişimi her iki yuvaya da neredeyse mükemmel bir şekilde dağıtılır ve bant genişlikleri birleşir. Eşit olmayan miktarlarda, bellek serpiştirilemez ve önce bir çubuğa sonra da diğerine eşlenmelidir. Büyük bir bitişik bellek yığınına erişen bir program, erişimlerinin neredeyse tamamının bir çubuğa gittiğini görecek ve bant genişliği kombinasyonu olmayacaktır.


"Interleaved" (kalifiye olmayan) kullanımınız benim gibi eski bir zamanlayıcı için kafa karıştırıcı. Bu durumda serpiştirme yalnızca bellek adresi ataması içindir. Muhtemelen bellek modülleri tek kanallı veya çok kanallı modlarda da çalışacaktır (yani N kanalları bellek döngülerini aynı anda gerçekleştirecektir). Geleneksel serpiştirilmiş bellek, başka bir bellek kanalı eklemeden ucuz bir performans artışı için sadece döngülerinin üst üste geldi (bir bellek bankası, önceki banka döngüsünü tamamlamadan okuma döngüsüne başlayabilir).
talaş

@ sawdust "böylece ardışık bellek parçaları yuvaları ... bant genişlikleri birleştirmek için izin"
David Schwartz

1
Bu belirsizliğin bir parçası. Statik ve / veya dinamik anlamda "alternatif" mi? Geleneksel serpiştirilmiş bellek, hem statik (adresleme) hem de dinamik (bellek döngüsü) anlamda bankalar arasında "dönüşümlü" olur. Çok kanallı modüller alternatif olarak değil aynı anda (dinamik olarak) erişir.
talaş

4

Ek Notlar: En iyi performans için, her yuvaya eşit bir bellek modülü takarak her iki bellek yuvasını da doldurun.

Burada olası teknik açıklama MacBook'unuzun (anakart) çift kanallı mimariyi desteklemesi ve bu nedenle 2 özdeş bellek modülü gerektirmesidir. Deneyler,% 5 -% 10 performans artışı sağladığını gösteriyor.

Neden böyle? Kullanılabilir hafızadaki bariz düşüş dışında, 6GB (1x4GB + 1x2GB) ile çalıştırmak neden 8GB (2x4GB) ile çalışmaktan daha kötü olur?

İki özdeş olmayan bellek modülü kullanıldığında, anakart bellek modüllerini en yavaş modül hızında çalıştıracaktır.

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.