Skocz do zawartości

Skrypt czyszczący Win10/Win11


Rekomendowane odpowiedzi

Opublikowano (edytowane)

S5-0.png

 

Poprzednie wersje i pełny opis aktualizacji / funkcji / zmian -> https://wowo89.de/pl/tuning-win10-win11-01.html

 

Aktualna wersja:

 

Wersja 5.0: (data wydania 24.05.2025)

>>POBIERZ<<

 

Pełna przebudowa skryptu w celu dostosowania do Win11 24H2 - z góry zaznaczam - nie testowane na starszych wersjach systemu - tzn. odpaliłem na 23H2 bez większych problemów, ale nie przeprowadzono dłuższych testów.

Dodam również że nie polecam odpalania na starszej wersji - i tak jak zawsze - pamiętaj (mimo że skrypt robi to automatycznie) o utworzeniu kopii zapasowej !! %-) nie posiadam wszystkich możliwych konfiguracji sprzętowych do wykonania testów - no i aż tyle czasu %-)

 

Punkt 2:

- Dodano "DiagTrack" i "WSearch" jako dodatkowe usługi niepotrzebne w wersji 24H2.
- Użyto net stop do natychmiastowego zatrzymania usług.
- Mechanizm blokowania uruchamiania aplikacji został rozszerzony o usuwanie wpisów w rejestrze (HKCU\Software\Microsoft\Windows\CurrentVersion\Run).
- Dodano zabezpieczenie w BackgroundAccessApplications, aby zapewnić, że aplikacje nie będą działać w tle.
- Wyłączanie funkcji rozruchu zostało rozszerzone o deletevalue dla useplatformtick w celu pełnego usunięcia.
- Klucz SecondLevelDataCache ustawiono na wartość 0, co odpowiada współczesnym procesorom i ich dynamicznej pamięci podręcznej.
- Zgodnie z wymaganiami wersji 24H2, DisablePagingExecutive pozostało aktywne dla wydajności w aplikacjach wymagających wysokiej responsywności.
- Tworzenie kluczy rejestru zostało zoptymalizowane dla systemu Windows 11 24H2.
- Usługi MMCSS - Poprawiono sposób konfiguracji z dodatkowym potwierdzeniem wykonania polecenia.
- Automatyczne odkrywanie folderów - Zastosowano wpis do rejestru zgodny z nowszymi wersjami systemu Windows, aby wyłączyć tę funkcję.
- Polecenia fsutil zostały dostosowane do systemu Windows 11, zapewniając wyłączenie kompresji, szyfrowania oraz śledzenia dostępu do plików.
- Ustawiono wartość 256 dla klucza PriorityClass dla kompatybilności z Windows 11 24H2.
- Dodano obsługę kluczy rejestru SensorPermissionState i Status w lfsvc do całkowitego wyłączenia śledzenia lokalizacji.
- Bufor podręczny Eksploratora plików - Zwiększono wartość do 8192, co może być bardziej efektywne w przypadku systemów z dużą ilością ikon.
- Czas zatrzymania myszy - Zmniejszono wartość do 1, co zapewnia maksymalnie szybkie reakcje na najechanie kursorem.
- Wyłączenie Copilot - Zaktualizowano klucz rejestru w Policies, który działa skutecznie na Windows 11 24H2 oraz Użyto TurnOffWindowsCopilot dla jednoznacznej kontroli funkcji.
- Zmieniono wartość SearchboxTaskbarMode, aby całkowicie ukryć pole wyszukiwania.
- Klucze rejestru związane z historią Eksploratora Windows, niepotrzebnymi aplikacjami i funkcjami systemowymi zostały zachowane jako bezpieczne do usunięcia.
- Dodano do usunięcia klucze rejestru związane z telemetrią i zbieraniem danych, które można bezpiecznie usunąć w celu poprawy prywatności i wydajności.
- Optymalizacja ustawień systemowych - Dodano klucz HungAppTimeout, aby przyspieszyć czas oczekiwania na zakończenie zawieszonych aplikacji.
- Klucz SystemPaneSuggestionsEnabled dodany dla pełnego wyłączenia sugestii i reklam w Windows 11 24H2.
- Dodano klucz RestrictTextCollection, aby zablokować zbieranie danych tekstowych.
- Wyłączono raportowanie błędów zarówno na poziomie użytkownika (HKCU), jak i systemu (HKLM).
- Opcja "Kopiuj do folderu" - Klucz rejestru dla opcji "Kopiuj do folderu" został dostosowany z dodatkowym ukryciem komunikatów konsoli (>nul), aby poprawić przejrzystość.
- Klucz PowerThrottling ustawiono na 0, co wyłącza tę funkcję zarządzania energią, poprawiając wydajność w systemach wymagających pełnych zasobów CPU.
- Dodano klucz DisableSearchBoxSuggestions w obszarze Policies\Microsoft\Windows\Explorer z wartością 1, co wyłącza sugestie w polu wyszukiwania.

