Moduły DIMM: pojedyncze kontra podwójne kontra cztery

49

Jaką różnicę „Ranga” modułów DIMM ma w pamięci serwera? Na przykład, patrząc na konfiguracje serwerów, widzę, że dla tego samego serwera oferowane są następujące opcje:

2GB (1x2GB) Single Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM

2GB (1x2GB) Dual Rank PC3-10600 CL9 ECC DDR3-1333 VLP RDIMM

Biorąc pod uwagę opcję Single Rank vs. Dual Rank lub Dual Rank vs. Quad Rank to zawsze:

  • Szybciej?
  • Taniej?
  • Wyższa przepustowość?


Oto, co ma do powiedzenia IBM (strona 7) na ten temat, przynajmniej w odniesieniu do HS22:

Ważne jest, aby zapewnić optymalne działanie modułów DIMM z odpowiednią liczbą rang w każdym kanale. O ile to możliwe, zaleca się stosowanie podwójnych modułów DIMM w systemie. Dwumiejscowe moduły DIMM oferują lepsze przeplatanie, a tym samym lepszą wydajność niż moduły DIMM jednopoziomowe.

Na przykład, system zapełniony sześcioma modułami DIMM o podwójnej rangi 2 GB przewyższa system zapełniony sześcioma modułami DIMM o podwójnej rangi 2 GB o 7% w przypadku SPECjbb2005. Moduły DIMM podwójnej rangi są również lepsze niż moduły DIMM poczwórnej rangi, ponieważ moduły DIMM poczwórnej rangi spowodują zmniejszenie prędkości pamięci.

Inną ważną wskazówką jest wypełnianie równoważnych rang na kanał. Na przykład należy unikać mieszania jednego modułu DIMM o jednym szeregu i jednego modułu DIMM o podwójnym stopniu w kanale.


Ostatecznie wpływ liczby rang pamięci jest specyficzny dla każdego serwera / mikroukładu. Na przykład na serwerach IBM x3850X5 więcej stopni jest lepszych (patrz §3.8.4):

Dzięki procesorom Xeon 7500/6500 w x3850 X5 posiadanie większej liczby rang zapewnia lepszą wydajność. Powodem jest schemat adresowania, który może rozszerzać strony między szeregami, dzięki czemu strony stają się efektywnie większe, a tym samym więcej cykli odwiedzin strony.

MikeyB
źródło
1
mam czwartą tę małą książkę o ciekawych i zabawnych plikach
javapowered

Odpowiedzi:

37

Wikipedia ma dość dobre wytłumaczenie rangi ( link ). Powiedziałbym, że RamCity (sprzedawca pamięci Kingston) ma bardziej precyzyjne wyjaśnienie na temat rang ( link ):

Ranga pamięci to, po prostu, blok lub obszar danych tworzony przy użyciu niektórych lub wszystkich układów pamięci w module pamięci.

Ranga musi obejmować 64 bity danych; w modułach pamięci, które obsługują kod korekcji błędów (ECC), 64-bitowy obszar danych wymaga 8-bitowego obszaru ECC dla całkowitej szerokości 72 bitów. W zależności od sposobu zaprojektowania modułów pamięci mogą one zawierać jeden, dwa lub cztery obszary 64-bitowych obszarów danych (lub 72-bitowe obszary, gdzie 72 bity = 64 bity danych i 8 bitów ECC).

W artykule wspomniano o wahaniach cen:

Dlaczego moduły pamięci jedno- i podwójnej rangi różnią się ceną?

Ogólnie rzecz biorąc, moduły pamięci jednopoziomowe są zbudowane przy użyciu układów pamięci DRAM x4 („By 4”) i są droższe niż moduły pamięci podwójnej rangi (zbudowane przy użyciu układów pamięci DRAM x8); oba typy modułów mają tę samą liczbę układów, ale x4 DRAM są droższe niż x8 DRAM. Moduły pamięci podwójnej rangi mogą ograniczać przyszłe możliwości rozbudowy i pojemności serwerów, gdy używane są pamięci PC2700 lub PC2-3200. Taki kompromis między kosztem pamięci a pojemnością należy wziąć pod uwagę przy zakupie modułów pamięci dla serwerów opartych na Intel Lindenhurst.

Jeśli chodzi o wydajność, odsyłam do wikipedii:

Nie można uzyskać dostępu do szeregów jednocześnie, ponieważ mają one tę samą ścieżkę danych.

Podsumowując, wydaje się, że szeregi mają więcej wspólnego z gęstością i ceną niż z faktyczną wydajnością. To prawda, pracuję nad uogólnionymi stwierdzeniami dostawcy i wikipedii, nie sądzę, żeby większość ludzi włożyła wiele wysiłku w badanie rang. Liczy się (dla większości administratorów serwerów) to, że pamięć RAM ma pasujące rangi. Nie sądzę, że jest to rzeczywista specyfikacja lub wymaganie, ale pomaga zachować pewną spójność i umożliwia wymianę pamięci w wielu podobnych serwerach.

