GNU/Linux >> Linux の 問題 >  >> Cent OS

RHEL/CentOS 6,7 :特定のプロセス/アプリケーションで使用される hugepage のサイズを計算する方法

hugepage で構成されたシステムがあり、プロセスごとの hugepage の使用率を調べたいと考えています。

# grep -i huge /proc/meminfo
HugePages_Total:  2176
HugePages_Free:   2065
HugePages_Rsvd:   2065
Hugepagesize:     2048 kB

方法 1

次のコマンドを使用して、どのプロセスが THP を使用しているかを確認できます:

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

AnonHugePages の評価 Transparent Huge Pages (THP) の場合はここに表示されます

方法 2 – プロセスによって使用されるヒュージページ

次のコマンドを使用して、指定されたプロセスによって使用される hugepage のサイズを計算できます。HugePage のサイズが 2048 kB で、出力単位が MiB であると仮定します:

# grep -B 11 'KernelPageSize:     2048 kB' /proc/[PID]/smaps | grep "^Size:" | awk 'BEGIN{sum=0}{sum+=$2}END{print sum/1024}'
注意 :/proc/[PID]/smaps.CentOS / RHEL 6,7 で同じアドレスの二重カウントを避ける:hugepages の設定方法


Cent OS
  1. CentOS / RHEL 7 :マシン ID を変更する方法

  2. CentOS / RHEL 7 :特定のインターフェイスでのみ IPv6 を無効にする方法

  3. CentOS / RHEL 7 :特定のカーネルだけにカーネル パラメータを追加する方法

  1. CentOS/RHEL 7 で「lvm2-lvmetad.socket/service」を無効にする方法

  2. CentOS/RHEL 6 で ethtool 設定を永続的に設定する方法

  3. CentOS/RHEL で yum チャネルのサイズを確認する方法

  1. Centos –プロセスで使用される帯域幅を制限する方法は?

  2. CentOS / RHEL :ファイルシステムの UUID を変更する方法

  3. CentOS/RHEL 7 および 8 で systemd ブート プロセスをデバッグする方法