大数据系统量化分析:基准测试、性能指标和模型

来源 :中国科学院大学 | 被引量 : 0次 | 上传用户:qwertyuiopgfdsa
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
大数据计算是在一定的时间约束下完成大规模数据处理的计算。在应用形态上,大数据计算以数据为中心,数据的多样性、对于数据处理的时间约束的多样性、应用领域的多样性决定了大数据应用的多样性;在系统实现上为了简化编程,高级语言、算法库、软件包被大量使用,使得软件栈在整个大数据系统栈中占有更大的比重。这些新特征给系统与体系结构的研究带来了新的问题边界。对大数据系统进行量化分析可以使计算机系统进行有的放矢的设计和优化,而基准测试程序集(Benchmark Suite)作为一个基本工具为可以为量化分析提供相应的支撑。  由于大数据计算涉及到的数据多样性、应用多样性和软件栈多样性,大数据基准测试程序集的构造具有极大的挑战性,而当前的大数据基准测试的研究处于起步阶段,没有公认的标准,缺乏能反映大数据多样性的综合大数据基准测试程序集。本文以大数据基准测试程序构建为基础进行大数据系统的量化分析研究。首先,本文构建综合的大数据基准测试程序集,并在此基础上分析大数据计算的负载特征。然后,基于负载特征分析的结论,本文提出适合大数据负载的量化性能指标BOPS(Basic Operations PerSecond)。最后,本文建立基于BOPS的大数据屋顶模型,作为一个新的大数据系统性能模型。  本文的主要贡献可以总结为:  (1)构造了系统和体系结构领域的综合大数据基准测试程序集BigDataBench。BigDataBench涵盖了5个典型大数据处理领域,包括14个真实数据集,33个典型负载,4种软件栈实现和77个实现程序。目前BigDataBench已在工业界和学术界获得一定程度的应用,在系统、体系结构、数据管理和高性能计算领域的国际顶级会议上均有使用BigDataBench或引用BigDataBench的工作。中国信息通信研究院在BigDataBench的基础上牵头制定了国内首个大数据性能测试行业标准。  (2)对大数据负载进行了系统的量化分析,通过与其他基准测试程序HPCC、PARSEC、SPECCPU对比,发现大数据负载普遍计算密度较低(在典型的Intel Xeon平台,与HPCC、PARSEC、SPECFP相比,大数据负载浮点计算密度要低一个数量级),是具有更多分支指令的数据移动为主的计算(在典型的Intel Xeon平台,数据移动相关指令与分支指令的总和占总指令的87%,而在HPCC、PARSEC、SPECFP中仅平均浮点计算指令即为总指令的32%);另一方面,经过负载分析,证明大数据负载具有计算类型的多样性,对于处理器系统的设计和优化不存在“one size fitsall”的解决方案;同时,软件栈对大数据系统行为具有显著的影响,使用不同软件栈实现的相同应用在负载特征上存在显著差异性(在典型的Intel Xeon平台,相同应用的不同软件栈实现负载仅L1I Cache失效率会存在一个数量级的差别)。  (3)针对大数据负载普遍计算密度较低是具有更多分支指令的数据移动为主的计算特征,提出了大数据计算的系统层性能指标BOPS(Basic Operations Per Second),即每秒完成基本操作(Basic Operations,BOPs)的次数。基本操作BOPs包括了浮点和整型的计算、比较、地址操作,BOPs中定义的基本操作与数据移动(地址操作)、分支(比较操作)和计算(计算操作)形成映射,从而全面反映大数据的计算特征。在BOPS定义基础上构造了BOPS对应的微基准测试程序集合(MicroBenchrnarkSuite)。实验结果表明BOPS及其微基准测试程序集可以有效地评估大数据系统的性能、运行效率以及不同系统间的性能差异,是一个适合于大数据系统评测的系统层量化性能指标。  (4)针对大数据的计算特征,提出了用于大数据性能评测的大数据屋顶模型。在传统基于FLOPS的屋顶模型(Roofline Model)基础上,引入BOPS指标作为计算性能的参考依据,设计和实现了大数据屋顶模型。实验结果表明大数据屋顶模型可以直观的反映大数据系统的计算行为并指导大数据系统的优化。
其他文献
团购是指将原本单独购买某种商品或服务的消费者组织起来,在一个较短的时间段内集中与商家发生交易,以求得更低折扣或者更优服务的一种购物方式。网络团购是以互联网作为媒介,将
随着计算机应用的深入开展和业务需求的增长,企业对IT系统的发布提出了更高的要求。传统的人工手动部署反应慢、过程复杂和不可控制,造成上线周期过长,导致了新功能的堆积、系统
双隐层主题模型是主题模型的一个变种。传统的主题模型方法比如LDA,PLSA都是单一隐层,对应着文本的主题变量,因而能够对文档的主题进行建模。而双隐层主题模型具有双隐变量,分别
碰撞检测技术是指检测虚拟场景中两个或多个物体对象之间是否碰撞,何时碰撞,何处碰撞等问题。碰撞检测技术在计算机游戏,物理仿真,虚拟技术,计算动画等领域得到广泛的应用。因其算
面向对象的组件开发方法采用全新的方法论,对很多经验不足的程序员来说,难以理解。加上结构化思想的干扰,使很多采用面向对象方法的应用开发并不能体现出优势。在这种情况下,采用
分布式总账自2009年由中本聪首次提出后,经过短短几年时间就取得了巨大发展,并自2013年起引起了学术界和工业界的广泛关注。与传统银行总账不同,分布式总账采用去中心化方式管理
随着互联网上的信息不断膨胀以及信息形式的日渐多元化,通用搜索引擎所需要采集、索引和查询的内容越来越多,然而面对庞大的搜索返回结果,用户寻找自己所需要的信息是一件很
随着互联网的飞速发展,不仅改变了人们的生活方式,也产生了巨大的信息资源。如何从海里的信息资源中高效准确地获取到知识成为了大数据时代亟需解决的问题。在众多的知识获取方
车辆监控系统的研究是集全球卫星定位系统(GPS)、地理信息系统(GIS)和无线通讯技术为一体产生的一个崭新的领域。它从系统的角度,考虑了人、路、车以及环境四个方面的因素。
为了提高测试效率,缩短软件开发周期,自动化软件测试受到越来越多的关注。单元测试作为测试工作的第一步,对软件中的最小单元模块进行测试。任何模块都不是独立的,可能需要调