16 GB pamięci RAM - Zmusić system Windows 7 do korzystania z jak największej ilości pamięci RAM?

20

Zastanawiałem się, czy jest jakiś sposób, aby skonfigurować system Windows do korzystania z WIĘCEJ pamięci RAM. Mam komputer stacjonarny z 16 GB pamięci RAM i tylko 2 są używane przy normalnym obciążeniu. Maksymalne, jakie widziałem do tej pory, to 6 GB. Czy jest jakiś sposób, aby powiedzieć Windowsowi, aby dostroił swoją wewnętrzną pracę w takim środowisku?

oipoistar
źródło
4
Uh ... dlaczego? Jeśli nie uruchamiasz niczego, czego POTRZEBUJE ta pamięć RAM, nie
zużyje
3
Nie zapominaj, że wolna pamięć zostanie wykorzystana jako pamięć podręczna plików. Dlatego nie jest bezużyteczne ...
Robert
1
Nie zapominaj, że większość programów nie jest napisana, aby korzystać z całej pamięci RAM. Możesz rzucić 60 GB pamięci RAM na program i to nie zmieni jego nawyków. Jeśli nie jest specjalnie napisane, aby zużyć jak najwięcej pamięci RAM (obecnie rzadkie przypadki), Windows nie może nic zrobić. Wszystko, co system operacyjny może zrobić, to przekręcić kciuki i poczekać na aplikację. Załóżmy na przykład, że ktoś przenosi kilka notatek na swój komputer. Cóż, wszystko, co umieją, to pisać. Wszystkie ich sztuczki i skróty mają na celu szybsze pisanie. Do tego zostali zaprogramowani.
surfasb
1
Daj im skaner, a powiedzą: „Nie byłem zaprogramowany, aby z niego korzystać”. i wróć do pisania. Możesz umieścić wszystkie najnowsze i najlepsze skanery i OCR przed nimi, ale zrobią to, co zaprogramowano, nawet jeśli rzucisz na to całą swoją pamięć RAM. System operacyjny nic na to nie poradzi. Jedynymi programami, które naprawdę zajmują całą tę pamięć, są programy serwerowe, które ładują wszystkie indeksy swoich baz danych do pamięci. Nienawidzę cię łamać, ale trendem jest pisanie programów, które zużywają mniej pamięci.
surfasb
3
Użyj Chrome i zacznij otwierać karty. Długo nie będziesz narzekał na nieużywaną pamięć RAM.
Dan Dascalescu

Odpowiedzi:

37

Prawdopodobnie już go używa. W tym przykładzie:

  • Całkowita pamięć RAM: 12 GB
  • Wykorzystano: 4,45 GB

Można by pomyśleć, że jest 7,55 GB nieużywanej pamięci RAM. Źle. Windows używa go jako pamięci podręcznej, albo przechowując wcześniej używane dane, które nie są już potrzebne, albo ładując dane z często dostępnym wyprzedzeniem (głównie rzeczy z systemu operacyjnego, takie jak biblioteki i prefiksy - nie ładuje plików słownych ani nic takiego). Przy odrobinie szczęścia część zostanie ponownie wykorzystana, co poprawi wydajność.

  • Pamięć podręczna: 7,8 GB (większość oznaczona jako dostępna, ponieważ w przypadku innych rzeczy można jej użyć w dowolnym momencie)
  • Właściwie za darmo: 16 megabajtów.

wprowadź opis zdjęcia tutaj

mtone
źródło
3
wow, nigdy tego nie zauważyłem. To z pewnością wyjaśnia bardzo zrozumiałe, dlaczego „więcej pamięci RAM jest zawsze lepsze”
kluka
Obawiam się, że ta odpowiedź jest nieprawidłowa. Mam 32 Gb RAM i zwykle tylko 8 Gb służy do buforowania plików - nigdy więcej nie widziałem.
user626528,
Podobnie ... Mam 64 GB i nigdy nie widziałem więcej niż 13 GB użytej do buforowania
Basic
Dlaczego użycie pliku strony nie jest tam pokazane?
skan
12

