Sie haben ein System mit Hugepages konfiguriert und möchten die Hugepages-Auslastung pro Prozess finden.
# grep -i huge /proc/meminfo HugePages_Total: 2176 HugePages_Free: 2065 HugePages_Rsvd: 2065 Hugepagesize: 2048 kB
Methode 1
Der folgende Befehl kann verwendet werden, um zu sehen, welche Prozesse THP verwenden:
for i in /proc/*/smaps; do if [[ $(grep '^AnonHugePages' $i | grep -v '0 kB$') ]]; then echo -ne "$i procees maybe running THP mode if you are using THP mode in kernel:\n"; fi; done
Bewertung von AnonHugePages Hier wird angezeigt, ob es sich um Transparent Huge Pages (THP) handelt verwendet werden.
Methode 2 – Hugepages, die von einem Prozess verwendet werden
Der folgende Befehl kann verwendet werden, um die Größe einer HugePage zu berechnen, die von einem bestimmten Prozess verwendet wird, unter der Annahme, dass die HugePage-Größe 2048 kB beträgt und die Ausgabeeinheit MiB ist:
# grep -B 11 'KernelPageSize: 2048 kB' /proc/[PID]/smaps | grep "^Size:" | awk 'BEGIN{sum=0}{sum+=$2}END{print sum/1024}'Hinweis :doppeltes Zählen derselben Adresse in /proc/[PID]/smaps.CentOS / RHEL 6,7 vermeiden :Wie man Hugepages konfiguriert