Memory Profilerは、メモリ使用状況を詳細に確認し、最適化を行うために非常に便利なツールです。
Memory Profilerを使用する前に、メモリの状態をスナップショットとしてキャプチャします。
スナップショットを取得した後は、その内容を確認できます。
Managed Memory:
C#コード(Unityのスクリプトなど)によって使用されるメモリ。通常、ガベージコレクション(GC)が管理しています。
Managed Heapと呼ばれることもあり、Unityではオブジェクト生成の際に自動的にメモリが割り当てられ、使用しなくなるとGCが回収します。
Untracked Memory:
Unityによって直接管理されていない、あるいはプロファイラーでトラッキングできないメモリ領域。
外部ライブラリやUnityの内部機能が使用するメモリが含まれることがあります。
Graphics Memory:
GPUメモリ(VRAM)ではなく、CPUメモリ(RAM)に関連するグラフィックリソース(例えばテクスチャ、メッシュデータなど)の消費を示しています。これにはシェーダーやその他のビジュアル関連のメモリが含まれます。
Excutables & Mapped Memory:
Unityエディタやそのプラグイン、ネイティブコード(C++など)によって使用されるメモリ。
Native Memory:
ネイティブコード(C++など)によって使用されるメモリ領域で、Unityエンジン自体やプラグインが利用するメモリです。
TotalResident Memory:
メモリ上に現在ロードされているデータの量。実際に使用中のメモリの「サイズ」です。
これらの情報は、物理メモリ(RAM)の使用状況を示しており、GPUメモリ(VRAM)ではありません。つまり、これらはコンピュータのメインメモリ(RAM)の消費をモニターしています。
All of Memory
untracked : 1.83GB
Managed : 1.59GB
Graphics : 1.36GB
Excutables & Mapped : 1.12GB
Native : 0.70GB
untracked 1.62GB Managed 0.9GB Graphics 436.7GB Excutables & Mapped 0.96GB Native 500.5MB TotalResident 0.75GB
Windowsのタスクマネージャは、コンピュータで動作しているプロセスやアプリケーションを監視・管理するためのツールです。タスクの強制終了やシステムのリソース使用状況を確認するなど、幅広い機能があります。
タスクマネージャを起動するには、以下の方法があります。
現在実行中のアプリケーションとバックグラウンドプロセスを一覧で表示します。
各プロセスのCPU、メモリ、ディスク、ネットワークの使用率がリアルタイムで確認できます。
プロセスを右クリックし、「タスクの終了」を選ぶと、アプリケーションやプロセスを強制的に停止できます。
システム全体のリソースの使用状況(CPU、メモリ、ディスク、ネットワークなど)をグラフで確認でき、リソースの過剰な使用やボトルネックの特定に役立ちます。
CPUの現在の速度、プロセス数、スレッド数、メモリの総容量や使用量の推移が表示されます。
アプリケーションの過去のリソース使用履歴(CPU、ネットワーク)を確認できます。
特定のアプリが長期間にわたり多くのリソースを使用しているかを把握するのに役立ちます。
Windows起動時に自動的に起動するアプリケーション一覧を表示します。
不要なアプリを無効にすることで、起動時間の短縮やリソースの節約が可能です。アプリケーションを選択して右クリックし、「無効化」を選択すると、次回起動時から無効になります。
現在ログインしているユーザーごとのリソース使用状況を表示します。
他のユーザーのプロセスを選択し、強制終了も可能(管理者権限が必要な場合あり)。
全てのプロセスをより詳細に表示し、プロセスID(PID)、状態、ユーザー名、詳細なリソース使用状況などを確認できます。
優先度を変更するなど、プロセスの実行に関する高度な管理が可能です。
Windowsのサービスを一覧表示します。サービスはバックグラウンドで動作するシステムプロセスで、ユーザーが直接操作しないものが含まれます。
サービスを右クリックして「開始」や「停止」を選択し、動作を制御することができます。
プロセスの確認と強制終了:動作が不安定になったアプリケーションや応答がなくなったプログラムを強制終了する際に利用します。
パフォーマンスの監視:PCが遅い原因を調べるために、どのリソースが不足しているか(CPU使用率が高い、メモリが不足している等)を確認します。
スタートアップの管理:起動時に不要なアプリケーションを無効化し、PCの起動速度を向上させます。
メモリリークの検出:アプリが意図せずメモリを大量消費し続けていないか確認するために、メモリ使用量をチェックします。