/sys/kernel/mm でヒュージページ設定を調べる
この最後のステップでは、ヒュージページの設定情報が格納されている別の場所、/sys
ファイルシステムを調べます。/sys
ファイルシステムは、カーネルのデータ構造にアクセスするためのインターフェースを提供し、カーネルオブジェクトの調査や、場合によっては変更を可能にします。
ヒュージページに関連する情報は、/sys/kernel/mm/transparent_hugepage
の下にあります。透過的ヒュージページ (Transparent Hugepages, THP) は、アプリケーションから明示的な設定を必要とせずに自動的にヒュージページを使用しようとする機能です。
cd
コマンドを使用してこのディレクトリに移動しましょう。cd
は "change directory" の略です。
以下のコマンドを入力し、Enter キーを押してください。
cd /sys/kernel/mm/transparent_hugepage
/sys/kernel/mm/transparent_hugepage
ディレクトリに移動したので、ls
コマンドを使用してこのディレクトリ内のファイルを一覧表示しましょう。ls
コマンドは、ディレクトリの内容を一覧表示します。
以下のコマンドを入力し、Enter キーを押してください。
ls
以下のような出力が表示されるはずです。
defrag enabled khugepaged numa_defrag shmem_enabled split_huge_pmd_size split_huge_pte_size
これらのファイルは、透過的ヒュージページのさまざまな設定オプションと状態インジケータを表しています。
cat
コマンドを使用して enabled
ファイルの内容を見てみましょう。このファイルは、透過的ヒュージページが有効、無効、または 'madvise' モード (アプリケーションがカーネルにヒュージページの使用方法をアドバイスできるモード) のいずれであるかを示します。
以下のコマンドを入力し、Enter キーを押してください。
cat enabled
以下のような出力が表示されるはずです。
[always] madvise never
この出力は現在の設定を示しています。[always]
は、すべてのマッピングに対して THP が現在有効になっていることを意味します。
次に、defrag
ファイルを見てみましょう。このファイルは、カーネルがメモリの断片整理を試みてヒュージページを利用可能にするかどうかを制御します。
以下のコマンドを入力し、Enter キーを押してください。
cat defrag
以下のような出力が表示されるはずです。
[always] defer defer+madvise madvise never
再び、[always]
は、THP に関連するメモリ断片整理の現在の設定を示しています。
/sys
ファイルシステムは、カーネルの内部状態と設定を理解するための貴重なリソースです。/sys/kernel/mm
のようなディレクトリを調査することで、メモリ管理に関する深い洞察を得ることができます。
これで、/proc/meminfo
、sysctl
、/sys
ファイルシステムの 3 つの異なる方法を使用してヒュージページの情報を調査することに成功しました。
Continue をクリックして、実験を完了してください。