Należy pamiętać, że większość serwerów można aktualizować, a gęstość pamięci RAM ma duży wpływ. Najlepiej (choć drożej) jest uzyskać gęstszą pamięć RAM dla serwerów, aby zrobić miejsce dla przyszłych aktualizacji.

osij2is
źródło
1
Dzięki za linki - znalazłem jeden z Wikipedii, ale wyjaśnił wiele „Jak” bez większego „Dlaczego”. Wygląda więc na to, że główną implikacją różnych rang będzie maksymalna liczba rang obsługiwanych przez chipset ...
MikeyB 29.09.2009
Tak, jest częściowo napędzany przez obsługę mikroukładu. Ostatecznie dla serwerów ranga sprowadza się do gęstości. Serwery zwykle chcą więcej pamięci RAM do wkuwania (przepraszam za rym). Ale tak jak powiedziałeś ... sprowadza chipset dla tej ilości.
osij2is
2
Jako uzupełnienie tego; ranking ma znaczenie na niektórych serwerach. Weźmy na przykład Dell R710 - jeśli używasz pamięci RAM o poczwórnej wartości, nie możesz wypełnić więcej niż tylko kanał A (z pamięci) i zachować pełną prędkość pamięci RAM. Jeśli zapełnić A i B z quad-rank RAM wtedy prędkość RAM spada do 800MHz, i nie można korzystać z kanału C w ogóle . Dlatego ranking może być bardzo ważny.
Mark Henderson
3
Zawsze kazano mi iść z podwójną rangą nad pojedynczą rangą. Rzeczywiście, twoje stwierdzenie „wygląda na to, że szeregi mają więcej wspólnego z gęstością i ceną niż z rzeczywistą wydajnością” wydaje się sprzeczne ze stwierdzeniem IBM z pytania: „Podwójne moduły DIMM oferują lepsze przeplatanie, a tym samym lepszą wydajność niż moduły DIMM z jednym poziomem”. Więc teraz jestem zdezorientowany.
Mike S,
21

Zasadniczo ranking pamięci można uznać za bankowość pamięci w module. Ma ten sam efekt ograniczenia i zasadniczo nie różni się zbytnio.

Możesz uzyskiwać dostęp tylko do jednego poziomu pamięci na raz na kanale pamięci i nie możesz czytać / zapisywać z / do kanału znacznie szybciej niż przy zainstalowanym jedynym układzie pojedynczej rangi.

Główna idea stojąca za rankingiem pamięci - obsadzenie większej ilości pamięci w module z jednym gniazdem, zmniejszając liczbę potrzebnych banków.

Podobnie jak w przypadku bankowości pamięci, im więcej modułów (szeregów) zainstalujesz, tym mniejsza jest prędkość pamięci.

Zasadniczo dwa szeregi pamięci (dwa moduły jednorzędowe lub jeden podwójny szereg) nie wpłynęłyby na szybkość pamięci (a nawet zwiększy wydajność pamięci do około 10%).

Cztery stopnie (jedna ranga quad, dwie rangi dualne lub cztery rangi pojedynczej) będą wymagały obniżenia prędkości pamięci na jednym kroku (dzięki czemu całkowita wydajność będzie mniej więcej taka sama jak w przypadku jedynego modułu rangi).

Osiem stopni (jeśli są obsługiwane) - na dwóch etapach (przy ogólnej wydajności o około 10% mniejszej niż w przypadku pojedynczego modułu pojedynczego rzędu).

Można powiedzieć, że zmieniasz szybkość pamięci na wolumin pamięci.


źródło
4
To dobra informacja - czy możesz przytoczyć jakieś referencje?
MikeyB
5

Jak wiem, moduł DIMM Single Rank jest droższy niż moduł DIMM Dual Rank. Aby zapakować taką samą ilość pamięci w module DIMM Single Rank, producenci muszą użyć układów o większej pojemności, aby to nadrobić. Właśnie dlatego moduł DIMM Single Rank jest zwykle droższy.

Wierzę, że Rank ma coś wspólnego z liczbą złączy do żetonów na DIMM. Ponieważ liczba złączy jest ograniczona. Aby zmieścić więcej pamięci przy niższych kosztach, używają dwóch banków w module DIMM, dzięki czemu mogą używać mniejszych układów, aby uzyskać taką samą ilość pamięci. Właśnie dlatego mogliśmy uruchamiać banki bez zapełniania wszystkich gniazd pamięci.

jacklty
źródło
0

Głównym przypadkowym czynnikiem dla wielu modułów DIMM jest gęstość pamięci IC.

Jest to kosztem potencjalnych problemów ze zgodnością niektórych chipsetów. Chociaż można zauważyć, że moduły DIMM podwójnej rangi działają lepiej na niektórych zestawach układów.

Jednostronne moduły DIMM są zwykle droższe; aby osiągnąć tę samą pojemność, układy pamięci muszą być większe.

tomwof
źródło