Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8866

node.js の --max-old-space-size のデフォルト値は 1400MB

$
0
0

node.js の V8 のヒープのメモリ容量を設定するオプション --max-old-space-size のデフォルト値は 1.4GB みたい。

https://github.com/nodejs/node/blob/master/deps/v8/src/heap/heap.cc

    max_old_generation_size_ = 700ul * (kSystemPointerSize / 4) * MB;

64bit OS だと kSystemPointerSizeは 8 だろうから、1400MB になりそう。
実際の値をみると、--max-old-space-size=1400の結果とマッチした。

node --max-old-space-size=1000 -e 'console.log(Math.floor(v8.getHeapStatistics().heap_size_limit/1024/1024))'
# 1049

node --max-old-space-size=1400 -e 'console.log(Math.floor(v8.getHeapStatistics().heap_size_limit/1024/1024))'
# => 1456

node -e 'console.log(Math.floor(v8.getHeapStatistics().heap_size_limit/1024/1024))'
# => 1456

node --max-old-space-size=2000 -e 'console.log(Math.floor(v8.getHeapStatistics().heap_size_limit/1024/1024))'
# => 2066

node --max-old-space-size=3000 -e 'console.log(Math.floor(v8.getHeapStatistics().heap_size_limit/1024/1024))'
# => 3083

まとめ:
--max-old-space-size=1000にすると、デフォルトより3割くらい減る。
--max-old-space-size=2000にすると、デフォルトより4割くらい増える。
--max-old-space-size=3000にすると、デフォルトより2倍ちょっと増える。

他の記事で --max-old-space-size=2000をよくみるのは、増やしすぎない按配なのか。


Viewing all articles
Browse latest Browse all 8866

Trending Articles