いつも思いだすのに時間がかかるというか、ググるのでメモ。
例えば、ベンチマークとかをとっていて、残ったキャッシュを奇麗さっぱりに消したい時とかに使う。
Linuxのメモリで保持しているキャッシュをクリアするには、以下を実行する。
# sync # echo 3 > /proc/sys/vm/drop_caches
値の意味としては、、、
- 1: ページキャッシュを解放
- 2: dentry、inode を解放
- 3: ページキャッシュ、dentry、inode を解放
以下を参考に。
/proc/sys/vm/drop_caches (Linux 2.6.16 以降)
Man page of PROC
このファイルに書き込みを行うことで、クリーンなキャッシュ、dentry、 inode をメモリ上から外し、そのメモリを解放する。
ページキャッシュを解放するには、 echo 1 > /proc/sys/vm/drop_caches とする。 dentry、inode を解放するには、 echo 2 > /proc/sys/vm/drop_caches とする。ページキャッシュ、dentry、inode を解放するには、 echo 3 > /proc/sys/vm/drop_caches とする。
この操作は非破壊的な操作で、ダーティな (dirty) オブジェクトは 解放されないので、この操作を行う際は最初に sync(8) を実行しておくべきである。
サンプル (before - after)
# free total used free shared buffers cached Mem: 12291444 10762028 1529416 0 814476 8200240 -/+ buffers/cache: 1747312 10544132 Swap: 2096440 136 2096304 # sync # echo 3 > /proc/sys/vm/drop_caches # free total used free shared buffers cached Mem: 12291444 309068 11982376 0 320 8912 -/+ buffers/cache: 299836 11991608 Swap: 2096440 136 2096304
さっぱりしましたね!
それでは! =͟͟͞͞(๑•̀=͟͟͞͞(๑•̀д•́=͟͟͞͞(๑•̀д•́๑)=͟͟͞͞(๑•̀д•́
LinuxサーバHacks―プロが使うテクニック&ツール100選
- 作者:ロブ フリッケンガー
- 出版社/メーカー: オライリージャパン
- 発売日: 2003/11/01
- メディア: 単行本
Linuxサーバ Hacks 2 ―コネクティング、モニタリング、トラブルシューティング
- 作者:Bill von Hagen,Brian K. Jones
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2006/10/24
- メディア: 単行本(ソフトカバー)