« SAFETY JAPANのダメ記事 | トップページ | 日経BP PC online »

shared memory segment

天気:晴れ後曇り  住んでるとこでは雨

久しぶりの更新にも関わらず、今回はわし専用のmemoじゃ。

ネタがないのぅ。いや、あるにはあるんじゃがの。記事にしようかと思うと、時間がない。

後日にしようと思うと忘れる。まぁ、そんなもんじゃろ。

注意:この先に書くことはわし専用のmemoじゃ。真似したり試すなら全て自己責任でよろしこ。

RedHatは公式サイトで、わしが今から書くことをした場合は「サポートOSの対象外にします」と明言しとるんで、サポート受けとる人はしないように。やるなら自己責任で。

PCクラスターにおいて並列処理を行う時に、昔はえかったんじゃが、最近は大規模プロセス数とか、memoryを大量に使用するようなものが増えた。

そんな時たまに

$ mpid: Cannot create shared memory segment of XXXXXXX bytes

といったmessageをMPIが吐き出す事がある。(XXXXXXXは数値)

これはshared memoryの上限値がプログラムを実行するのに足らないというメッセージ。

OS上での初期値は64bitOSじゃと、いくらじゃっけ?

手元にあるCentOS4.5(32bit)じゃと8388608kbyteじゃな。まぁ、確認するにはroot権限で

$ ipcs -l

を実行する表示される。

で、これを解決するにはシステムに設定されているshared memoryのmax値を変更してやればええんじゃが、これをRedHatはするなと言っとる。(上にも書いたが公式で”禁止”と書かれておる)

実際にシステムの設定値をいじるのはシクった場合はOSがお釈迦にもなりかねんので、専門家以外は手を出すべきではないし、専門家でも慎重にすべきじゃな。

shared memoryのmax値を変更するには以下を実行する。

$ /sbin/sysctl -w kernel.shmmax=XXXXXXX

これで変更完了。ただし、この変更は一時的な設定である為に、rebootすると元の値に戻る。

再起動後も設定を継続したいのなら、システムファイルに書き込んでしまえばええんじゃが、システムの値をいじるのは慎重にのぅ。

|

« SAFETY JAPANのダメ記事 | トップページ | 日経BP PC online »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/502438/22777924

この記事へのトラックバック一覧です: shared memory segment:

« SAFETY JAPANのダメ記事 | トップページ | 日経BP PC online »