dotMemory 2019.1ヘルプ

分析の概要

analysis overview 1

プロファイリングデータの収集が完了すると、dotMemoryは分析の概要ページで新しいタブを開きます。

分析の概要ページには、セッション中に収集されたデータに関する情報が表示されます。

pos 1 タイムライン
タイムライングラフは、プロファイリングプロセス中にアプリがメモリをどのように消費したかを示します。タイムラインは、Gen0、Gen1、Gen2ヒープおよびラージオブジェクトヒープのインスタントサイズを示す4つのチャートで構成されています。管理されていないメモリを表示するパラメータを選択して、管理されていないメモリのサイズを示すチャートを追加することもできます。特定の時点における正確なメモリヒープ値を確認するには、この時点でタイムライングラフをクリックしてください。
pos 2 収集されたスナップショット

snapshot ov
この領域には、プロファイリング中に収集されたすべてのスナップショットに関する短いレポートが含まれています。各レポートでは次のことが可能です。
  • *あなたのアプリによって要求されたメモリの総量についての詳細情報を取得します。合計値(灰色のバー)は以下から構成されています。

    • 管理されていないメモリ:管理対象ヒープの外側に割り当てられ、Garbage Collectorによって管理されていないメモリ。一般に、これは.NET CLR、動的ライブラリー、グラフィックスバッファなどに必要なメモリです。メモリのこの部分はプロファイラで分析できません。
      管理されていないメモリを表示するチェックボックスをオフにすると、アンマネージメモリのサイズが合計値から差し引かれます。

    • 。合計額(アウトラインのグレーのバー):割り当てられたオブジェクト間の空き領域を含む、アプリケーションによって使用されるマネージヒープ内のメモリ量。詳細については、下のイメージを参照してください。

    • 使用される.NET(ダークグレーバー):空き領域を除いて、アプリケーションが使用するマネージヒープ内のメモリ量。これはメモリの唯一の部分であり、.NETで作業することができます。

    memory usage explanation
  • スナップショット名をクリックしてスナップショットビューでスナップショットを開きます。

  • ThemedIcon Edit Screen Gray ボタンを使用してスナップショットの名前を変更します。

  • 解析のためにヒープ内のすべてのオブジェクトを開きます([オブジェクトのサイズ]オブジェクトリンクを使用)。この場合、「すべてのオブジェクト」オブジェクトセットが型別にグループ化ビューで開かれます。

  • 分析のためにマークされたオブジェクトを開きます(マークされたオブジェクトリンクを使用)。「マークされたオブジェクト」オブジェクトセットが型別にグループ化ビューで開かれます。セクションインスタンスにマークを付けるのオブジェクトのマーキングの詳細を参照してください。

  • プロファイリングセッションの開始時からスナップショットを取得する瞬間までにアプリケーションによって生成されたメモリトラフィック(メモリトラフィックリンクを使用)を表示します。トラフィック分析の詳細については、セクショントラフィックの分析を参照してください。


pos 3 スナップショット比較領域
2つのスナップショットを比較するには、比較領域にドラッグアンドドロップするか、スナップショットごとに比較に追加をクリックします。スナップショットを比較する方法の詳細については、スナップショットの比較のセクションを参照してください。

最終更新日: 2019年5月31日

関連事項

関連ページ:

インスペクションビュー

このビューには、現在のスナップショットでの状況の概要が簡単に説明されています。最大サイズ図この図は、「どのオブジェクトが私のアプリのメモリの大部分を占めているのか」という質問に答えます。特定の種類のオブジェクトによって占有されているメモリ量を示します。ダイアグラムの特定の項目をクリックすると、それが...

型別にグループ化

型別にグループ化ビューには、選択したオブジェクトセット内のオブジェクトのリストが表示されます。便宜上、すべてのオブジェクトはタイプによってグループ化されます。リストの各行は特定のタイプを表します。セットに存在するそのタイプのすべてのオブジェクトは、この行でカウントされます。型別にグループ化ビューを使...

インスタンスにマークを付ける

インスタンスをマークすることは、さまざまなビューやスナップショットで特定のインスタンスをすばやく見つけることができる非常に便利なメカニズムです。例:スナップショット#1にインスタンスAがあり、インスタンスがスナップショット#2でどのように動作するかを確認したいとします。最初のスナップショットにAをマ...

メモリトラフィックの分析

トラフィック分析は、アプリのメモリ使用量を効果的に判断するための主要な手段です。過度の割り当てやガベージコレクションは、メモリ管理のオーバーヘッドが大きくなる可能性があります。例:時間の経過と共に更新されるべきオブジェクトの配列があります。必要なプロパティーを持つ新しいインスタンスを作成するか、既存...

スナップショットの比較

dotMemoryのスナップショットを比較するには、2つの方法があります。1つのワークスペース内のスナップショットを比較します。異なるワークスペースのスナップショットの比較、それぞれの方法は、特定のユースケースに適しています。1つのワークスペース内のスナップショットの比較:1つのセッション内で撮影し...

プロファイリング結果の分析

十分なプロファイリングデータを収集したら、メモリの問題の原因を特定する(分析ステップ)に進むことができます。最初にユーザーインターフェースを確認するセクションで説明したように、メモリ分析では、分析対象(特定のオブジェクトセットまたはインスタンス)の継続的な選択と、さまざまな視点(ビュー)からのこれら...