GitHub - sebbbi/OffsetAllocator: 具有最小碎片的快速 O(1) 偏移分配器

主要观点:介绍了一个快速硬实时的 O(1) 偏移分配器 OffsetAllocator,具有最小碎片,使用 256 个 bin 和 8 位浮点分布,通过两级位域和特定指令实现 O(1) 操作,分配元数据存储在单独结构中适合子分配资源,给出了 bin 大小表、集成方式(cmake 或复制文件)、使用方法示例、与 TLSF 算法相似及相关参考、声明是周末原型且单元测试未达 100%覆盖率需自行承担风险、许可证为 MIT 等内容。
关键信息

  • 256 个 bin 及 8 位浮点分布,两级位域和特定指令实现 O(1)操作。
  • 分配元数据单独存储,可用于子分配资源。
  • 给出 bin 大小表。
  • cmake 集成方式或复制文件集成。
  • 使用示例包含分配和释放操作。
  • 与 TLSF 算法相似及参考论文。
  • 是周末原型,单元测试未达 100%覆盖率。
  • 许可证为 MIT。
    重要细节
  • bin 大小按浮点分布,Pow2 bin 浪费内存,float bin 浪费较少。
  • 分配器返回分配连续范围的第一个元素的偏移。
  • 代码示例中创建分配器并进行分配和释放操作。
  • 参考论文提供了关于该算法性能和碎片的比较。
  • 声明使用需自行承担风险。
阅读 4
0 条评论