Υψηλή χρήση μνήμης στα Windows 10 (άγνωστος λόγος)

Πριν από λίγες ημέρες αναβάθμισα τον υπολογιστή μου σε Windows 10. Ωστόσο, μετά από κάποια χρήση ο υπολογιστής μου άρχισε να επιβραδύνει μέχρι που ήταν αδύνατο να χρησιμοποιηθεί - αυτό οφειλόταν στην υψηλή χρήση μνήμης. Μετά από μια επανεκκίνηση, όλα επανήλθαν στο φυσιολογικό (συνολική χρήση περίπου 25% των 8GB μνήμης RAM). Ωστόσο, κατά τη διάρκεια μερικών ωρών χρήσης η μνήμη συσσωρεύεται και πάλι στο 70%, και αν δεν γίνει επανεκκίνηση πηγαίνει περαιτέρω στο 100%, και αργότερα ακόμη και παγώνει. Ο διαχειριστής εργασιών δεν βοηθάει πολύ, καθώς δεν εμφανίζει όλες τις διεργασίες (προστέθηκαν στιγμιότυπα οθόνης παρακάτω). Δοκίμασα επίσης το RAMMap, αλλά δίνει σφάλμα: "error refreshing database". Δοκίμασα να ψάξω στο Googling αυτή την ερώτηση, αλλά χωρίς ιδιαίτερη επιτυχία.

Δεν γνωρίζω πολλά για τους υπολογιστές, αλλά ίσως κάποιοι από εσάς γνωρίζουν αυτό το θέμα ή θα μπορούσαν να βοηθήσουν να βρω τι χρησιμοποιεί τη μνήμη RAM μου.

Λύση

Έχετε διαρροή μνήμης που προκαλείται από ένα πρόγραμμα οδήγησης. Κοιτάξτε την υψηλή τιμή της μη σελιδοποιημένης μνήμης του πυρήνα. Στην περίπτωσή σας αυτή είναι πάνω από 3,7 GB. Μπορείτε να χρησιμοποιήσετε το poolmon για να δείτε ποιος οδηγός προκαλεί την υψηλή χρήση.

Εγκαταστήστε το Windows WDK, εκτελέστε το poolmon, ταξινομήστε το μέσω του P μετά τον τύπο της πισίνας ώστε η μη σελιδοποιημένη να είναι στην κορυφή και μέσω του B μετά τα bytes για να δείτε την ετικέτα που χρησιμοποιεί την περισσότερη μνήμη. Εκτελέστε το poolmon πηγαίνοντας στο φάκελο όπου είναι εγκατεστημένο το WDK, μεταβείτε στο Tools (ή C:\Program Files (x86)\Windows Kits\10\Tools\x64) και κάντε κλικ στο poolmon.exe.

Τώρα κοιτάξτε ποια poolag χρησιμοποιεί τη μεγαλύτερη μνήμη, όπως φαίνεται εδώ:

Τώρα ανοίξτε μια προτροπή cmd και εκτελέστε την εντολή findstr. Για να το κάνετε αυτό, ανοίξτε την προτροπή cmd και πληκτρολογήστε cd C:\Windows\System32\drivers. Στη συνέχεια, πληκτρολογήστε findstr /s __ *.*, όπου __ είναι η ετικέτα (το αριστερότερο όνομα στο poolmon). Κάντε αυτό για να δείτε ποιος οδηγός χρησιμοποιεί αυτή την ετικέτα:

Τώρα, μεταβείτε στο φάκελο drivers (C:\Windows\System32\drivers) και κάντε δεξί κλικ στον εν λόγω οδηγό (intmsd.sys στο παραπάνω παράδειγμα εικόνας). Κάντε κλικ στην επιλογή Properties (Ιδιότητες), μεταβείτε στην καρτέλα details (Λεπτομέρειες) για να βρείτε το Product Name (Όνομα προϊόντος). Αναζητήστε μια ενημέρωση για το συγκεκριμένο προϊόν.

Εάν η ετικέτα πισίνας εμφανίζει μόνο προγράμματα οδήγησης των Windows ή αναφέρεται στο αρχείο poolag.txt ("C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\triage\pooltag.txt")

πρέπει να χρησιμοποιήσετε το xperf για να εντοπίσετε τι προκαλεί τη χρήση. Εγκαταστήστε το WPT από το Windows SDK, ανοίξτε ένα cmd.exe ως διαχειριστής και εκτελέστε αυτό:

xperf -on PROC_THREAD+LOADER+POOL -stackwalk PoolAlloc+PoolFree+PoolAllocSession+PoolFreeSession -BufferSize 2048 -MaxFile 1024 -FileMode Circular && timeout -1 && xperf -d C:\pool.etl

καταγράψτε 30 -60s της ανάπτυξης. Ανοίξτε το ETL με το WPA.exe, προσθέστε τις γραφικές παραστάσεις της πισίνας στο παράθυρο ανάλυσης.

Τοποθετήστε τη στήλη poolag στην πρώτη θέση και προσθέστε τη στήλη stack. Τώρα φορτώστε τα σύμβολα μέσα στο WPA.exe και αναπτύξτε τη στοίβα της ετικέτας που είδατε στο poolmon.

9

Τώρα βρείτε άλλους οδηγούς 3ου μέρους που μπορείτε να δείτε στη στοίβα. Εδώ η ετικέτα Thre (Thread) χρησιμοποιείται από το AVKCl.exe της G-Data. Αναζητήστε ενημερώσεις οδηγών/προγραμμάτων για να το διορθώσετε.


Ο χρήστης Hristo Hristov παρείχε ένα ίχνος με υψηλή χρήση του FMfn κατά την αποσυμπίεση αρχείων:

11

