<dataframe>.info(memory_usage="deep")
Google Colab に表示されている実際のメモリ使用量よりも多くの RAM を消費している理由を理解するのに苦労しています
RAMに関する情報を出力するユーティリティ関数があります
# module utils.py
def print_available_ram():
MB = 1024 * 1024
ram_available = psutil.virtual_memory().available
ram_tot = psutil.virtual_memory().total
print("Ram available:", ram_available / MB)
print("Ram tot :", ram_tot / MB)
print(" ", (ram_available / ram_tot) * 100, "%")
Google Colab で次のコードを実行しています
# ... some other code
utils.print_available_ram()
train_dataset_raw = panda.read_feather(train_dataset_path)
utils.print_available_ram()
log(train_dataset_raw.info(memory_usage="deep"))
return
出力
# intended as MB
Ram available: 12059.6640625
Ram tot : 13021.0625
92.61658994801691 %
Ram available: 2723.29296875
Ram tot : 13021.0625
20.91452190441448 %
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 2164804 entries, 0 to 2164803
Columns: 281 entries, 0-60 to target
dtypes: float64(281)
memory usage: 4.5 GB
- print_available_ram によって表示される情報は信頼できませんか?
- read_feather は余分なメモリを取り、解放していませんか?