SLABINFO

Section: Linux Programmer's Manual (5)
Updated: 2007-09-30
Index JM Home Page
 

名前

/proc/slabinfo - カーネル slab アロケータの統計  

書式

cat /proc/slabinfo  

説明

Linux カーネルの内部で良く利用されるオブジェクト (バッファーヘッド、i-ノード、ディレクトリエントリーなど) は、それぞれ自分用のキャッシュを備えている。ファイル /proc/slabinfo はこれらの統計を与える。例を示す。
% cat /proc/slabinfo
slabinfo - version: 1.1
kmem_cache            60     78    100    2    2    1
blkdev_requests     5120   5120     96  128  128    1
mnt_cache             20     40     96    1    1    1
inode_cache         7005  14792    480 1598 1849    1
dentry_cache        5469   5880    128  183  196    1
filp                 726    760     96   19   19    1
buffer_head        67131  71240     96 1776 1781    1
vm_area_struct      1204   1652     64   23   28    1
...
size-8192              1     17   8192    1   17    2
size-4096             41     73   4096   41   73    1
...

それぞれの slab キャッシュごとに、キャッシュの名前、 現在アクティブなオブジェクトの数、利用可能なオブジェクトの総数、 各オブジェクトのサイズ (バイト単位)、少なくとも一つのアクティブな オブジェクトを有するページの数、アロケートされたページの総数、 slab あたりのページ数、が与えられている。

なお、 オブジェクトのアラインメントと slab キャッシュのオーバーヘッドとにより、 オブジェクトは通常ページの内部にきっちりとは収められていない。 利用中のオブジェクトをひとつでも保持しているページは、 利用中であるとみなされ、解放できない。

slab キャッシュ統計の機能を有効にしてコンパイルされたカーネルでは、 出力の最初の行に "(statistics)" と表示され、 5 つのカラムが追加される。 それぞれ、アクティブなオブジェクトの瞬間最大値、 オブジェクトがアロケートされた回数、 キャッシュの大きさが拡張された (新しいページがこのキャッシュに追加された) 回数、 キャッシュの大きさが縮小された (使っていないページがこのキャッシュから削除された) 回数、 新たなページをこのキャッシュにアロケートする際に起きたエラーの回数、である。 slab キャッシュ統計が使えないカーネルでは、これらのカラムは表示されない。

SMP システムでは、出力の最初の行に "(SMP)" と表示され、 各 slab ごとに 2 つのカラムが追加される。 これらは各 CPU が持つローカルなキャッシュ (per-CPU キャッシュ) の slab アロケーションポリシーを表示する (per-CPU キャッシュは、 オブジェクトをキャッシュからアロケートする際に CPU 間での同期を減少させるために設けられている)。 最初のカラムは per-CPU 制限、 すなわち各 CPU ごとにキャッシュできるオブジェクトの最大数である。 二番目のカラムはバッチカウント、 すなわち per-CPU キャッシュが空だったり一杯だったりした場合に、 グローバルなキャッシュと受け渡しできるフリーなオブジェクトの最大数である。

slab キャッシュ統計と SMP が両方有効になっている場合は、 per-CPU キャッシュの統計を表示する 4 つのカラムがさらに追加される。 最初の 2 つは per-CPU キャッシュの アロケーションヒットカウントとアロケーションミスカウントである。 すなわち、あるオブジェクトをアロケートしたときに、 それが per-CPU キャッシュの内部に あった/なかった 回数である。 続く 2 つは、per-CPU キャッシュのフリーヒットカウントとミスカウントである。 すなわち解放されたオブジェクトをグローバルなキャッシュにフラッシュする前に、 per-CPU キャッシュの制限の範囲に 収まった/収まらなかった 回数である。

SMP において per-CPU slab キャッシュの制限値や バッチカウントを変更するには、以下のようにすればよい:

echo "cache_name limit batchcount" > /proc/slabinfo
 

ファイル

<linux/slab.h>  

バージョン

/proc/slabinfo は Linux 2.1.23 以降に存在する。 SMP における CPU ごとのキャッシュは Linux 2.4.0-test3 以降に存在する。  

注意

Linux 2.6.16 以降では、 /proc/slabinfo ファイルは、カーネル設定オプション CONFIG_SLAB を有効にした場合のみ存在する。  

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。

関連キーワード

キャッシュ   slab   slabinfo   proc   統計   カラム   回数   カーネル   アロケート   cache   最初   カウント   内部   制限   size   総数   解放   アロケーション   最大数   バッチ   フリー   ヒット   アロケータ   バッファー   ヘッド

Linux マニュアル 一覧

関連するコマンド・関数

slabtop.1   nfsstat.8   nscd.8   cacheflush.2   nscd.conf.5   size.1
 

Index

名前
書式
説明
ファイル
バージョン
注意
この文書について

This document was created by man2html, using the manual pages.
Time: 04:38:54 GMT, October 11, 2026