论文部分内容阅读
传统计算机系统的CPU、内存、磁盘等各种资源紧密耦合在一起。由于系统资源固定,无法适应具有不同资源需求的应用,从而带来了若干问题,例如资源不匹配、频繁进行系统升级、资源共享困难等。
本文在机群系统及局域网环境下对内存资源进行虚拟化和网格化,实现了对内存资源的按需计算。研究了网络内存的若干问题,包括基于两级服务结构的网络内存系统NMS的设计,重点研究了主动内存机制、预取机制以及二级缓存管理策略。
(1)提出并实现了基于两级服务结构的网络内存系统NMS(Network Memory Service)。NMS采用服务机制对网络内存资源进行虚拟化和网格化,实现了动态内存资源管理,提高了网络内存资源的利用率。另外对系统的延迟、带宽、可扩展性等指标进行了测试,并采用多个应用对系统进行了性能评价。
(2)针对传统网络内存系统未发掘内存服务器计算能力的缺点,提出了主动内存思想,给出了网络内存应用模式下的主动内存计算模型AMC(Active Memory Computing)。通过和传统网络内存应用模式对比,验证了主动内存机制的有效性。在给出的矩阵转置的实验中,主动内存和网络内存交换、网络内存映射两种传统模式的最大加速比可达到5.5、2.6。在桶排序应用的实验中,主动内存和网络内存交换、网络内存映射两种传统模式的最大加速比可达到4.0、3.8。
(3)研究了网络内存上的预取算法。基于Markov链统计学方法,在ppm算法的基础上提出了两种改进的预取算法ppm-s和m-ppm。ppm-s在ppm算法中结合了顺序预取算法,使ppm-s同时具有ppm和顺序预取算法的优点。在给出的实验中,ppm-s比顺序预取和ppm有不同程度的命中率提升,最高约10C。
针对多进程、多线程等多访问流复杂访问模式,提出了一种多马尔可夫链预取算法m-ppm。m-ppm采用分治思想,首先采用[Last-Stride算法识别出多个单一流,并对每个流采用ppm-s算法进行预取。在针对混合类应用的实验中,m-ppm具有最高的缓存命中率。m-ppm比顺序预取算法seq-n最多可高出28﹪,比ppm最多可高出42﹪,比ppm-s最多可高出约39﹪,充分体现了m-ppm算法的有效性。
(4)研究了二级缓存应用模式下的缓存策略。基于LIRS算法并对其存在的缺点进行改进,提出了一种自适应缓存管理算法LIRS-A。算法可根据不同访问模式自适应调整,避免了LIRS算法存在的对某些适合时间局部性访问模式性能差的情况。针对网络流分析数据库的Groupby查询中命中率最多可提高31.2﹪;针对TPC-H查询命中率最多可提高7.2﹪。