问题标签 [jemalloc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 如何dlopen jemalloc动态库
我正在尝试dlopen
在运行时内存分配器。libc
我对,tcmalloc
和没有问题tbbmalloc
。但试图dlopen
jemalloc
导致以下错误(通过捕获dlerror
):
/path/to/lib/libjemalloc.so: cannot allocate memory in static TLS block
您是否知道此错误的原因以及如何解决此问题?
jemalloc - jemalloc 中的 lg_prof_interval 是否意味着在两个时间点之间转储堆?
opt.lg_prof_interval (ssize_t) r- [--enable-prof] 内存配置文件转储之间的平均间隔(日志基数 2),以分配活动的字节数为单位。转储之间的实际间隔可能是零星的,因为分散的分配计数器用于避免同步瓶颈。配置文件被转储到根据模式 ...i.heap 命名的文件中,其中由 opt.prof_prefix 选项控制。默认情况下,间隔触发的配置文件转储被禁用(编码为 -1)。
医生说。
我的选择是export MALLOC_CONF=prof:true,lg_prof_interval:30,lg_prof_sample:17
(每 1GB 采样一个堆转储)
我感到困惑的是,转储是应用程序启动到现在之间的完整转储,或者只是在最后一次转储之间的完整转储。
我检查了转储中的大小,发现它很小。
那么可能是答案2吗?
我找到了一些个人资料文章,但没有提及。
为此我怎么能看到内存减少?(base
有效吗?我不这么认为......)
c - 可以使用 jemalloc arenas 在 64 位架构上实现 32 位指针吗?
是否可以使用 jemalloc 设置一个仅从保留的 2^32 字节虚拟内存区域分配页面的竞技场
mallocx
因此,使用 arena 的选项从 arena 分配的任何指针MALLOCX_ARENA
都可以表示为 32 位索引arena_start
。
这样做的动机是为了更节省空间的数据结构的指针压缩。(有关类似用例的背景信息,请参阅论文Tranparent Pointer Compression for Linked DataStructures 。)
来自这个线程关于 arenas 的评论让我认为这种类型的定制可能会得到支持。
node.js - 如何在 Jemalloc 中使用 Node.js?
Node.js 可以与 Jemalloc 一起使用(https://github.com/nodejs/node/issues/21973)。在大多数情况下,它会缩短 RSS,这是我的大问题。
但我找不到任何关于如何在 Jemalloc、机器上或 docker 中使用节点的信息。
有人可以帮忙吗?
c++11 - JeMalloc 不创建内存泄漏转储
我需要使用 JeMalloc 进行内存分析的帮助。
我做以下事情:
然后我运行我的应用程序:
这个二进制文件将 100% 使用 jemalloc 因为当我调用
我看到 JeMalloc 统计数据。
关于 https://github.com/jemalloc/jemalloc/wiki/Use-Case:-Leak-Checking
我做的一切都是正确的——但我仍然没有看到 jeprof 转储文件分析内存泄漏。
提前致谢。
java - Spring Boot 应用程序不使用 jemalloc
我正在尝试找出内存泄漏问题。我正在关注这篇文章并尝试使用 jemalloc
遵循的步骤是:
但是没有创建 .heap 文件。我在 pmap -x 结果中找不到 libjemalloc.so。如何确保 jvm 正在使用 jemalloc?服务器是一个 ubuntu 服务器,应用程序正在使用 spring boot。
g++ - Jemalloc 函数未在此范围内声明
我在我的ubuntu机器上安装了jemalloc库
现在,我无法编译使用 jemalloc 库的简单代码:
我编译它g++ -ljemalloc example.cpp
。
我得到的错误是
我什至尝试使用其源文件安装 jemalloc 并将我的标题更改为"jemalloc/jemalloc.h"
(而不是<..>
),并使用链接到它g++ -L./jemalloc/lib example.cpp
,但它没有帮助。
java - 如何找到调用不安全分配的方法?
我试图在我的生产应用程序中找到本机内存泄漏。问题是要知道我的代码中unsafe.allocateMemory(size)
没有哪个方法unsafe.freeMemory(startIndex)
这适用于 Ubuntu 18.04,Java 版本“1.8.0_191”。
所以我写了本机内存泄漏的代码,我想找到一种方法来做到这一点。我使用jemalloc
并且我有一个根据此说明获得的 .gif 文件。我有一张图片
那我怎么能猜到,那0x00007f2e42297ea7
是useWithLeak
方法?这是真的吗?
c++ - “链接 CXX 可执行世界服务器”失败
在 cmake 已经预编译失败后,以 99% 编译链接 CXX 可执行 worldserver。
等等
错误是:https ://pastebin.com/pVEkzzNs
我正在运行最新的 Ubuntu 并尝试通过 SSH 安装最新的 AzerothCore(无自动安装程序)。
预期:一切都应该运行良好。实际:甚至没有创建二进制文件。