【赛题解答】赛题1:iSula 项目内存池设计与实现

举个栗子OSC 发布于 2020/11/16 18:32
阅读 541
收藏 0

赛题信息:

赛题1:iSula 项目内存池设计与实现

赛题类别:操作系统,容器
 
赛题难度:
 
赛题描述:

当前 iSula 相关项目无内存池设计,程序在堆上频繁分配和释放内存,容易造成系统出现大量内存碎片,同时也降低了内存的利用率,也造成了 iSulad 性能的损失,因此,iSulad 需要设计一个高效高性能且可应对高并发的内存池设计。

赛题要求:
产出标准:完成一个高性能内存池的设计与实现,并应用于 iSulad 相关项目上。
 
提问方式:
  1. 关于本赛题的问题,请在该帖下评论提问,赛题导师将对问题进行统一回复。
  2. 请先浏览已有的问题,避免重复提问。
  3. 关于其他赛题、openEuler 基础知识、赛制相关问题,请回到 2020 openEuler 高校开发者大赛问答首页,在相关问题的专属帖下评论提问。

更多信息:

加载中
0
o
osc_62338214

 您好,我是本次参加高校开发者大赛的赵阳。我们队伍有些疑问,希望能得到您的解答。
1. 为什么iSula没有采用开源内存池?目前tcmalloc与jemalloc均有较好的多线程支持,是什么原因导致我们没有使用呢?
2. 我们自己设计内存池需要有什么特殊的性能或兼容性考虑吗?

osc_55976535
osc_55976535
赵阳你好,tcmalloc、jemalloc、mimalloc都是很优秀的内存池的解决方案,iSula项目之所以没有采用开源内存池,并没有什么特殊的性能或者兼容性考虑,一方面是iSula项目尽量减少开源依赖,另一方面是内存池项目本身的难度并不算十分困难,工作量也不算特别庞大。大家可以参考其他优秀开源项目思路进行设计开发,当然既然是重新造轮子,那希望能造出性能更好的轮子,这也是该题具备挑战性的地方。
返回顶部
顶部