OS solaris8
compilar gcc version 3.2.3
In article <bsioeq$q6a$1...@news-wst.ocn.ad.jp>, "takeshi" <t990...@hotmail.com> writes
> 現在、C言語によるプログラムを作成しているのですが、2次元配列の動的メモリの
> 確保を行う場合において、実メモリ領域が空いているにもかかわらず仮想メモリ領域
> を使用していまうと事態におちいっており計算速度が激減してします。
Solaris だったら mlock を使って強制的に実メモリに割り振ることが
できます。
けど、おそらくは、そういう問題ではないと思います。キャッシュの問題
かも知れないし、仮想メモリに落ちる理由が他にあるのかも知れないし。
アロケーションの部分のコードを出してくれると、もう少しいろい
ろアドバイスがもらえると思う。
---
Shinji KONO @ Information Engineering, University of the Ryukyus,
河野真治 @ 琉球大学工学部情報工学科,
Shinji KONO wrote:
> 河野真治 @ 琉球大学情報工学です。
>>確保を行う場合において、実メモリ領域が空いているにもかかわらず仮想メモリ領域
>>を使用していまうと事態におちいっており計算速度が激減してします。
> けど、おそらくは、そういう問題ではないと思います。キャッシュの問題
> かも知れないし、仮想メモリに落ちる理由が他にあるのかも知れないし。
vmstatの出力を調べてみてはどうですか?
本当にページフォルトが起こっているのかどうか。