静かなる名辞

pythonとプログラミングのこと


Pythonプロセスの自分自身のメモリ使用量を調べる

 簡単なテストや処理をしているとき、Pythonプロセス自身のメモリ消費量を計算したくなるときがある。やり方を知らなかったけど、頑張って検索したら出てきたのでメモ。

import os
import psutil

process = psutil.Process(os.getpid())
print(process.memory_info().rss)

 参考にしたもの(というか、そのまま)
Total memory used by Python process? - Stack Overflow

 psutilは標準ライブラリではなく、外部ライブラリ。活発に開発されている。インストールは普通にpipでできる。

psutil · PyPI

 試しに実行してみる。

import os
import psutil

process = psutil.Process(os.getpid())
print(process.memory_info().rss)  # => 9891840

lst = list(range(10**6))
print(process.memory_info().rss)  # => 50974720

 単位はバイトで、memory_info()を呼ぶたびにリアルタイムの情報が得られる。便利に使えそうです。