Punkt 3:

- Polecenie Enable-ComputerRestore w PowerShell zostało uproszczone dla dysku C:\, aby uniknąć potencjalnych problemów z identyfikacją dysku systemowego.
- Wyłączono usługi, które nie są krytyczne dla działania systemu na starszych komputerach, takie jak RemoteRegistry, DiagTrack, Fax, WalletService, dmwappushservice, MapsBroker, FrameServer, AppXSvc, pla, wlidsvc, WbioSrvc, PcaSvc, PNRPAutoReg, RmSvc, WPCSvc, wisvc, i QWAVE.
- Usługi takie jak WSearch (indeksowanie), ShellHWDetection (wykrywanie sprzętu) i wuauserv (Windows Update) zostały ustawione na tryb "demand", co oznacza, że uruchomią się tylko wtedy, gdy będą potrzebne.
- Poprawiono ścieżkę do klucza AppCompatFlags\Layers dla zgodności z najnowszym systemem.
- WindowsCopilot - Klucz TurnOffWindowsCopilot w sekcji Policies został dodany dla pełnego wyłączenia tej funkcji w Windows 11 24H2.
- Usługa WpnService (Windows Push Notifications) została wyłączona, a dodatkowo WpnUserService (powiązana z użytkownikiem) została zatrzymana i usunięta, aby zapobiec zbędnym procesom w tle.
- W celu natychmiastowego zastosowania zmian, wszystkie powiązane procesy, takie jak explorer.exe i ShellExperienceHost.exe, są restartowane.
- Usunięto zbędne sekcje, takie jak obsługa parametru /includeuserservice, które nie były konieczne w kontekście tego skryptu.
- Zmieniono polecenia powercfg na pełną kompatybilność z Windows 11 24H2.
- Opcje takie jak standby-timeout, monitor-timeout, disk-timeout, i hibernate-timeout zostały ustawione na 0, co wyłącza odpowiednie oszczędzanie energii.
- Wyłączono animacje okien, ustawiając klucz MinAnimate na 0. -> Poprawiono dane binarne w kluczu UserPreferencesMask, dostosowując je do wyłączania animacji w Windows 11.

Nowości w Punkcie 3:

- Wyłączenie zbędnych zadań z Harmonogramu.
- Wyłączenie Windows Defender AntiSpyware
- Czyszczenie plików tymczasowych
- Restart Eksploratora Windows w celu zastosowania zmian

Punkt 4:

- Dodano polecenie naprawiające uszkodzone komponenty w obrazie systemowym za pomocą narzędzia RestoreHealth.
- Usunięcie niepotrzebnych plików w folderze %SystemRoot%\SoftwareDistribution\Download, które są powiązane z aktualizacjami systemowymi.
- Dodano polecenie sfc /scannow, aby sprawdzić i naprawić uszkodzone pliki systemowe.

Punkt 5:

- Usunięto polecenie sfc /scannow
- Dodano polecenie do analizy magazynu komponentów, które pozwala ocenić, czy magazyn wymaga czyszczenia. (/ResetBase)
- Zoptymalizowano skrypt dla różnych typów dysków twardych, uwzględniając odpowiednie operacje dla HDD (chkdsk + defragmentacja) oraz SSD/NVMe (tylko chkdsk).
- Dodano czyszczenie folderu SoftwareDistribution - usunięcie zbędnych plików aktualizacji z %SystemRoot%\SoftwareDistribution\Download.
- Poprawiono komunikaty o sukcesie lub błędzie.

Punkt6:

- Dodano kontrolę %errorlevel% przy każdej operacji, aby zweryfikować jej powodzenie i zwrócić odpowiedni komunikat w przypadku błędów.
- Dodano usunięcie zawartości folderu Prefetch, który może zawierać stare dane przyspieszające uruchamianie aplikacji.
- Operacja na koszu oparta na zmiennej %SystemDrive%, co zwiększa kompatybilność niezależnie od konfiguracji systemowej.
- Skrypt usuwa tylko pliki instalacyjne .exe oraz .msi, co zapobiega przypadkowemu usunięciu innych ważnych plików z folderu Pobrane.
- Poprawione zarządzanie uprawnieniami w celu usunięcia Windows.old:
        - Polecenie icacls nadaje pełne uprawnienia użytkownikowi do folderu Windows.old, co jest wymagane przed jego usunięciem.
        - Wyłączenie usług systemowych związanych z Windows Update (wuauserv), Background Intelligent Transfer Service (bits) oraz Windows Modules Installer (trustedinstaller), które mogą blokować usuwanie folderu Windows.old.
        - Skrypt weryfikuje, czy folder został rzeczywiście usunięty, i informuje użytkownika o wyniku.
        - W przypadku nieudanego nadania uprawnień lub innych problemów z dostępem, skrypt przechodzi do etykiety :skip_windows_old i pomija dalsze kroki dla Windows.old.
