問題タブ [working-set]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
261 参照

mongodb - workingSet コマンドで出力が表示されない

正しいか間違っているかわかりませんので、説明させてください。

私はMongoDBバージョン2.6.6に取り組んでいます

2 つのシャード (レプリカ セット)、mongos、および構成サーバーで構成されるシャード環境があります。

私のワーキングセットをチェックアウトするために、私はコマンドを与えました:

db.runCommand({serverStatus:1, workingSet:1})

MongoDB のドキュメントに示されているとおりです。しかしworkingSet、指定された出力にはドキュメントがありませんでした。serverStatusドキュメントのみを返しました。私はここで何か悪いことをしていますか?

注: メンテナンス目的でサーバーがダウンしているため、出力が表示されないことをご了承ください。したがって、実際に出力を提供することはできませんが、workingSet ドキュメントが含まれていない出力を推測できます。

0 投票する
0 に答える
118 参照

mongodb - mongodb ドキュメントのサイズを小さくすると、ワーキング セットが減りますか?

ドキュメントのサイズを小さくするとワーキング セットが減るかどうかを判断しようとしています。データベースがインスタンスの RAM の上限に達しています。各ドキュメント (数千の要素になる可能性があります) の配列に冗長データを格納していますが、現在は 40 に制限しています。私たちのバルクは)ですが、ドキュメントの私の理解では、ストレージサイズは変わりません. mongo を読んだ後、ドキュメント サイズを元のサイズの 10% に縮小すると、ワーキング セットに影響するかどうかわかりません。誰かが助けて/説明してもらえますか?

編集:いくつかの背景情報

データベースが大きくなってもパフォーマンスを維持するために行ったことの 1 つは、RAM を増やしてデータベース全体に「適合」させることです。データベースは、レプリカ インスタンスにある 64 GB の RAM に近づいています...それが、この質問を進めた理由です...

編集:本質的な質問

基本的に、質問は次のようになります:ワーキング セットがメモリに収まるかどうかを計算するとき、何を使用すればよいでしょうか? これらの数値は、db.stats() の実行から得られます。

dataSize + indexSize < RAM

また

storageSize + indexSize < RAM

また

ファイルサイズ + インデックスサイズ < RAM

ありがとう!

0 投票する
1 に答える
1234 参照

operating-system - 近似値としての WSClock アルゴリズム

オペレーティング システムでページ置換に使用される WSClock アルゴリズムについて質問があります。

私が理解している限り、WSClock は両方のワーキング セットの機能を組み合わせています (ページが最後の T 時間間隔で参照された場合、ページは WS にあるため、最後の参照時間は R&M ビットを使用して各ページに保存されます)。クロック アルゴリズム (ページ フレーム テーブルは循環リストとして格納されます。ページ フォールトが発生すると、ワーキング セットに存在しないページを検索するためにリストが走査されます)。

各ページ参照で、HW はその R ビットを 1 に設定します。ある時間間隔で、OS はすべてのページの R ビットを 0 にリセットします。

ページ フォールトが発生すると、アルゴリズムはリストを走査し、ページごとに次の処理を実行します。

アルゴリズムは、次の 1 つの点を除いて、私にとっては問題ないように見えます。

ページが最後に参照された時間は、1 回だけ変更されます。このページが参照された後にページ フォールトが発生した場合 (R = 1)、OS がまだ R ビットを 0 にリセットしていない場合 (R = 0)。私が理解しているように、最後に使用された時間は、パフォーマンスの向上につながるアプローチによってのみ概算されます。

したがって、プロセスの WS に間違いなく存在する非常に頻繁に使用されるページの場合は、すべて問題ありません。それらの参照頻度は、OS リセット イベントの頻度よりも高くなっています。

しかし、かなり頻繁に参照される不運なページがいくつかあるはずですが、残念ながら、これらの参照の後にページ フォールトは発生しません。しかし、ページ フォールトが発生すると、それらは参照されていないように見えるほど不運でもありますが、実際にはそうではありません。

したがって、私が見たところ、OS はページ フォールト イベント中にのみワーキング セットのスナップショットを取得しているように見えます。これらのスナップショットは、R ビットのリセットとページ フォールトの間の時間間隔で参照されるページのワーキング セットを表します。

それが実際の作業セットの適切な近似である理由は何ですか?

R ビットがリセットされる時間間隔の値によって、近似の品質 (したがって、アルゴリズムの有効性) が決まりますか?

