Ruby 3.0.0貌似没有使用jemalloc
Ruby 3.0.0 seemingly doesn't use jemalloc
我已经安装了 jemalloc
并遵循了所有指南,但它看起来不像 ruby
在使用它:
$ apt install libjemalloc2
$ ls -la /usr/lib/x86_64-linux-gnu/libjemalloc.so.2
-rw-r--r-- 1 root root xxxxxx Feb 23 2019 /usr/lib/x86_64-linux-gnu/libjemalloc.so.2
$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2 irb
irb(main):001:0> puts RbConfig::CONFIG['LIBS']
-lm
irb(main):002:0> puts RbConfig::CONFIG['MAINLIBS']
-lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm
Ruby 3.0.0 是否需要以其他方式加载 jemalloc,库是否在配置中的其他地方注明,或者我做错了什么?
根据 docker-library Github 上 Ruby 的 this comment,使用 LD_PRELOAD
将以这种方式特别地 运行 jemalloc Ruby 不会意识到这一点。
但是,如果 LD_PRELOAD
正确导出,running the command MALLOC_CONF=stats_print:true ruby -e "exit"
将输出统计信息。
我已经安装了 jemalloc
并遵循了所有指南,但它看起来不像 ruby
在使用它:
$ apt install libjemalloc2
$ ls -la /usr/lib/x86_64-linux-gnu/libjemalloc.so.2
-rw-r--r-- 1 root root xxxxxx Feb 23 2019 /usr/lib/x86_64-linux-gnu/libjemalloc.so.2
$ LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libjemalloc.so.2 irb
irb(main):001:0> puts RbConfig::CONFIG['LIBS']
-lm
irb(main):002:0> puts RbConfig::CONFIG['MAINLIBS']
-lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm
Ruby 3.0.0 是否需要以其他方式加载 jemalloc,库是否在配置中的其他地方注明,或者我做错了什么?
根据 docker-library Github 上 Ruby 的 this comment,使用 LD_PRELOAD
将以这种方式特别地 运行 jemalloc Ruby 不会意识到这一点。
但是,如果 LD_PRELOAD
正确导出,running the command MALLOC_CONF=stats_print:true ruby -e "exit"
将输出统计信息。