Condividi tramite


Usare perfmon per determinare se esiste una perdita di memoria

Se le prestazioni di Windows peggiorano nel tempo e si sospetta che una perdita di memoria possa essere coinvolta, usare Windows Monitor prestazioni per verificare se si verifica una perdita di memoria. Questo processo non indicherà l'origine della perdita, né se si tratta della modalità utente o del kernel.

Iniziare avviando Monitor prestazioni. Per aprire Monitor prestazioni, utilizzare una delle procedure seguenti:

  • Aprire il menu Start, cercare Monitor prestazioni e fare clic sul risultato
  • Usare il Windows Key + R tasto di scelta rapida per aprire il comando Esegui , digitare perfmone fare clic su OK per aprire.

Aggiungere contatori

Dopo aver aperto il Monitor prestazioni, aggiungere i contatori seguenti al grafico principale Monitor prestazioni. Fare clic con il pulsante destro del mouse sul Monitor prestazioni in Strumenti di monitoraggio e scegliere Proprietà.

  • >Byte non di paging del pool di memoria

  • >Byte di paging del pool di memoria

  • Paging dell'utilizzo di file-> %

Impostare la durata per acquisire un'attività sufficiente

Per acquisire un grafico della perdita nel tempo, impostare Sample ogni volta su 600 secondi per misurare il valore ogni dieci minuti. Impostare Durata per acquisire un'attività sufficiente. Ad esempio, per impostarlo su 24 ore, il valore sarà, 60*60*24 = 86,400 è anche possibile registrare i dati in un file per un esame successivo.

Avviare l'applicazione e monitorare

Avviare l'applicazione o il test che si ritiene stia causando la perdita. Consentire all'applicazione o al test di eseguire indisturbato per qualche tempo; non utilizzare il computer di destinazione durante questo periodo. Le perdite sono in genere lente e possono richiedere ore per rilevare. Attendere alcune ore prima di decidere se si è verificata una perdita.

Monitorare i contatori Monitor prestazioni. Dopo l'avvio del test, i valori del contatore cambieranno rapidamente e potrebbero essere necessari del tempo per raggiungere uno stato stabile per i pool di memoria.

Le perdite di memoria in modalità utente si trovano sempre nel pool di paging e causano l'aumento costante nel tempo del contatore Di utilizzo dei file di paging del pool e del file di pagina. Le perdite di memoria in modalità kernel in genere esauriscono il pool non di paging, causando l'aumento del contatore Pool Nonpaged Bytes , anche se la memoria impaginabile può essere interessata. In alcuni casi questi contatori possono mostrare falsi positivi perché un'applicazione memorizza nella cache i dati.