- Dodano sprawdzenie wyniku operacji (%errorlevel%) dla poszczególnych czynności, co pozwala na lepsze monitorowanie powodzenia lub błędów.
- Czyszczenie folderów TEMP innych użytkowników odbywa się przy jednoczesnym pominięciu folderu bieżącego użytkownika.
- Poprawiono usunięcie zawartości pamięci podręcznej miniatur, pulpitu, plików DLL i ikon, co może poprawić wydajność systemu na starszym sprzęcie.
- Poprawiono usunięcie plików logów z folderu %SystemRoot%\Logs dla poprawy przejrzystości i zwolnienia miejsca.
- Usuwanie pustych folderów z ProgramFiles i ProgramFiles(x86):
        - Operacja rd /s /q w połączeniu z dir /b /a-d dokładnie sprawdza, czy folder jest pusty, zanim zostanie usunięty.
        - Dodano sprawdzanie, czy folder został pomyślnie usunięty, oraz komunikaty o sukcesie lub błędzie operacji.
        - Każda operacja jest zakończona jasnym komunikatem informującym o wyniku próby usunięcia folderu.

Punkt 7:

- Użycie polecenia powercfg /list z filtrami w findstr pozwala dynamicznie przypisywać GUID dla dostępnych planów zasilania (High Performance, Balanced, Power Saver).
- Dodano mechanizm obsługi nieprawidłowych wyborów użytkownika. Skrypt informuje, jeśli wprowadzona wartość nie jest poprawna (np. nie jest liczbą 1, 2 lub 3).
- Wyraźne komunikaty przed i po ustawieniu planu zasilania ułatwiają zrozumienie, jaka operacja została wykonana.

Punkt 8:

- Skrypt dynamicznie usuwa większość preinstalowanych aplikacji takich jak Office, ToDo, Maps, Solitaire, Candy Crush i inne. Wykorzystuje w tym celu DISM /Remove-ProvisionedAppxPackage.
- Lista aplikacji jest przetwarzana w pętli, co zmniejsza redundancję w kodzie.
- Odpięcie aplikacji z przypiętych na pasku zadań i menu Start - Proces został zoptymalizowany przy użyciu PowerShell i poprawionych metod, zapewniając niezawodne działanie.
- Uproszczone instrukcje PowerShell - Zastosowano bardziej efektywne komendy do usuwania aplikacji i przypiętych elementów.

Punkt 9:

- Skrypt sprawdza, czy plik DXSETUP.exe istnieje, zanim rozpocznie instalację. Jeśli plik nie zostanie znaleziony, użytkownik otrzyma jasną informację o problemie.
- Polecenie start /wait zapewnia, że proces instalacji DirectX zostanie zakończony przed kontynuowaniem skryptu.
- Po instalacji sprawdzany jest kod błędu (%errorlevel%). W przypadku sukcesu wyświetla się stosowny komunikat, a w razie niepowodzenia użytkownik jest informowany o błędzie.

- Każda operacja jest zakończona przejrzystym komunikatem o sukcesie, aby użytkownik mógł łatwo zrozumieć, co zostało wykonane, a także by ułatwić śledzenie działania skryptu.

 

Temat przeniesiony z forum.pclab.pl https://forum.pclab.pl/topic/1374178-skrypt-czyszczący-win10win11/ mam nadzieję że zostanie również i tutaj podwieszony

Edytowane przez wowo89
  • Like 3
  • Upvote 3
Opublikowano (edytowane)

W fazie testowej znajduje się właśnie ostatnia wersja skryptu dostosowana jeszcze do wszystkich wersji systemu Windows 10 i Windows 11 poza najnowszą odsłoną 24H2. Będzie to ostatnia wersja w pełni zgodna z Windows 10.

 

Premiera skryptu zapewne w dniu jutrzejszym jeśli wszystkie testy wypadną poprawnie.

 

Nowości:

 

- Skrypt podczas wykonywania punktu 2 i 3 tworzy punkt przywracania systemu

- Skrypt podczas wykonywania punktu 2 i 3 tworzy na dysku systemowym folder "RegistryBackup" a w nim tworzona jest pełna kopia zapasowa rejestru systemowego.

