スワップ領域が不足してプロセスが終了しました。

スワップ領域が不足してプロセスが終了しました。

私はMac OSX YosemiteでPython(2.7)スクリプトを実行しています。

スクリプトはかなり計算集約的で、確かに私のコンピュータのRAM制限を超えています。スクリプトの実行中にコンピュータがクラッシュして再起動しました。システムログには、/var/log/system.logスワップ領域が不足していることを示すメッセージが含まれています。

kernel[0]: low swap: killing pid 1246 (mdworker) ...(他のmdworkerプロセスに対してこのようなメッセージが多い)

kernel[0]: low swap: unable to find any eligible processes to take action on ...(衝突が起きる1時間前にも数十回言われた)

kernel[0]: low swap: killing pid 1711 (mdworker)

この衝突をどのように防ぐことができますか?

答え1

OSやプログラム(mdworker)を実行するマシン(メモリ関連)を変えなければ、このようなクラッシュを防ぐ方法はないと思います。

実際に割り当て可能なメモリは次のとおりですが、RAM+(SWAP SPACE)あなたのプログラムmdworkerが制限を超えているようです(RAM+SWAP SPACE)

大きすぎるデータ(アレイなど)を割り当てましたか?

関連情報