论文部分内容阅读
随着互联网用户和数据的急剧增加,高通量计算(HTC)的需求越来越大,同时数据中心的硬件和功耗成本也越来越高,以传统应用为基准而设计的体系结构面临着新的挑战。针对HTC应用的体系结构特性分析可以为设计适合HTC的新型体系结构提供依据。
搜索引擎是最具代表性的服务类HTC应用,本文将以搜索引擎为例,通过CPU性能计数器分析其体系结构特性。研究应用特性首先需要负载驱动应用,对服务类应用而言,负载真实性可能会影响性能和体系结构特性。由于真实系统的Trace较难获得,大部分的Web负载生成器采用概率模型生成负载。本文通过分析真实的搜索引擎日志发现传统的概率模型不足于生成真实负载,通过对比真实负载和合成负载发现两者在性能和体系结构特性上有较大差别。
本文最终将使用真实负载驱动搜索引擎,并与五类典型Benchmark做对比,分析搜索引擎在计算机体系结构方面特性。
本文的主要研究内容和贡献包括:
1.对三个真实的商业搜索引擎日志进行了分析,从请求速率波动、请求内容、请求局部性三方面评测了常用的概率模型与真实负载的拟合程度,结果表明仅使用现有的概率模型难以生成真实负载。
2.选择Nutch作为搜索引擎实现,使用不真实的请求波动方式、请求集合规模、时间局部性合成不真实的负载并与真实负载做对比,比较了它们在响应时间,操作系统层性能数据以及CPU性能计数器数据三方面的差异,结果表明在评测搜索引擎性能和计算机体系结构特性时必须使用真实负载。
3.实现了一套分布式Profile工具ProfMan,用于辅助分布式应用体系结构特性分析。功能包括:在多台机器之间实现数据和配置快速同步;Profile流程管理和资源分配;收集应用操作系统层和CPU硬件计数器的值;对收集到的数据做统计和可视化分析等。
4.使用真实负载驱动Nutch并和Gridmix(Map-Reduce的典型负载)、SPECweb2005、TPC-C、SPECcpu2006、HPCC(高性能计算Benchmark)做对比,利用ProfMan收集和分析CPU性能计数器的值,从指令的比例、指令Stall的原因和访存延迟三个方面分析了搜索引擎在计算机体系结构方面的特性。