论文部分内容阅读
片上多核处理器已经成为微处理器技术发展的趋势,云计算和大数据等新应用模式的出现对计算机系统的存储性能提出了更高的要求。如何构建高效的并行计算机系统,有效的利用系统资源,一直是计算机科学研究中的一个难题。一方面微处理器计算速度不断提高,另一方面多核结构极大地增加了内存子系统的竞争压力,导致处理器的计算带宽与内存子系统的差距越来越大,尤其在大规模共享内存多处理器系统中,巨大的访存延迟制约着处理器性能的发挥,从而影响着处理器的使用效率。 本文研究多核处理器CC-NUMA系统存储性能优化的关键技术。在分析了CC-NUMA系统的软硬件特点并讨论了应用程序的数据亲和度问题的基础上,结合龙芯3号多核处理器芯片的互连结构,深入研究了龙芯多核处理器的CC-NUMA操作系统优化问题。 本文的主要贡献如下: 1.基于龙芯CC-NUMA操作系统,提出并实现了层次化锁的概念,缓解了多核处理器的同步开销,提高了锁操作的整体性能。 2.基于CC-NUMA系统,同时结合龙芯3号多核处理器的互连结构,提出了基于CrossBar的内核代码段复制技术,实现了内核代码段的本地化访问,减少了跨结点的数据访问,提高了内核代码的执行效率。 3.针对CC-NUMA系统的内存访问不一致问题,提出了基于页高速缓存的只读页复制技术,通过只读页在不同节点的冗余备份,提高了数据访问的局部性,减少了跨节点的内存访问次数,改善了系统的访存性能。 上述研究工作都在龙芯3号处理器开发系统上进行了验证,并取得了理想效果。层次锁优化策略,基于16核的龙芯3B双路处理器开发系统,运行Unixbench基准测试程序进行测试。多并发进程运行情况下,综合性能提高25%以上,其中的系统调用测试用例,性能提高约20倍。内核代码段复制技术,基于8核的龙芯3A双路处理器开发系统,运行8线程的SPEC CPU2000进行测试,定点性能提高10.2%,浮点性能提高约12.1%,其中mcf测试用例性能提升最多,达到35%以上。只读页复制技术,使用龙芯3A双路处理器开发系统,运行8线程的SPEC CPU2000进行测试,定点性能提高11%,浮点性能提高22%,其中art测试用例性能提升最多,达到60%以上。同时本文提出的一些技术和思想对其他分布式系统的设计优化也有重要的借鉴意义。