Чому неоднакова кількість оперативної пам’яті в кожному слоті знижує продуктивність?


12

На цій сторінці описані специфікації оперативної пам’яті для багатьох ноутбуків MacBook. У розділі для мого ноутбука (13 "Pro Late 2011) написано:

Додаткові примітки: Для найкращої продуктивності заповніть обидва слота пам'яті, встановивши в кожному слоті рівний модуль пам'яті.

Це не перший раз, коли я чув про це явище, і це, безумовно, не характерно для Apple.

Чому це так? Окрім очевидного зменшення доступної пам'яті, чому було б гірше працювати з 6 ГБ (1x4 ГБ + 1х2 ГБ), ніж з 8 ГБ (2х4 ГБ)?


По-перше ... Це не явище, що стосується каналів пам'яті. По-друге, між вашими прикладами не повинно бути підвищення / зниження продуктивності.
Рамхаунд

@Ramhound, якщо не спостерігається зниження продуктивності, чому це попередження на веб-сайті Apple?
LanceLafontaine

Я сказав у вашому прикладі, якби ви не працювали в двоканальному режимі, там би не було. Існує різниця між теоретичними втратами продуктивності та фактичними втратами.
Рамхаунд

Відповіді:


17

При однаковій кількості пам'яті в обох слотах, пам'ять можна "переплести", щоб послідовні шматки пам'яті чергували слоти. Таким чином, доступ до пам'яті розподіляється на обидва слоти майже ідеально рівномірно, що дозволяє їх пропускній здатності поєднуватися. При нерівномірному обсязі пам'ять не може бути переплетена, і її потрібно перенести спочатку на одну палицю, а потім на другу. Програма, яка отримує доступ до великого суміжного шматка пам'яті, знайде майже всі її доступу, що переходять на одну палицю, і комбінації пропускної здатності не буде.


Ваше (некваліфіковане) використання "перемежованих" бентежить для старожилів, як я. Переплетення в цьому випадку призначене лише для призначення адреси пам'яті. Імовірно, модулі пам'яті також будуть працювати в одноканальному або багатоканальному режимах (тобто N каналів виконують свої цикли пам'яті одночасно). Традиційна переплетена пам'ять лише перекривала їхні цикли (банк пам'яті міг розпочати цикл читання до того, як попередній банк завершив цикл), для дешевого збільшення продуктивності без додавання іншого каналу пам'яті.
тирса

@sawdust "щоб послідовні шматки пам'яті чергували слоти ... дозволяючи поєднати їх пропускну здатність"
David Schwartz

1
Це частина неоднозначності. "Чергувати" в статичному та / або динамічному сенсах? Традиційна переплетена пам'ять "чергуватиме" між банками як у статичному (адресаційному), так і в динамічному (циклі пам'яті) сенсі. Багатоканальний канал (динамічно) матиме доступ до модулів одночасно, а не чергуватися.
тирса

4

Додаткові примітки: Для найкращої продуктивності заповніть обидва слота пам'яті, встановивши в кожному слоті рівний модуль пам'яті.

Ймовірне технічне пояснення тут полягає в тому, що ваша MacBook (материнська плата) підтримує двоканальну архітектуру, і тому потрібні два однакових модуля пам'яті. Бенчмарки свідчать, що він дає 5% -10% підвищення продуктивності.

Чому це так? Окрім очевидного зменшення доступної пам'яті, чому було б гірше працювати з 6 ГБ (1x4 ГБ + 1х2 ГБ), ніж з 8 ГБ (2х4 ГБ)?

Якщо використовуються два неідентичні модулі пам'яті, материнська плата запускає модулі пам'яті зі швидкістю найповільнішого модуля.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.