<p>我想知道在调用函数的过程中分配的最大RAM量是多少(在Python中)。还有其他与跟踪RAM使用相关的问题:</p>
<p><a href="https://stackoverflow.com/questions/110259/python-memory-profiler">Which Python memory profiler is recommended?</a></p>
<p><a href="https://stackoverflow.com/questions/552744/how-do-i-profile-memory-usage-in-python">How do I profile memory usage in Python?</a></p>
<p>但这些似乎允许您在调用<code>heap()</code>方法(在guppy的情况下)时跟踪更多的内存使用情况。但是,我想跟踪的是外部库中的一个函数,我不能修改它,它会使用大量的RAM,但在函数执行完成后会释放它。有什么方法可以找出函数调用期间使用的RAM总量是多少?</p>
<p>这似乎在Windows下有效。不知道其他操作系统。</p>
<pre><code>In [50]: import os
In [51]: import psutil
In [52]: process = psutil.Process(os.getpid())
In [53]: process.get_ext_memory_info().peak_wset
Out[53]: 41934848
</code></pre>