v8 ๋ชจ๋์ getHeapStatistics ํจ์๋ฅผ ํธ์ถํ ๋ heap_size_limit ์์ฑ์ด 4GB ์ด์์ผ๋ก ์ค์ ๋ ๋ฉ๋ชจ๋ฆฌ ํฌ๊ธฐ์ ๋ํด ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค. ํนํ max_old_space >= 4032๋ก ์ค์ ํ๋ฉด heap_size_limit๊ฐ ์ฌ๋ฐ๋ฅด์ง ์์ต๋๋ค. ์ฌํํ๋ ค๋ฉด:
๋ ธ๋ --max_old_space_size=3072
require('v8').getHeapStatistics().heap_size_limit
3288334336
์ด๊ฒ์ ์์๋๋ก์ด์ง๋ง 4096์ด ํ๋ ์ผ์ ๋ณด์ญ์์ค.
๋ ธ๋ --max_old_space_size=4096
require('v8').getHeapStatistics().heap_size_limit
67108864
64MB???? ๊ทธ๊ฑด ์๋์ง. ๋ช ๋ฒ์ ์ํ์ฐฉ์ค ๋์ ๋ง๋ฒ์ ํ๊ณ์ ์ 4032์ ๋๋ค.
๋ ธ๋ --max_old_space_size=4032
require('v8').getHeapStatistics().heap_size_limit
0
4092๋ก ์ค์ ๋ ๊ฒฝ์ฐ ํ ํฌ๊ธฐ๊ฐ ZERO์ ๋๋ค.
์ด๊ฒ์ Mac OS X 10.11.6 ๋ฐ Node v5.11.0์์๋ ๋ฐ์ํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
https://github.com/nodejs/node/pull/10186