- dodano nowy punkt menu - Skanowanie antywirusowe - skrypt wykona aktualizację definicji Microsoft Defendera oraz szybkie skanowanie dysku systemowego, następnie pobierze ESET Online Scanner i go uruchomi w celu wybrania skanowania przez nas :)

- Podczas wykonywania czyszczenia dysku systemowego - skanowanie folderów ProgramFiles i ProgramFiles(x86) w celu znalezienia pustych folderów - skrypt sprawdzi czy mają jakąś zawartość i jeśli nie, zostaną one usunięte

- dodano nowy punkt menu - Przyspieszenie działania internetu:

    * Czyszczenie pamięci podręcznej DNS
    * Resetowanie ustawień TCP/IP
    * Resetowanie ustawień Winsock
    * Dostosowanie ustawień TCP
    * Wyłączenie funkcji ECN
    * Zwiększenie rozmiaru bufora TCP
    * Optymalizacja sieci pod kątem gier
    * Konfiguracja optymalnych ustawień QoS

- Podczas wykonywania punktu 2 - Tuning Win10/Win11 skrypt zapyta użytkownika czy utworzyć na pulpicie folder "GodMode" 

 

(Folder "GodMode" - specjalny folder, który zapewnia dostęp do zaawansowanych ustawień systemowych i narzędzi administracyjnych w jednym miejscu. Użytkownik może przeglądać oraz dostosowywać różnorodne ustawienia, takie jak zarządzanie urządzeniami, kontami użytkowników, zabezpieczeniami czy opcjami sieciowymi. Folder ten nie zawiera dodatkowych funkcji, ale organizuje istniejące ustawienia systemowe w łatwo dostępnym, przejrzystym widoku.)

Edytowane przez wowo89
Opublikowano (edytowane)

Wersja 3.5: (data wydania 03.11.2024)

>>POBIERZ<<

- Skrypt podczas wykonywania punktu 2 i 3 tworzy punkt przywracania systemu

- Skrypt podczas wykonywania punktu 2 i 3 tworzy na dysku systemowym folder "RegistryBackup" a w nim tworzona jest kopia zapasowa rejestru systemowego.

- dodano nowy punkt menu - Skanowanie antywirusowe - skrypt wykona aktualizację definicji Microsoft Defendera oraz szybkie skanowanie dysku systemowego, następnie pobierze ESET Online Scanner i go uruchomi w celu wybrania skanowania przez nas

- Podczas wykonywania czyszczenia dysku systemowego - skanowanie folderów ProgramFiles i ProgramFiles(x86) w celu znalezienia pustych folderów - skrypt sprawdzi czy mają jakąś zawartość i jeśli nie, zostaną one usunięte

- dodano nowy punkt menu - Przyspieszenie działania internetu:

    * Czyszczenie pamięci podręcznej DNS

    * Resetowanie ustawień TCP/IP

    * Resetowanie ustawień Winsock

    * Dostosowanie ustawień TCP

    * Wyłączenie funkcji ECN

    * Zwiększenie rozmiaru bufora TCP

    * Optymalizacja sieci pod kątem gier

    * Konfiguracja optymalnych ustawień QoS

    * Ustawienie karty sieciowej w tryb wysokiej wydajności

- Podczas wykonywania punktu 2 - Tuning Win10/Win11 skrypt zapyta użytkownika czy utworzyć na pulpicie folder "GodMode" 

Edytowane przez wowo89
Opublikowano

@wowo89

 

 

    * Resetowanie ustawień TCP/IP

    * Resetowanie ustawień Winsock

    * Dostosowanie ustawień TCP

    * Wyłączenie funkcji ECN

    * Zwiększenie rozmiaru bufora TCP

    * Optymalizacja sieci pod kątem gier

    * Konfiguracja optymalnych ustawień QoS

    * Ustawienie karty sieciowej w tryb wysokiej wydajności

 

Opiszesz co wnoszą do optymalizacji w/w modyfikacje ??

Opublikowano (edytowane)

Skrypt spisuje się świetnie, zarówno na mojej maszynie, jak i innej, gdzie jest obecnie i5 8400,a był i3 8100. Cyberpunk na takich 4 rdzeniach jakoś chodził, a na ryzenie 5500 skrojonym do 44w, trzyma stabilne 60fps nawet z RT. Oczywiście szybki ram trochę ratuje sytuację - 4000mhz oraz if na 2000mhz.

