小编Men*_*boy的帖子

高效流失的高效堆管理器,微小的分配?

我正在寻找一个堆管理器的想法来处理一个非常具体的情况:很多很多非常小的分配,每个分配12到64个字节.任何更大的东西,我都会传递给常规堆管理器,所以只需要为小块提供服务.只需要4字节对齐.

我主要担心的是

  1. 高架.常规的libc堆通常会将分配四舍五入到16个字节的倍数,然后添加另一个16字节的头 - 这意味着20字节分配的开销超过50%,这很糟糕.
  2. 性能

一个有用的方面是Lua(它是这个堆的用户)将告诉你当它调用free()时它释放的块的大小 - 这可能会启用某些优化.

我会发布我当前的方法,它运作正常,但如果可能的话,我想改进它.有任何想法吗?

c heap performance lua memory-management

8
推荐指数
2
解决办法
1527
查看次数

标签 统计

c ×1

heap ×1

lua ×1

memory-management ×1

performance ×1