現在、Ubuntu 16.04仮想マシンにC++アプリケーションを開発中です。私は最大値の範囲を見つけるために、アプリケーションの総メモリ使用量(スタックとヒープ)を測定する必要があります。私は、メモリプロファイリングではかなり新しいですので、私は次のようにvalgrindのを使用して終了:コマンド:valgrindの大容量でC++アプリケーションの最大メモリ使用量(スタックとヒープ)を測定する
valgrind --tool=massif --stacks=yes ./c++_app
ms_print massif.out.<PID>
を、私は、関連するグラフ上の12.5メガバイトのスパイクを持って復号化されたファイルでは。 反対側では、gnome-system-monitorは最大メモリー値として25 MBを示しました。
2つの結果のどちらを信頼する必要がありますか?他のソフトウェアとのメモリ使用量を相互にチェックする必要がありますか?
また、/ usr/bin/time -v YourProgramを試して、最大常駐セットを確認することもできます。ところで、あなたはおそらく 'MB(メガバイト)ではなくmb(ミリバイト)を意味します。 –
@Mark Setchell Correct私はMB(メガバイト)を意味しました。私はそれを修正します。 – dk13