Jedynie polecam zwiększyć pamięć wirtualną, bo potrafi zapełnić całą, gdy jest to tylko 16gb. Nie wiem czy to skrypt, ale jakoś mało ramu ładuje ostatnio CP2077, dobił do ~9gb, a witualna do +16gb. Przed aktualizacją do najnowszej wersji skryptu chyba ładowało więcej pamięci, ale nie patrzyłem uważnie na ram.
Znaczy najnowszy to u mnie 3.0 :E Więc później sprawdzę czy 3.5 coś zmienia.
@wowo89Jeśli Ci się nadal chce to możesz dodać dodatkową funkcję, która ustawia zarządzanie pamięcią wirtualną i ramem do domyślnych windowsa oraz drugi, który zmienia tylko zarządzanie na twoje. Może jest to niepotrzebne, bo muszę sprawdzić 3.5, będąc na 3.0. Polecam też dodać uwagę do głównego ekranu skryptu, gdzie zaleca zwiększenie pamięci wirtualnej do minimum x1.5 wielkości pamięci ram przy 16gb oraz domyślnych, czyli x2 min oraz x4 max przy mniejszej ilości. 

Edit. Na 3.5 jest to samo, ram trzyma się w okolicy 9gb, a wirtualna pamięć chce przekroczyć 16gb, gdzie przy ustawieniach ze skryptów wysypuje się, ze względu na max 16gb, zamiast np. 24gb. Sam ustawiam 24gb jako min oraz 32gb jak max. Wolałbym żeby to szło w ram :P Może źle to pamiętam, bo najdłużej używałem skryptu na gtx1660ti, a tam RT nie testowałem, gdzie dopiero przy nim wychodzi problem pamięci. 
CP2077 tak zarządza pamięcią przy 8gb vram, 16gb ram, nawet w 4k.

image.png.e621a4cccf410dfeae35da08d40396b8.pngimage.png.73de6fb1e89be34e69cf3933ed96b3c7.png

Edytowane przez musichunter1x
Opublikowano

Ten skryp u mnie wyłączał zawsze na każdej wersji pamięć wirtualną całkowicie i trzeba było włączać od nowa po restarcie ;) jak ktoś ma w11 24h2 to nie polecam się tym bawić w obecnej wersji, czekać na następną.

  • Upvote 2
Opublikowano (edytowane)
W dniu 5.11.2024 o 13:06, sniper76 napisał(a):

@wowo89

 

 

    * Resetowanie ustawień TCP/IP

    * Resetowanie ustawień Winsock

    * Dostosowanie ustawień TCP

    * Wyłączenie funkcji ECN

    * Zwiększenie rozmiaru bufora TCP

    * Optymalizacja sieci pod kątem gier

    * Konfiguracja optymalnych ustawień QoS

    * Ustawienie karty sieciowej w tryb wysokiej wydajności

 

Opiszesz co wnoszą do optymalizacji w/w modyfikacje ??

Czyszczenie pamięci podręcznej DNS:
Usuwa zapisane wyniki DNS z pamięci podręcznej, co pozwala systemowi na nowe rozpoznanie adresów domenowych, przydatne w przypadku zmiany serwera DNS lub problemów z łącznością.

 

Resetowanie ustawień TCP/IP:
Resetuje stos TCP/IP do ustawień domyślnych. Przydatne w przypadku problemów z połączeniem, ponieważ usuwa błędne ustawienia protokołu IP.

 

Resetowanie ustawień Winsock:
Przywraca domyślne ustawienia Winsock, co może pomóc w rozwiązaniu problemów z siecią, zwłaszcza gdy aplikacje blokują lub modyfikują połączenia.

 

Zmiana ustawień TCP:
Wyłącza automatyczne dostosowanie rozmiaru okna TCP. Umożliwia bardziej stabilne połączenie, choć może nieco ograniczyć wydajność w niektórych przypadkach.

 

Wyłączanie funkcji ECN (Explicit Congestion Notification):
ECN umożliwia przesyłanie informacji o przeciążeniu między urządzeniami. Wyłączenie może zmniejszyć opóźnienia, ale wpływa na zarządzanie przeciążeniem.

 

Zwiększanie rozmiaru bufora TCP:
Zwiększa rozmiar bufora TCP, co może poprawić wydajność połączenia, szczególnie w przypadku dużych transferów danych. Większy bufor może zmniejszyć liczbę operacji wysyłania i odbierania pakietów.

 

Optymalizacja systemu pod kątem gier:
Wyłącza tryb gry Windows Game Bar, co może zwolnić zasoby systemowe.

Skrypt pobiera nazwę interfejsu sieciowego i SSID (nazwę sieci), aby skonfigurować QoS i inne ustawienia specyficzne dla danej sieci.

Ustawia QoS dla sieci Wi-Fi, co może przydzielić więcej zasobów na określone aplikacje, takie jak gry lub VoIP.

 

