gpt4 book ai didi

c++ - 内存泄漏如何提高性能

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:05:59 29 4
gpt4 key购买 nike

我正在构建一个充满节点的大型 RTree(空间索引)。它需要能够处理许多查询和更新。对象不断地被创建和销毁。我正在运行的基本测试是查看树中对象数量增加时树的性能。我以 100 为增量插入 100-20000 个大小均匀、随机定位的对象。搜索和更新与我目前面临的问题无关。

现在,当没有NO 内存泄漏时,“插入树”性能无处不在。从约 15000 个对象的 10.5 秒到约 18000 个对象的 1.5 秒不等。没有任何模式。

当我故意添加泄漏时,就像添加“new int;”一样简单我没有将它分配给任何东西,它本身有一条线,性能立即下降到一条漂亮的平缓曲线上,从 100 个对象的 0(大约)秒到整个 20k 的 1.5 秒。

此时非常非常迷茫。如果你想要源代码,我可以包括它,但它是 huuugggeeeee 并且字面意思是唯一有区别的行是“new int;”

提前致谢!-尼克

最佳答案

我不确定你是怎么想出这个 new int 测试的,但这不是解决问题的好方法 :) 使用分析器运行你的代码并找出真正的延迟在哪里.然后集中精力修复热点。

g++ 内置 - 只需使用 -pg 编译

关于c++ - 内存泄漏如何提高性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3407347/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com