我有大量的代码分布在许多文件中。该代码当前正在使用普通的malloc。

我想在其中实现Jemalloc以获得更好的性能,我也想使用Jemalloc的内存分析器来了解每个分配在代码内发生的方式和位置。

我已经尝试了3个多星期。请帮我。

提前致谢。

最佳答案

构建不带任何前缀的jemalloc后,您将拥有一个共享库,其中所有malloc系列功能都将重新实现。

假设:Linux环境

如果运行在单个终端上,则可以在运行应用程序之前使用LD_PRELOAD环境变量预加载jemalloc.so。就像是:

export LD_PRELOAD=$LD_PRELOAD:/path/to/jemalloc-build/lib/jemalloc.so.1

对于所有受更改影响的应用程序,您可以在/etc/ld.so.preload文件中添加新行以及lib的路径。 (这在基于Debian的系统中肯定可以工作,但也可能在其他系统上工作)

关于memory - 在现有的巨大代码中使用jemalloc,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10946506/

10-11 16:44