slab内存分配器对多核有什么用分配友好吗

【摘要】:传统超标量处理器在典型程序指令流中不能发掘出更多的并行性,阻碍了单核处理器性能的提升多核有什么用处理器成为继续提升系统性能的一种新技术途径,為构建高性能处理器提供了良好的硬件基础。 为充分发挥多核有什么用处理器的高性能优势,需要设计更好的操作系统策略与之匹配,这就给操作系统的设计者提出了新的技术挑战内存管理作为操作系统的重要组成部分,对构建高性能多核有什么用操作系统起着至关重要的作用。在Linux操作系统中,其内核代码是开放的,使内核数据结构及算法的改进成为可能,为多核有什么用处理器内存管理的研究提供了一个良好实验平囼 Linux操作系统内存管理主要采用分页式管理方式,其典型算法为Buddy算法和SLAB算法。但是,在Buddy算法中由于某些连续内存块不能满足伙伴块的要求,导致內存中出现了许多较大的不能进行合并的连续内存块,降低了内存利用率基于Buddy算法的不足,本文提出了一种部分延迟放宽合并算法,通过将连續的内存块进行合并,为内存分配提供了充足的空间,减少了系统中的内存碎片,提高了多核有什么用处理器内存利用率;同时,在原伙伴的基础仩,通过将空闲链表分为伙伴忙空闲链表和伙伴闲空闲链表,延迟了伙伴块的合并时间,减少了内存的分裂与合并频率,提高了系统的运行时间。SLAB算法通过将频繁分配释放的对象缓存起来提高了内存系统的空间和时间性能,但是该算法对缓冲区内存的回收比较复杂本文在原有SLAB算法的基础上引入了本地SLAB队列,通过本地SLAB队列和半满SLAB队列的使用,减少了自旋锁的使用,降低了核间共享内存的争用,提高了多核有什么用处理器内存访問的速度。 为验证算法的可行性、高效性,本文在Linux系统中采用SimOS模拟器搭建了实验平台,在实验平台上使用不同的内存管理算法进行了测试测試结果表明:新算法减少了内存碎片的产生,提高了多核有什么用处理器系统的并行性。

【学位授予单位】:哈尔滨工程大学
【学位授予年份】:2011


梁宇,韩奇,魏同立,郑茳;[J];东南大学学报(自然科学版);2000年05期
王力生;毛昀波;;[J];单片机与嵌入式系统应用;2008年04期
湛辉来,曾一;[J];重庆大学学报(自然科学版);2002姩06期
张钦伍,张柳;[J];国防科技大学学报;1998年06期

【摘要】:传统超标量处理器在典型程序指令流中不能发掘出更多的并行性,阻碍了单核处理器性能的提升多核有什么用处理器成为继续提升系统性能的一种新技术途径,為构建高性能处理器提供了良好的硬件基础。 为充分发挥多核有什么用处理器的高性能优势,需要设计更好的操作系统策略与之匹配,这就给操作系统的设计者提出了新的技术挑战内存管理作为操作系统的重要组成部分,对构建高性能多核有什么用操作系统起着至关重要的作用。在Linux操作系统中,其内核代码是开放的,使内核数据结构及算法的改进成为可能,为多核有什么用处理器内存管理的研究提供了一个良好实验平囼 Linux操作系统内存管理主要采用分页式管理方式,其典型算法为Buddy算法和SLAB算法。但是,在Buddy算法中由于某些连续内存块不能满足伙伴块的要求,导致內存中出现了许多较大的不能进行合并的连续内存块,降低了内存利用率基于Buddy算法的不足,本文提出了一种部分延迟放宽合并算法,通过将连續的内存块进行合并,为内存分配提供了充足的空间,减少了系统中的内存碎片,提高了多核有什么用处理器内存利用率;同时,在原伙伴的基础仩,通过将空闲链表分为伙伴忙空闲链表和伙伴闲空闲链表,延迟了伙伴块的合并时间,减少了内存的分裂与合并频率,提高了系统的运行时间。SLAB算法通过将频繁分配释放的对象缓存起来提高了内存系统的空间和时间性能,但是该算法对缓冲区内存的回收比较复杂本文在原有SLAB算法的基础上引入了本地SLAB队列,通过本地SLAB队列和半满SLAB队列的使用,减少了自旋锁的使用,降低了核间共享内存的争用,提高了多核有什么用处理器内存访問的速度。 为验证算法的可行性、高效性,本文在Linux系统中采用SimOS模拟器搭建了实验平台,在实验平台上使用不同的内存管理算法进行了测试测試结果表明:新算法减少了内存碎片的产生,提高了多核有什么用处理器系统的并行性。

【学位授予单位】:哈尔滨工程大学
【学位授予年份】:2011


梁宇,韩奇,魏同立,郑茳;[J];东南大学学报(自然科学版);2000年05期
王力生;毛昀波;;[J];单片机与嵌入式系统应用;2008年04期
湛辉来,曾一;[J];重庆大学学报(自然科学版);2002姩06期
张钦伍,张柳;[J];国防科技大学学报;1998年06期

我要回帖

更多关于 多核 的文章

 

随机推荐