Już jest.

Należy zwrócić uwagę na różnicę między pamięcią, którą system musi uruchomić, a pamięcią, którą warto mieć do buforowania i tym podobne. 2 GB pamięci, czasem do 6 GB, to pamięć, którą Windows musi przechowywać w pamięci, aby uruchomić programy lub napotkać poważne problemy z przerzucaniem plików stronicowania. Nie oznacza to jednak, że pozostałe 14 GB nie są używane! Przeciwnie, reszta pamięci jest intensywnie wykorzystywana do buforowania plików z dysku i innych często używanych, ale powolnych magazynów danych. Ponieważ jednak jest to tylko pamięć podręczna, system Windows nie uważa pamięci za „używaną” - może ją po prostu zrzucić, jeśli potrzebuje miejsca na rzeczywiste dane aplikacji.

„Ale dlaczego potrzebuję pliku stronicowania?”

Posiadanie pliku strony pozwala Windowsowi zarządzać pamięcią podręczną w najlepszy możliwy sposób. Widzisz, my ludzie sądzimy, że wiemy coś o tym, jak najlepiej zarządzać około 128 miliardami bitów danych w najbardziej efektywny sposób. Prawda jest taka, że ​​nie znamy przysiadu w porównaniu z wydajnością algorytmiczną, którą komputer w przeciwnym razie próbuje wykorzystać, gdy przestajemy się wtrącać i pozwalamy mu działać.

Załóżmy, że program potrzebuje 200 MB pamięci, ale często uzyskuje dostęp do 100 MB tej pamięci. System Windows przydzieli 100 MB pamięci dla aplikacji (część 2 GB, którą widzisz), a następnie przydzieli 100 MB pliku strony pozostałej przestrzeni potrzebnej aplikacji. A kiedy masz dostępną wolną pamięć, po prostu załaduje 100 MB z pliku strony do pamięci, dzięki czemu będzie tam zawsze gotowy. Gdy system Windows to robi, wie, że 100 MB pamięci jest nadal dostępne na ważniejsze potrzeby - powiedzmy, że często ładujesz plik gry na poziomie 100 MB, co kilka minut, ale ta aplikacja korzysta tylko z tego dodatkowego pamięć raz dziennie (a gdy już to robimy, załóżmy, że reszta pamięci jest już wypełniona pamięcią podręczną). Jeśli ta pamięć pozostanie bezczynna, podczas gdy poziom gry jest za każdym razem ładowany z dysku? Oczywiście nie! System Windows zrzuci dane aplikacji z pamięci podręcznej i załaduje poziom gry do pamięci podręcznej, dzięki czemu gra będzie działać znacznie szybciej.

Darth Android
źródło
5

Przy 8 GB lub więcej pamięci sugeruję wyłączenie stronicowania jądra . To zmusi twoje jądro do pamięci zamiast stronicowania jego części i możesz uzyskać niewielki wzrost odpowiedzi z twojego systemu. Nie sugerowałbym wyłączenia pliku stronicowania, chociaż prawdopodobnie można uniknąć ustawiania go na minimum 1 GB i maksimum 2 GB. Windows 7 jest naprawdę bardzo dobry w zarządzaniu pamięcią i chociaż prawdopodobnie nie napotkasz żadnych problemów z brakiem pamięci przez wyłączenie pliku strony, prawdopodobnie wpłynie to na SuperFetch. Mimo że do uruchamiania programów można użyć 6 GB, system Windows wykorzysta prawie całą resztę pamięci do buforowania plików, które można otworzyć w danym momencie. To jest SuperFetch (starszy brat Prefetch). Wyłączenie pliku strony prawie na pewno nie poprawi wydajności i prawdopodobnie będziesz strzelał sobie w stopę, jeśli chodzi o czasy ładowania.

