- PR -

メモリーリーク原因の特定方法

投稿者投稿内容
しゅう
会議室デビュー日: 2007/02/07
投稿数: 6
投稿日時: 2007-02-07 14:26
NAO様
冬寂様
ぽぴ王子様

 ご回答ありがとうございます
 プロセスでCPU使用率が0%以上の物はsystem idle processだけでした。
 (常に約90%を表示)
 これはさすがに停止させる事は出来ませんでした。
 その他プロセスはたまに数個が5%程度になる位で見ている限り殆どは
 0%。
 でもパフォーマンスモニターでは約40%を表示しています。

 これは問題の根が深そうですかね?
dellgate
大ベテラン
会議室デビュー日: 2004/02/20
投稿数: 198
投稿日時: 2007-02-07 15:09
メモリリークということなら、CPUだけでなくメモリ使用量
にも着目して切り分けていかなければいけないのでは。。。。

CPU使用率にしても、使用率で常時数十パーセントを維持する
のなら、SystemIdel Process以外で何かが使用していそうですけど。
NAO
ぬし
会議室デビュー日: 2001/10/24
投稿数: 1256
お住まい・勤務地: 神奈川のはずれから東京の下町
投稿日時: 2007-02-07 15:29
引用:

プロセスでCPU使用率が0%以上の物はsystem idle processだけでした。
(常に約90%を表示)


これは厳密に言うとプロセスじゃ無いですよ
CPUの空き時間です。

引用:

でもパフォーマンスモニターでは約40%を表示しています。


だとするならば絶対に何かが使ってます。
一瞬じゃなくて継続して。

管理ツールのパフォーマンスからパフォーマンスログを作成して見た方が
良いと思いますよ。

また、仮想メモリ=ディスクです
つまり仮想メモリが増えていくという事は
実メモリが足りなくてディスクをどんどん使って
行くと言う事です。

つまり何かしらがメモリをどんどん使っていくから
その結果仮想メモリが増えるという状態に陥っています。

と言う事で、プロセスが何かを調べて、理解した上で
1つずつ止めて下さいとなります。
ぽぴ王子
ぬし
会議室デビュー日: 2006/03/24
投稿数: 475
お住まい・勤務地: お住まい:城・勤務地:城
投稿日時: 2007-02-07 15:29
引用:

しゅうさんの書き込み (2007-02-07 14:26) より:

 ご回答ありがとうございます
 プロセスでCPU使用率が0%以上の物はsystem idle processだけでした。
 (常に約90%を表示)
 これはさすがに停止させる事は出来ませんでした。
 その他プロセスはたまに数個が5%程度になる位で見ている限り殆どは
 0%。
 でもパフォーマンスモニターでは約40%を表示しています。


System Idle Process は 90% を超えていて正常です。
ご存知だとは思いますが念のため。
# Idle Process なんだし、ねぇ。

ところで、タスクマネージャのプロセスタブのところに「全ユーザーのプロセスを表示する(S)」
というチェックボックスがあったと思いますが、そこはチェックしてみましたか?
_________________
ぽぴ王子@わんくま同盟
ぽぴ王子の人生プログラミング中 / ぽぴンち。
NAO
ぬし
会議室デビュー日: 2001/10/24
投稿数: 1256
お住まい・勤務地: 神奈川のはずれから東京の下町
投稿日時: 2007-02-07 15:38
コントロールパネル→パフォーマンスとメンテナンス→管理ツール→
パフォーマンス
でパフォーマンスを立ち上げ、

カウンタログを選択
右クリックで「新しいログの設定」
ファイル名を設定
カウンタとしてprocessから
怪しげな物を追加

後はログファイルの設定や
スケジュールを設定して

カウンタログを取る事を勧めます。

そして1日でも放置してログを取って
それを分析すれば解るはずです。
ちゃっぴ
ぬし
会議室デビュー日: 2004/12/10
投稿数: 873
投稿日時: 2007-02-07 22:15
引用:

NAOさんの書き込み (2007-02-07 15:29) より:

また、仮想メモリ=ディスクです
つまり仮想メモリが増えていくという事は
実メモリが足りなくてディスクをどんどん使って
行くと言う事です。



ちょっと誤解を招きそうなんで勝手に補足しますが、「仮想メモリ=ディスク」では無いです。

「仮想メモリ」(virtual memory) とは、「物理メモリ」(physical memory) と paging file を合わせたものです。

で、たぶんここで言いたかったと思われる paing file の使用量ですけど、これは Task Manager からはわかりません。

Task Manager にも「PF 使用量」という項目があるのですが、これは真っ赤な嘘で、実際は「コミット チャージ」の合計です。

Paging file の使用量を知るには、system monitor の counter [Paging File] - [%Usage] と pagefile.sys の size から算出してやるとよいでしょう。
未記入
大ベテラン
会議室デビュー日: 2005/03/12
投稿数: 148
投稿日時: 2007-02-07 22:26
タスクマネージャで設定をいじれば
各プロセスのハンドル数やスレッド数、メモリ、仮想メモリが表示されるよ。
それでも判らないの?
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2007-02-07 23:21
推理ですが、唯一頼りにしているタスクマネージャーがニセモノにすりかわっているとか?
それぐらいしか思い付きません。

--
unibon {B73D0144-CD2A-11DA-8E06-0050DA15BC86}

スキルアップ/キャリアアップ(JOB@IT)