Konfiguracja optymalnych ustawień sieciowych:
Ustawia maksymalny rozmiar jednostki transmisji (MTU) na 1500 bajtów, co jest standardową wartością dla większości sieci, aby zapobiec fragmentacji pakietów.

 

Tryb wysokiej wydajności karty sieciowej:
Ustawia interfejs na tryb wysokiej wydajności, co pozwala na pełne wykorzystanie zasobów karty sieciowej.

 

Zatrzymywanie niepotrzebnych usług:
Wyłącza usługi sieciowe, które mogą nie być potrzebne, takie jak udostępnianie mediów przez Windows Media Player. Może to zmniejszyć obciążenie systemu i poprawić wydajność.

 

dokładnie to robi skrypt w wersji opisowej i słownej %-) :D 

 

 

19 godzin temu, musichunter1x napisał(a):

Skrypt spisuje się świetnie, zarówna na mojej maszynie, jak i innej, gdzie jest obecnie i5 8400,a był i3 8100. Cyberpunk na takich 4 rdzeniach jakoś chodził, a na ryzenie 5500 skrojonym do 44w, trzyma stabilne 60fps nawet z RT. Oczywiście szybki ram trochę ratuje sytuację - 4000mhz oraz if na 2000mhz.

Jedynie polecam zwiększyć pamięć wirtualną, bo potrafi zapełnić całą, gdy jest to tylko 16gb. Nie wiem czy to skrypt, ale jakoś mało ramu ładuje ostatnio CP2077, dobił do ~9gb, a witualna do +16gb. Przed aktualizacją do najnowszej wersji skryptu chyba ładowało więcej pamięci, ale nie patrzyłem uważnie na ram.
Znaczy najnowszy to u mnie 3.0 :E Więc później sprawdzę czy 3.5 coś zmienia.
@wowo89Jeśli Ci się nadal chce to możesz dodać dodatkową funkcję, która ustawia zarządzanie pamięcią wirtualną i ramem do domyślnych windowsa oraz drugi, który zmienia tylko zarządzanie na twoje. Może jest to niepotrzebne, bo muszę sprawdzić 3.5, będąc na 3.0. Polecam też dodać uwagę do głównego ekranu skryptu, gdzie zaleca zwiększenie pamięci wirtualnej do minimum x1.5 wielkości pamięci ram przy 16gb oraz domyślnych, czyli x2 min oraz x4 max przy mniejszej ilości. 

Edit. Na 3.5 jest to samo, ram trzyma się w okolicy 9gb, a wirtualna pamięć chce przekroczyć 16gb, gdzie przy ustawieniach ze skryptów wysypuje się, ze względu na max 16gb, zamiast np. 24gb. Sam ustawiam 24gb jak min oraz 32gb jak max. Wolałbym żeby to szło w ram :P Może źle to pamiętam, bo najdłużej używałem skryptu na gtx1660ti, a tam RT nie testowałem, gdzie dopiero przy nim wychodzi problem pamięci. 
CP2077 tak zarządza pamięcią przy 8gb vram, 16gb ram, nawet w 4k.

image.png.e621a4cccf410dfeae35da08d40396b8.pngimage.png.73de6fb1e89be34e69cf3933ed96b3c7.png

no właśnie tego przypadku nie rozumiem, generalnie powinien wykorzystywać cały RAM.. nawet przy całkowicie wyłączonym pliku wymiany (pamięci wirtualnej)

Edytowane przez wowo89
  • Thanks 2
Opublikowano
4 godziny temu, wowo89 napisał(a):

no właśnie tego przypadku nie rozumiem, generalnie powinien wykorzystywać cały RAM.. nawet przy całkowicie wyłączonym pliku wymiany (pamięci wirtualnej)

Możliwe że to przypadek samej gry? Możnaby sprawdzić, czy jest inaczej bez modyfikacji odpowiedzialnych za zarządzanie ramem.

Opublikowano (edytowane)

jeśli samo zarządzanie pamięci chcesz przywrócić do wartości domyślnych to odpal CMD jako administrator i wklep:
 

REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v "PagingFiles" /t REG_MULTI_SZ /d "C:\pagefile.sys 0 0" /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v "DisablePagingExecutive" /t REG_DWORD /d 1 /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v "PagingFiles" /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Memory Threshold" /v "EnableUsageThreshold" /f
reg delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Memory Threshold" /v "UsageThreshold" /f

 

te funkcje przywrócą ustawienia domyślne zarządzania pamięcią RAM i plikiem wymiany, wtedy będziesz mógł przetestować czy jest jakaś różnica

 

