异构体系结构下运行时协同调度机制研究

来源 :华中科技大学 | 被引量 : 0次 | 上传用户:fanqiefanqie
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着能耗问题的日趋严重,多核/众核异构体系结构逐渐盛行。自2013年Intel正式商业化MIC(Many Integrated Core)协处理器以来,CPU/MIC异构体系结构受到了广泛的重视。虽然如此,CPU/MIC异构体系结构的潜在处理能力仍未得到充分发挥。研制运行时协同调度系统,依据应用运行时的程序特征和CPU、MIC的硬件执行特性,在CPU和MIC间进行合理的任务调度,在不增加开发难度的情况下提高了CPU/MIC异构体系结构的整体性能,具有重要的实际和研究意义。  实现针对CPU/MIC异构体系结构的运行时协同调度系统的关键在于解决不同指令集下的任务生成问题,通过分析任务的程序特征,将其和硬件执行特性进行有效匹配,然后根据系统负载动态调整任务分发策略以在一定程度上保证负载均衡。首先,在对应用的Pthread代码部分进行标记后,系统需要根据这些信息来生成并管理CPU和MIC两种版本的可调度任务。其次,系统需要根据CPU和MIC的主要硬件特性差异,不断地收集和更新应用的计算密集程度和向量化程度等信息,并据此将任务调度到CPU或者MIC端运行,保证任务特征和CPU、MIC硬件特性之间的合理映射。同时,可以将CPU和MIC之间的负载差异作为进行协同调度的辅助依据,保证异构系统负载的相对均衡。最后,由于CPU和MIC间通过PCIE总线进行交互,数据传输可能成为系统性能的瓶颈。因此,系统需要充分考虑CPU和MIC协同工作时的数据依赖情况,并制定相应的策略以减少它们之间的数据传输量。针对CPU/MIC异构体系结构的运行时协同调度系统HostoSink很好地解决了这些问题。  测试结果表明,对于包含大量不同类型任务的应用,HostoSink能够正确完成运行时协同调度功能。相对于在高度并行的应用上通过人工优化只能产生2.5倍的加速比,该系统对于包含大量MIC适用型任务的应用能够产生3.5倍的加速比,对于包含大量CPU适用型任务的应用也能产生1.5倍的加速比。对于数据传输密集型的应用,该系统也能够大幅度地减少CPU和MIC之间的数据传输。
其他文献
自因特网兴起以来,其迅猛增长的势头就从未停止,通信链路以吉比特乃至更高的速度进行数据传输己不成问题,而承担网络通讯任务的传统路由器,通常对数据包未加区分尽力而为地转发,这
本文在分析中小型医院基本需求的基础上,以Powerbuilder和Oracle9i作为开发平台,采用快速原型开发方法,研究和开发了中小型医院信息管理系统的检查检验子系统和院长管理子系统。
数据受损检测作为入侵容忍技术的重要组成部分,有助于保护数据库应用系统的可生存性。但是已有的数据受损检测技术不满足数据库应用系统受损分析的要求,数据受损检测结果存在过
基于策略的网络管理以整个网络为管理对象,能解决传统网络管理不能解决的一些问题,正逐渐成为一种新的网络管理方案。因此将策略管理和传统的SNMP管理结合起来,提出了基于策略的
基于构件的软件工程能够有效地提高软件开发的质量和效率,而构件组装技术是实现基于构件的软件工程的关键。快速发展的Internet计算平台与软件工程的结合更使软件工程具有了更
随着半导体技术和发热量的限制,处理器频率的发展已经不再适用于摩尔定律,处理器频率的提高越来越缓慢,因此通过增加处理器上面的核心数量来提高处理器性能是一个有效的方法。多
目前流行的在线社交网络服务特别是微博客正在改变信息的传播和共享模式。微博服务允许用户轻松的发布和接收消息。推特(Twitter)每天有超过1亿用户发布2.3亿条微博。与其将查
随着计算机网络技术应用的日益普及,关于网络攻击和入侵的问题也日益严重。入侵检测作为系统的最后一道防线,对整个系统安全有着至关重要的作用,现有入侵检测的审计数据缺乏足够
传统的认证机制是基于用户名和密码的,用户要进入系统就必须输入相应的帐号才可以进入。对于一个要访问处于不同系统中资源的用户,他每进入一个系统就要登录一次,这无疑会耗
本文研究对象是WCDMA基站测试系统,针对怎样自动控制硬件完成测试、怎样输出测试报告,提出解决方案,建立高性能的测试系统。 总体设计部分描述了系统硬件环境和总体软件设计