Η ετικέτα χρησιμοποιείται από τον οδηγό WiseFs64.sys που αποτελεί μέρος του προγράμματος "Wise Folder Hider". Η αφαίρεσή της διορθώνει τη διαρροή.


Ο χρήστης Samuil Dichev παρείχε ένα ίχνος με υψηλή χρήση των FMic και Irp.

13

14

Οι ετικέτες χρησιμοποιούνται από το πρόγραμμα Razor Cortex.

Στο δείγμα του χρήστη chr0n0ss η χρήση των FMic και Irp προκαλείται από το F-Secure Antivirus Suite:

17

Η αφαίρεσή του και η χρήση του Windows Defender διόρθωσε το πρόβλημα γι' αυτόν.


Σχόλια (34)

αυτός ο τύπος μπορεί να έχει μια κάρτα δικτύου μάρκας Killer Networking (προηγουμένως Bigfoot networking).

Είχα τρελαθεί προσπαθώντας να καταλάβω γιατί είχα μια τεράστια διαρροή μνήμης και μάλιστα έκανα μια εντελώς καθαρή εγκατάσταση και αμέσως μετά την εγκατάσταση είχα μια διαρροή μνήμης. Φυσικά εγκατέστησα τους οδηγούς δικτύου και τους οδηγούς της κάρτας γραφικών αλλά αυτό ήταν όλο.

Έψαξα στο Google... Βρήκα αυτό το νήμα που έλεγε ότι ήταν ο οδηγός δικτύου του, στη συνέχεια έψαξα στο Google "killer memory leak" και είδα χτυπήματα για αυτό και διαπίστωσα ότι ήταν η ίδια η εφαρμογή killer και όχι μόνο στα windows 10.

Τώρα είμαι χρυσός... Έτσι, αν κάποιος άλλος έχει αυτό το θέμα και έχει ένα από τα πολλά gaming boards ή φορητούς υπολογιστές που έχουν μια killer NIC μπορείτε πιθανώς απλά να απενεργοποιήσετε την killer app από την εκκίνηση. Αλλά αυτό που έκανα ήταν να απεγκαταστήσω εντελώς το πρόγραμμα οδήγησης που παρέχεται από την ASROCK και στη συνέχεια να εγκαταστήσω το τελευταίο πακέτο μόνο για το πρόγραμμα οδήγησης από την επίσημη τοποθεσία δικτύωσης killer. Είναι το μικρότερο ~30mb download. Εάν η λήψη σας είναι πιο κοντά ή πάνω από 100mb τότε πήρατε το λάθος.

Θα χάσετε όλα όσα κάνουν τον killer να ξεχωρίζει (το λογισμικό QoS), αλλά γι' αυτό υπάρχει ένας καλός δρομολογητής... Ειδικά από τη στιγμή που το killer app χειρίζεται μόνο το QoS των εφαρμογών που τρέχουν στον υπολογιστή σου και δεν κάνει τίποτα για το δίκτυό σου συνολικά.

Σχόλια (4)

Η αποδεκτή απάντηση του magicandre1981 είναι η σωστή απάντηση σε αυτό το πρόβλημα, αν η χρήση της RAM συνεχίζει να ανεβαίνει στο 100%, τότε πιθανότατα υπάρχει διαρροή μνήμης.

Ωστόσο, αν έχετε έρθει σε αυτή τη σελίδα επειδή η χρήση μνήμης των Windows 10 είναι υψηλή αλλά παραμένει σταθερή (όπως στην περιοχή 60%-90%), πιθανότατα δεν έχετε πρόβλημα. Τα Windows 10 χρησιμοποιούν τη μνήμη RAM πιο αποτελεσματικά από τις προηγούμενες εκδόσεις. Αυτό οφείλεται στο γεγονός ότι η αχρησιμοποίητη μνήμη RAM είναι σπαταλημένη μνήμη RAM.

Τα σύγχρονα λειτουργικά συστήματα έχουν από καιρό αντικαταστήσει τα σπάνια χρησιμοποιούμενα δεδομένα μνήμης σε ένα αρχείο σελίδων στο σκληρό δίσκο, προκειμένου να απελευθερώσουν τη μνήμη RAM για τα πιο συχνά απαιτούμενα δεδομένα μνήμης. (Το σύστημά μου Win 10 έχει 8GB RAM και ένα pagefile 12GB.) Ωστόσο, είναι αργή η ανάκτηση αυτών των δεδομένων πίσω από το δίσκο και τα Windows 10 θα συμπιέσουν τη μνήμη στην οποία γίνεται σπάνια πρόσβαση και θα την αποθηκεύσουν στη διεργασία του συστήματος (στη μνήμη RAM). Είναι πιο γρήγορο να αποσυμπιέσετε αυτά τα δεδομένα παρά να τα ανακτήσετε από τον σκληρό δίσκο (ακόμη και από έναν SSD). Επειδή η μνήμη RAM είναι ως επί το πλείστον γεμάτη, δεν σημαίνει ότι δεν θα'μπορείτε να εκτελείτε περισσότερα πράγματα, εάν απαιτείται περισσότερη RAM, τότε το Win 10 θα μετακινήσει μέρος αυτής της συμπιεσμένης μνήμης στο αρχείο σελίδων για να απελευθερώσει μνήμη RAM για νέες εφαρμογές.

Εάν διαπιστώνετε συνεχώς ότι η διαδικασία του συστήματός σας χρησιμοποιεί περισσότερο από 1GB RAM (όπως εγώ), τότε πιθανώς έχετε πάρα πολλές καρτέλες του προγράμματος περιήγησης ανοιχτές (όπως εγώ). Μια επέκταση όπως το OneTab μπορεί να σας βοηθήσει.

Σχόλια (3)