If-Koubou

Czy pamięć staje się wolniejsza, jeśli zwiększa się jej rozmiar?

Czy pamięć staje się wolniejsza, jeśli zwiększa się jej rozmiar? (Jak)

Czasami fajnie jest spekulować, jak inaczej system działałby po wprowadzeniu zmian w komponentach sprzętowych. Dzisiejszy post z pytaniami i odpowiedziami SuperUser omawia wzrost wielkości pamięci, aby zaspokoić ciekawość czytelnika.

Dzisiejsza sesja pytań i odpowiedzi przychodzi do nas dzięki uprzejmości SuperUser - poddziału Stack Exchange, społecznościowego forum z pytaniami i odpowiedziami.

Zdjęcie dzięki uprzejmości Association WDA (Flickr).

Pytanie

Czytnik SuperUser spartacus chce wiedzieć, czy zwiększenie rozmiaru pamięci spowodowałoby jej spowolnienie:

Gdybyśmy zwiększyli rozmiar pamięci SDRAM przy użyciu tej samej technologii, czy czas reakcji byłby wolniejszy? Gdyby zrobiło się wolniej, byłoby to spowodowane złożonością logiki cyfrowej?

Czy zwiększenie rozmiaru spowoduje spowolnienie pamięci?

Odpowiedź

Współautorzy SuperUser Daniel R Hicks i Shikhar Bhardwaj mają dla nas odpowiedź. Najpierw Daniel R Hicks:

Tak i nie. Jako stany duDE, pamięć nigdy nie będzie działać szybciej niż prędkość szyny / zegara, ale maksymalna szybkość pamięci jest zdecydowanie zależna od rozmiaru.

Gdy zespół pamięci staje się większy, liczba poziomów dekodera adresu rośnie (wraz z logiem rozmiaru), a obciążenie dla sterowników wzrasta liniowo (co powoduje w przybliżeniu logarytmiczny wzrost opóźnienia).

Tak więc, chociaż rzadko warto ograniczyć rozmiar pamięci RAM w gotowym systemie, próbując zwiększyć prędkość (istnieją wyjątki, w których skrzynka dostosowuje szybkość zegara w oparciu o rozmiar pamięci RAM), jeśli system jest projektant, maksymalny rozmiar pamięci RAM to jedna z kompromisów dotyczących wydajności, którą należy wziąć pod uwagę.

Po odpowiedzi od Shikhara Bhardwaj:

Nie. Ponieważ SDRAM jest zsynchronizowany z systemem, szybkość pamięci zależy od szybkości systemu. To, co może mieć wpływ na szybkość dostępu do pamięci, to konfiguracja, w której jest używana.

Jeśli twoja kompilacja ma już konfigurację dwukanałową (lub potrójną), a zwiększona pamięć nie używa identycznych modułów, możesz spowolnić działanie do jednego kanału. Jednak ten spadek jest prawie niewidoczny, jak mówi Wikipedia:

  • Tom's Hardware stwierdził niewielką różnicę między konfiguracjami jednokanałowymi i dwukanałowymi w testach syntetycznych i gier (przy użyciu konfiguracji systemu "modern (2007)"). W swoich testach dwukanałowy dał co najwyżej 5-procentowy wzrost prędkości w zadaniach wymagających dużej ilości pamięci.

W takim przypadku prędkość może się zmniejszyć, ale zwiększy się ogólna wydajność dzięki większej ilości pamięci fizycznej dostępnej dla systemu operacyjnego. To oczywiście zależy od systemu operacyjnego, z którego korzystasz i od tego, jak efektywne jest wykorzystanie dostępnych zasobów.

Czy masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych użytkowników Stack Exchange, którzy znają się na technologii? Sprawdź cały wątek dyskusji tutaj.