generalnie nawiązując do Twojej wiadomości jeszcze, plik wymiany nie może być aż tak duży.. 1x pamięć to max w przypadku posiadania 4gb.. jeśli pamięci jest mniej, to dysk max SSD, którego transfery w przypadku korzystania z pliku wymiany spowodują straszne zamulenie systemu, pamięć wirtualną najlepiej na sztywno ustawiać nie przekraczając wartości 4GB w przypadku dysków SSD, HDD to już w ogóle max 256mb :D dla nowych NVMe można więcej, ale nie bardzo widzę sens, bo mając dysk NVMe mamy przynajmniej 16GB ramu, co jest w zupełności wystarczające, plik wymiany to tylko awaryjne sytuacje więc max to 1-2GB na sztywno, aczkolwiek ja przy 32GB RAMu mam plik wymiany na 512mb ustawiony i żadnych problemów nigdy nie miałem, aczkolwiek jedyne w co gram to League Of Legends %-) 

Edytowane przez wowo89
Opublikowano (edytowane)
2 godziny temu, wowo89 napisał(a):

generalnie nawiązując do Twojej wiadomości jeszcze, plik wymiany nie może być aż tak duży..

Ponoć standard windows to nawet aż x4 :E U mnie po prostu potrafi nie uruchomić niektórych gier, jeśli jest 16gb np. COH3.
Teraz coś windows strajkuje, bo nie da sobie zredukować poniżej 16gb. Skrypt + reset tego nie zmienił.
Wróciłem do domyślnych ustawień ramu poprzez twoje komendy i Cyberpunk nadal ładuje +16gb w wirtualną. Może ten typ tak ma, ale szkoda że nie da się zmusić aplikacji do używania ramu, przynajmniej u mnie. 

Machnę jeszcze raz skrypt 2 + 5 i zobaczę czy coś zmieni. Nie odczułem żadnych problemów, więc może windows coś źle odczytuje? Tak czy inaczej, duża pamięć wirtualna najwidoczniej nie dobija mi dysku, o ma tylko 13470gb zapisane przy 7152 godzinach, a sporo przerzucam przez niego.
Edit. Bez zmian, więc jednak coś gra nie chce ramu lub mój sprzęt coś zdziwia.

Edytowane przez musichunter1x
Opublikowano
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v DisablePagingExecutive /t REG_DWORD /d 1 /f
fsutil behavior set memoryusage 2

a spróbuj te dwa polecenia + restart systemu :D zmieni zarządzanie pamięcią jeszcze inaczej niż robi to mój skrypt

Opublikowano (edytowane)
44 minuty temu, wowo89 napisał(a):
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v DisablePagingExecutive /t REG_DWORD /d 1 /f
fsutil behavior set memoryusage 2

zmieni zarządzanie pamięcią jeszcze inaczej niż robi to mój skrypt

Cyberbug2077 nadal nie widzi różnicy, ale gdy otworzyłem przeglądarkę to wywaliło przez brak pamięci wirtualnej :E 
Jakoś teraz ten skrypt nie może obniżyć poniżej 16gb, a zużywa +16gb, ~9gb ramu. Wszystko działa, ale po prostu człowiek się drapie po głowie.
Obstawiam, że system i programy to źle odczytują lub coś zwaliłem w ustawieniach ramu przy podkręcaniu i powrocie do domyślnych. 

Jeśli ustawię ponad 16GB wirtualnej to nie ma żadnych problemów. Może coś machnąłeś się przy składaniu skryptu i nowsze wersje już nie przerzucają wszystkiego do ramu, do momentu wysokiego % zapełnienia? A może przy 50% ramu teraz ładuje ile się da we wirtualną?
Tak czy inaczej skrypt który miał przywrócić domyślne zachowywał się podobnie. Szkoda że windows nie daje takich ustawień jako suwaki. 

@wowo89A Przepraszam, głupi jestem. Pamięć wirtualna w HWinfo to teraz chyba sam ram. Zakładka wydajność windowsa już pokazuje wysoką deklarację, ale wyrzuca nawet przy ładowaniu benchmark cyberpunka, więc oddaj mi mój pagefile :E 
Muszę przestać patrzeć w HWinfo, chyba że pamięć wirtualna= ram + page file? image.png.576dd8e1a72be96649ae68ad232a796d.pngimage.thumb.png.7e936e60ff739ec34336e73df2319abf.png

Edytowane przez musichunter1x
Opublikowano

szczerze w HWInfo aż tak nigdy nie sprawdzałem :D%-) generalnie jak mówię u mnie na żadnej wirtualce nie było problemów i na moim PC z 32GB RAMu też nie widzi problemów mimo ustawienia pagefile na 512mb

 

pagefile.png

