私はMemory Profilerモジュールを使用して、thisという答えに続く私のpythonコードのメモリ使用量を取得しています。しかし、私は%memit
の魔法の出力(またはモジュールの@profile
デコレータ、またはmprof run
を使った出力)を解釈することはできません。例えばpythonメモリプロファイラを理解しようとしています
、
%memit range(10000)
は
%memit xrange(10000)
がpeak memory: 97.46 MiB, increment: 0.00 MiB
を示し、私にpeak memory: 97.41 MiB, increment: 0.24 MiB
中を与えます。 range()
がリストを返すのではなく、xrange type
を返すxrange
の違いを理解しています。私はここで2つのシナリオを示すためにそれらを使用しました。
私の質問は
peak memory
とincrement
が実際に何を意味するのですか?- この出力からのスクリプト(または関数)の合計メモリ使用量はどのように報告しますか?
賢いニックピック: 'xrange'はジェネレータを返しません。 –
@ juanpa.arrivillaga:修正済み:D – Unni