タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

oomkillerに関するmukaerのブックマーク (3)

  • DBサーバ向けLinuxチューニングを考える 〜 メモリオーバーコミット編 : DSAS開発者の部屋

    Cでプログラムを書いていて大量のメモリを確保したくなったとき、大抵は mallocを使うと思いますが、その際には戻り値がNULLかどうかを判断してエラー処理に飛ばすと思います。しかし、Linux のメモリ管理サブシステムには「メモリ・オーバーコミット」という機構があり、実装されているメモリ以上の領域を確保できてしまいます。 #include <stdio.h> #include <stdlib.h> int main() { int i; char *p; for(i=0;i<65536;i++){ p = (char *)malloc(65536); if(0 == (long)p){ break; } } printf("SIZE=%dMB\n",i*65536/1024/1024); return(0); } swapoff したメモリ 1G のマシンでこれを実行するとこんな感じにな

    DBサーバ向けLinuxチューニングを考える 〜 メモリオーバーコミット編 : DSAS開発者の部屋
  • OOM Killer対策

    先日のこの話 、Out Of Memory Killer 、通称OOM Killerのせいらしい。キャッシュとしてshared memoryを贅沢に(^^;)使用するPostgresSQLのWrite processが集中的に狙われてます>_<。 直接的にこの仕組みを切るにはecho 0 > /proc/sys/vm/oom-kill かecho -17 > /proc/(PID)/oom_adj ただし前者はRedHat独自&OOM Killer完全停止、後者はカーネル2.6.11以降&プロセスごとに設定。CentOS 4.4のカーネルは現時点2.6.9なので前者。もうひとつの方法として、OOM Killerが発動する1つの原因を作っているメモリのオーバーコミットをさせない方法。具体的には、 echo 2 > /proc/sys/vm/overcommit_memory echo 90

  • OOMkiller - 詳解ファイルシステム

    詳解ファイルシステム Linuxのファイルシステムを詳解します トップページページ一覧メンバー編集 OOMkiller 最終更新: linuxfs 2006年12月04日(月) 20:57:19履歴 Tweet FrontPage OOM Killerとは Linux カーネルが行う OOM killer に関して oom-killerの止め方 oom-killer disable gitlog(2005-04-17) コメントgitlog(2006-09-30) OOM Killerのログの例 OOM Killerとは Linux kernelがメモリ不足(swapも含め)に陥ったとき、~ このOOM Killerが発動し、縦横無尽にプロセスを駆逐し~ ていきます。その際、無差別ともとれる残虐な行為から~ 悪名高いメモリ不足解決器 (OOM killer) と揶揄されて~ 今日に至ります

    OOMkiller - 詳解ファイルシステム
  • 1