dokładnie tak to u mnie wygląda 32GB DDR4 pracują na 3600 aktualnie - pagefile na 512mb, ale jak to HWInfo pokazuje użycie pliku wymiany 0,0% - aczkolwiek wielkość pamięci źle odczytuje bo pamięć wirtualną i pamięć fizyczną jako prawie 22GB i obie w takim samym użyciu, więc coś z HWInfo jest nie tak %-) 

Opublikowano

skrypt w sumie powstał na początku na moje potrzeby i jak zajrzysz na stronę i historię zmian to zobaczysz że na początku nie było czegoś takiego jak menu :D był mi potrzebny do automatyzacji i przyspieszenia zmian na komputerach które robię klientom :D w pewnym momencie skryptem postanowiłem się podzielić na forum (jeszcze na pclabie) i to właśnie dzięki sugestiom powstało menu :) i w sumie bardzo fajnie, bo nie potrzebuję teraz 10 skryptów jak kiedyś, tylko wszystko zintegrowałem w jednym %-) 

Godzinę temu, galakty napisał(a):

Niestety ale skrypt wyłącza pamięć wirtualną i potem są problemy, dlatego nie lubię all-in-one, bo nie masz kontroli nad tym co robisz... 

kontrolę właśnie masz, dzięki Menu które powstało przez sugestie użytkowników forum :) korzystasz z opcji tuningu, a następnie punkt 1 z menu i ustawiasz pamięć wirtualną według potrzeb/uznania/zaleceń :) 

  • Upvote 1
  • 2 tygodnie później...
Opublikowano

Kolejna wersja skryptu w budowie :D niestety M$ sporo namieszał i każdą jedną funkcję z osobna muszę przeglądać :D 

 

:opcja1
cls
:: Info
echo Optymalizacja pliku wymiany w systemie Windows11 24H2 by WoWo89
echo ---------------------------------------------------------------
echo Skrypt dostosowuje plik wymiany do ilości zainstalowanego RAM i wybiera najszybszy dostępny dysk SSD.
echo ---------------------------------------------------------------
echo.

:: Pobierz ilość zainstalowanej pamięci RAM (w MB)
for /f "tokens=2 delims==" %%A in ('wmic computersystem get totalphysicalmemory /value') do set /a ramMB=%%A/1024/1024

:: Wyświetl ilość pamięci RAM
echo Wykryto %ramMB% MB pamięci RAM.

:: Określ rozmiar pliku wymiany w zależności od ilości RAM
if %ramMB% GEQ 32000 (
    set minPageSize=512
    set maxPageSize=512
) else if %ramMB% GEQ 16000 (
    set minPageSize=1024
    set maxPageSize=1024
) else if %ramMB% GEQ 8000 (
    set minPageSize=2048
    set maxPageSize=2048
) else (
    set minPageSize=4096
    set maxPageSize=4096
)

echo Ustawianie pliku wymiany na: %minPageSize% MB - %maxPageSize% MB.

:: Sprawdź dyski i wybierz najszybszy SSD
echo Sprawdzanie dostępnych dysków...
for /f "tokens=1 delims=" %%D in ('wmic diskdrive where "MediaType='Fixed hard disk media' or MediaType='SSD'" get DeviceID ^| findstr "\\\\"') do (
    set fastestDisk=%%D
    echo Znaleziono dysk: %%D (wybrano jako najszybszy).
    goto foundDisk
)

:foundDisk
if not defined fastestDisk (
    echo Nie znaleziono odpowiedniego dysku SSD lub HDD. Anulowanie operacji.
    pause
    goto :menu
)

:: Ustaw plik wymiany na najszybszym dysku
set fastestDriveLetter=%fastestDisk:~0,2%
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v "PagingFiles" /t REG_MULTI_SZ /d "%fastestDriveLetter%\pagefile.sys %minPageSize% %maxPageSize%" /f

echo Plik wymiany został skonfigurowany na dysku %fastestDriveLetter% z rozmiarem %minPageSize% - %maxPageSize% MB.

:: Zakończenie
echo Optymalizacja zakończona. Zalecane jest ponowne uruchomienie systemu po zakończeniu korzystania ze skryptu.


pause
goto :menu

 

jeśli ktoś ma ochotę na testowanie wystarczy w skrypcie punkt 1 podmienić :D dostosowanie automatyczne pamięci wirtualnej  w systemie Win11 24H2 %-) 

  • Like 1
Opublikowano

jak zapatrujecie się na kwestię Copilot`a ?? %-) planuję dodać do skryptu podczas wykonywania punktu 2 aby skrypt pytał użytkownika czy wyłączyć tą funkcję czy pozostawić bez zmian :D dla mnie ma to sens :) ale z chęcią poznam i wasze zdanie

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...