Ruby 2.6.5 与 jemalloc
Ruby 2.6.5 with jemalloc
我已经使用 jemalloc 从源代码构建并安装了 rub 2.6.5。但是,当我检查它是否存在时,我没有看到条目。还有什么我应该做的吗?
ubuntu:~$ uname -a
Linux ip-10-0-3-198 4.15.0-1032-aws #34-Ubuntu SMP Thu Jan 17 15:18:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
ubuntu:~$ ./configure --enable-shared --with-jemalloc
ubuntu:~$ make
ubuntu:~$ make install
这导致:
ubuntu:~$ ruby -r rbconfig -e "puts RbConfig::CONFIG['LIBS']"
-lm
部署后跟踪内存使用情况与没有安装 jemalloc 的类似配置的服务器相比,我也没有看到下降。
我不确定我需要做什么才能让 jemalloc 工作。
谢谢!
尝试:
puts RbConfig::CONFIG['MAINLIBS']
并在输出中检查 -ljemalloc
。
此行为最近发生了变化(准确地说是在 2.6.x 中)。
出于某种原因,接受的答案对我 (Heroku) 不起作用,但是这个:
MALLOC_CONF=stats_print:true ruby -e "exit"
成功了。
如果您有一些统计输出,则表示它正在运行。
来源:https://github.com/gaffneyc/heroku-buildpack-jemalloc/issues/5#issuecomment-499932026
对于使用 LD_PRELOAD
而不是直接构建 ruby 的人,更完整的答案是:
RbConfig::CONFIG['MAINLIBS'].include?("jemalloc") || ENV['LD_PRELOAD'].include?("jemalloc")
当然,这还不足以判断 jemalloc 是否真的有效,至于公认的答案!
我已经使用 jemalloc 从源代码构建并安装了 rub 2.6.5。但是,当我检查它是否存在时,我没有看到条目。还有什么我应该做的吗?
ubuntu:~$ uname -a
Linux ip-10-0-3-198 4.15.0-1032-aws #34-Ubuntu SMP Thu Jan 17 15:18:09 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
ubuntu:~$ ./configure --enable-shared --with-jemalloc
ubuntu:~$ make
ubuntu:~$ make install
这导致:
ubuntu:~$ ruby -r rbconfig -e "puts RbConfig::CONFIG['LIBS']"
-lm
部署后跟踪内存使用情况与没有安装 jemalloc 的类似配置的服务器相比,我也没有看到下降。
我不确定我需要做什么才能让 jemalloc 工作。
谢谢!
尝试:
puts RbConfig::CONFIG['MAINLIBS']
并在输出中检查 -ljemalloc
。
此行为最近发生了变化(准确地说是在 2.6.x 中)。
出于某种原因,接受的答案对我 (Heroku) 不起作用,但是这个:
MALLOC_CONF=stats_print:true ruby -e "exit"
成功了。
如果您有一些统计输出,则表示它正在运行。
来源:https://github.com/gaffneyc/heroku-buildpack-jemalloc/issues/5#issuecomment-499932026
对于使用 LD_PRELOAD
而不是直接构建 ruby 的人,更完整的答案是:
RbConfig::CONFIG['MAINLIBS'].include?("jemalloc") || ENV['LD_PRELOAD'].include?("jemalloc")
当然,这还不足以判断 jemalloc 是否真的有效,至于公认的答案!