OpenPOWER+CAPI实现第二代分布计算.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
OpenPOWER+CAPI实现第二代分布计算.doc

OpenPOWER+CAPI实现第二代分布计算   摘要:本文介绍了CAPI技术,并给出基于CAPI应用的三个案例。本文网络版地址:http:///article/281881.htm   关键词:CAPI;CPU;FPGA   DOI:10.3969/j.issn.1005-5517.2015.10.005   1.向第二代分布计算演进   最早的时候计算机系统单任务的,随着数据量的增加,单计算任务的处理能力已不足以满足人们日益增长的需求,所以计算机系统逐渐演进到多任务的计算环境,同时有多个CPU运行(图1),这就产生一个访问内存中的数据,数据的一致性是要急需解决的问题。那么什么是数据一致性的问题呢?当一个CPU对一个数据进行操作之后,另外一个CPU需要拿到正确的数据。   在系统里面,电脑是用硬件来保证数据一致性,同时保证另外一个线程在读取数据的时候能读取到正确的数据。如图2所示,图2中有6个CPU核,每个CPU核都有自己的缓存,他们共享了一个更大的主存。图2展示第一个POWER上面的崭新的应用,要对地址为1000的应用进行操作。第一个应用会把这个地址为1000的数据从主存里面读到自己的缓存上面,并且对它进行修改,比如把它修改成绿色,有另外一个应用跑在了第三个CPU核上面,它也是读取地址为1000的数据,应该期望的是它读到的是绿色的数据而不是原来白色的数据。同样第三个核上的应用会把这个数据进行改写,比如改写成红色,这时候如果还有另外一个应用跑在了第四个第五个核上面的应用,它也会去读取这个数据,也应该期望它能够读到红色的数据,这背后都是由一个内存通知器硬件来帮软件完成这些数据的一致性,保证它们读到的数据都是最新的数据。当计算机系统从一个单CPU系统进化到多CPU系统的时候,它的性能功耗比其实是在下降的,所以现在可以用这样的系统处理更多的数据,比如在线交易业务、企业ERT业务、数据库业务等。   随着互联网的普及,数据量比以往更多。对于系统来说需要更强的硬件计算能力,来处理更多的数据。常见的解决方案是在CPU核上,开辟更多个硬件的线程,用这些线程来提高其处理能力,来帮助它对I/O端口过来的数据进行更好的处理,同时加入了GPU和FPGA,使用这些硬件来帮助系统处理数据(图3)。但是传统上GPU和FPGA都是以I/O设备的形式挂载在这个系统上面,为了使用I/O设备,需要提高技能,如编程人员需要学习硬件知识,需要懂得内核的人为I/O设备进行驱动的开发,同时由于它们是I/O设备,没有和CPU共享内存,所以需要内核代码帮助他们做数据传输。摆在面前的另外一个难题就是半导体技术的性价比不再持续增长,现在已经到了一个拐点,不能依赖于半导体技术的增长使系统更快更强,需要从硬件还有固件、操作系统、设备应用等多角度考虑,寻求一个更好的解决方案。   为了解决这种需求,现在引入FPGA使用CAPI(相干加速器处理器接口)接入系统更快更好地处理数据。随着移动互联网的发展,这样数据会比以往更多,所以我们需要硬件来帮助系统处理数据。当然整个系统不是IBM提供的封闭系统,虽然IBM也有一个192线程的机器,再加上FPGA的板卡,但是IBM没有提供这样一个封闭系统,相反IBM会有更多的合作伙伴,比如中太数据的服务器、NVIDIA的GPU、赛灵思的FPGA芯片、恒扬的FPGA板卡解决方案,还有Ubuntu的操作系统解决方案、三星提供的存储解决方案。以一个合作伙伴的形式,向更多的企业提供应用,提供服务。   CAPI可以使FPGA连接到系统上面(如图4),通过在FPGA上面内嵌了一点处理逻辑,使FPGA上面的硬件可以和CPU线程共同共享一段虚拟的地址空间,在CPU上的线程会产生数据,同时也会产生一个任务队列,队列可以定义指导FPGA上面硬件如何对数据进行操作。在新一代的系统里面,允许FPGA硬件和CPU上面软件共享虚拟的地址空间,并且它们的一致性是由硬件来进行维护。通过一个调动CPU上的软件可以触发IPA硬件去任务队列里面获取任务的描述,然后FPGA通过共享的存储空间来读取内存上面的数据,并产生结果,这些结果和数据都可以被CPU上软件直接访问的。IBM已有系统是工作在这样的模式。用CAPI技术不再需要面对之前麻烦,但是因为FPGA软件员不需要再去了解具体的硬件是如何工作,FPGA工作在协处理器的模式共享内存。   图5是一个OpenPOWER的机器,在红色的两个圈子里是两个POWER8的处理器模块,绿色的地方是可以插两个CAPI板卡的地方。   2.解决方案的案例   CAPI可以在哪里应用呢?向大家介绍三个案例,癌症的治疗方案、银行欺诈的检测、零售业水平的分析。   2.1癌症治疗方案   医生可以把一些药物注入到癌细胞里面,

文档评论(0)

guan_son + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档