eAbyss
źródło
Przykro mi, ale ustawienie wartości rejestru „DisablePagingExecutive” nie jest zbyt pomocne. Po pierwsze, cały krytyczny kod w exec jest już niestronicowany. Po drugie, wszystko, co często używane, i tak nie zostanie stronicowane (ponieważ pager wie lepiej). Twoje komentarze na temat pliku strony są jednak poprawne.
Jamie Hanrahan
1

Wyłącz plik stronicowania. Ogólnie zły pomysł, ale zrobi to, co chcesz.

Aby to zrobić, przejdź do: Panel sterowania \ System i zabezpieczenia \ System \

Zaawansowane ustawienia systemowe \ ustawienia wydajności \ karta zaawansowana \ zmiana (w pamięci wirtualnej) \ odznacz automatycznie, nie klikaj pliku stronicowania

To przykład, dlaczego złym pomysłem jest brak pliku strony. Jeśli ci się to nie przydarzy (masz wystarczającą ilość pamięci RAM), nie będzie żadnych problemów.

Całkowite usunięcie pliku stronicowania może spowodować więcej awarii dysku. Wyobraź sobie prosty scenariusz, w którym niektóre aplikacje uruchamiają się i wymagają 80% istniejącej pamięci RAM. To wymusiłoby bieżący kod wykonywalny z pamięci RAM - być może nawet kod systemu operacyjnego. Teraz za każdym razem, gdy te inne aplikacje - lub sam system operacyjny (!!) potrzebują dostępu do tych danych, system operacyjny musi wysyłać je ze sklepu z kopiami zapasowymi na dysku, co prowadzi do znacznego wstrząsu. Ponieważ bez pliku stronicowania służącego jako magazyn kopii zapasowych dla danych przejściowych, jedyne elementy, które można stronicować, to pliki wykonywalne i biblioteki DLL, które na początku miały nieodłączne magazyny kopii zapasowych.

Od /server/23621/any-benefit-or-detriment-from-removing-a-pagefile-on-an-8gb-ram-machine

soandos
źródło
7
Ogólnie odradzam wyłączanie pliku strony. Korzyści, o których myślisz, że tak naprawdę nie są.
Darth Android
W jego przypadku, jeśli naprawdę nigdy się nie zbliży, istnieją potencjalnie znaczące korzyści (brak HD jako wąskiego gardła dla wielu rzeczy może przyspieszyć uruchamianie procesów DUŻO). To po prostu może nie być warte ryzyka (stąd mój „to ogólnie zły pomysł”).
soandos
Komentarz downvoter?
soandos
@soandos Skomentowałem. Wyłączenie pliku strony obniży wydajność.
Darth Android
1

Nie jestem pewien co do tej odpowiedzi, ale wydaje mi się to rozsądne. Zamiast wyłączać plik strony, zmniejsz go do minimalnego rozmiaru rekomendacji 200mb. Myślę, że domyślnie jest to 3024 MB? Powinno to zmusić komputer do korzystania z większej ilości pamięci fizycznej, a także poprawić wydajność HD.

Architekt
źródło
1

Jeśli masz wersję Windows 7 Home Basic, Twój system operacyjny i tak nie może zużywać więcej niż 8 GB pamięci RAM . Myślę, że nikt o tym nie wspominał. Ponadto niektóre procesory nie obsługują również 16 GB pamięci RAM. Uważam, że potrzebujesz systemu i5 lub nowszego, aby uruchomić więcej niż 8 GB pamięci RAM. Nie jestem pewien co do procesorów AMD, chociaż na pewno istnieje limit pamięci RAM adresowanej również przez procesor. Twoje obciążenie pamięci RAM wydaje się w porządku i nie jest niczym niezwykłym. Trzeba będzie edytować wideo lub skomponować 24-bitową muzykę, aby użyć 16 GB pamięci RAM.

Schtruklyn
źródło
Prawda dla Windows 7 Home. Jednak w przypadku wersji Windows 10 Home limit wynosi 128 GB w systemach 64-bitowych: msdn.microsoft.com/en-us/library/windows/desktop/…
Andreas Bergström