したがって、この値は、上で述べたこれらの不運なページのほとんどをキャッチできるほど低すぎてはいけませんが、実際にはワーキング セットにまだないページをキャッチできないほど大きすぎてはいけませんか?

0 投票する
1 に答える
29 参照

java - IWorkingSetSelectionDialog で Java ワーキング セットのみを有効にする

現在、IWorkingSetManager によって作成された IWorkingSetSelectionDialog を使用しています。デフォルトでは、このダイアログの「新規...」ボタンをクリックすると、ユーザーはどのタイプのワーキング セットを作成するかを尋ねられます。しかし、Package Explorer のように、Java ワーキング セットに制限したいと思います。これをどのように達成できるか知っている人はいますか?

0 投票する
1 に答える
22 参照

java - 「Others Workingset」またはその workingSet Manager にアクセスする方法はありますか?

トップレイヤースタイルとしてワーキングセットを有効にする必要があるEclipseでエクスプローラーを再作成しています。Eclipse jdt によって作成された「その他のワーキングセット」にアクセスする方法はありますか? 独自の localWorkingSetManager を作成し、ID IWorkingSetIDs.OTHERS のワーキング セットを追加しようとしましたが、OthersWorkingSetUpdater で例外が発生します。このワーキング セットに直接アクセスする方法がない場合、編集できないワーキング セットを作成する他の方法はありますか?

0 投票する
1 に答える
45 参照

c - メイクファイルの変数、予期しない動作

奇妙なことに気付いたメイクファイルがあります。

でマークされた行に、代わり<------に配置すると、コンパイルが失敗します。しかし、私は定義しましたが、なぜそれがこのように機能するのでしょうか?$(OBJECTS)String.oOBJECTS=$(String.o)

また、フォローアップの質問として、行に追加$(OBJECTS)してその前に行から<-----削除する$(OBJECTS)と、コンパイルされます。このような:

誰かがオンラインに$(OBJECTS)解決しない理由を教えてください。String.o<-----

ありがとう

0 投票する
1 に答える
173 参照

working-set - リソース モニターで報告されたメモリが UMDH に表示されない

時間の経過とともにサーバーメモリを断続的に使い始め、解放するために再起動する必要があるサービスがあります。gflags で +ust をオンにし、サービスを再起動して、スケジュールされた UMDH スナップショットの取得を開始しました。問題が再発したとき、リソース マネージャーはワーキング セットとプライベート バイトで複数の GB を報告しましたが、UMDH スナップショットは、プロセスのヒープ内の数 MB の割り当てしか占めていません。

UMDH スナップショット ファイルの上部に、「ヒープ マネージャーがスタックを収集した割り当てのみがダンプされます」と記載されています。
+ust フラグが指定されたときに、プロセス内の割り当てがトレースなしになるのはどうしてですか?

これらの GB がどこにどのように割り当てられたかを確認するにはどうすればよいですか?

0 投票する
1 に答える
117 参照

virtual-memory - ワーキング セット アルゴリズムと仮想メモリ

ワーキング セット アルゴリズム: 2 つのプロセスがあり、それぞれに独自のワーキング セット ウィンドウがあります。理論によれば、そのウィンドウには、プロセスが要求した Δ 個の最新のページが格納されます。

私の問題は次のとおりです。ページをウィンドウに表示する必要がある場合、そのページをディスクから直接移動しますか (ディスク -> ウィンドウ)。つまり、仮想メモリは必要ありません。または、そこからページを移動できるように、ページを格納する反転ページ テーブルが必要です (ディスク -> 反転ページ テーブル -> ウィンドウ)。

短い質問: WS アルゴリズムは (何らかの形で) Inverted Page Table に接続されていますか?

-ありがとう

0 投票する
2 に答える
584 参照

memory - ワーキング セット サイズ - スラッシングが発生した場合

スラッシングで迷っています。ページのセットがあるとしましょう: 2 4 6 8 2 5 8 とワーキング セット サイズ = 4. ページ サイズの終わりまで移動し、すべてのワーキング セット サイズを合計してから、メモリ サイズと比較して決定しますスラッシングが発生するかどうか?たとえば、最初の間隔のこのセットでは、WS(t1)={2,4,6,8}、WS(t2)={4,6,8,2}、WS(t3)= {6,8、 2,5}、WS(t4)={8,2,5}。したがって、ワーキング セットのサイズを追加すると、sum= 15 になります。この値をメモリ サイズと比較して、スラッシングが発生するかどうかを判断しますか?