说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

专访西电朱虎明:异构计算硬件架构呈现百花齐放 百家争鸣

HTML文档下载 WORD文档下载 PDF文档下载
AMD已成功举办5届异构开发者大赛,从第三届开始,朱虎明老师就带领他的同学一直参加这场比赛,并取得非常好的成绩。对此,不妨让我们来看看他对异构计算有哪些看法,对即将要学习异构计算的同学有哪些建议。

因比赛而结缘异构计算的朱虎明老师,带领他的团队屡次在比赛上获奖。可以说,他已成为异构计算领域不折不扣的专家。对此,CSDN记者就异构计算近年来的技术演变、发展趋势、以及开发者该如何学习异构计算等话题采访了他。


CSDN:请您先简单介绍一下自己以及目前主要关注研究的领域。

朱虎明:我目前主要从事高性能计算及其应用的研究,特别是基于集群和GPU的大规模并行计算及其在数据挖掘、SAR图像处理和智能计算领域的应用。

CSDN:您如何看待异构计算/编程领域这些年来的技术演变、应用拓展状况及未来发展?

朱虎明:异构计算的硬件架构及其编程模式现在处于百花齐放 、百家争鸣的阶段,各个公司和各个研究机构都提出了自己的解决方案。目前Intel、AMD、Nvidia和ARM等公司均推出了自己的多核/众核架构,这些架构差异很大,我个人认为将来这些架构会互相取长补短,深入融合,从而达到高性能低功耗的目的。从并行编程的角度来说,要继续提高编译器的智能性,以使大量的高复杂应用经过编译后能够直接高效地运行在并行硬件上,而不是一个一个的去研究算法的并行化,当然,从目前的研究成果来看,短时间内要取得突破可能性不大。另外一个方面就是靠人工来并行化已有的应用,这个需要大量既懂并行又懂专业领域知识的人才,目前并行人才的短缺制约着其发展。我想目前业界的思路就是降低并行编程的难度,使得大量的应用领域专家能够很容易学会使用并行编程工具,或者能够借助第三方的并行开源库,来加速并行计算在各个专业领域中的应用和推广。 

CSDN:作为领域内的专业人士,您认为哪些开发者应该优先学习异构编程的技能?未来异构编程的技能会成为开发者的通用技能吗?

朱虎明:就我所知的领域而言,卫星图像处理、视频分析、生物信息学和大规模数据挖掘等领域由于算法复杂,已经基于高性能计算集群开发了很多的应用,如果将其应用能够移植到异构计算系统上,那将是高性能低成本的解决方案。

今天的桌面级计算平台几乎都使用了异构计算的架构,但是由于异构软件开发者的短缺,只有一些应用支持异构计算平台,我想,谁首先掌握了异构计算的技能,谁就能在未来的竞争中获得先机。

CSDN:您如何看待AMD最新推出的hUMA(异构统一内存访问)技术对GPU/CPU融合带来的影响力,它有哪些优势和劣势?

朱虎明:hUMA(heterogeneous Uniform Memory Access,异构统一内存访问)的出现,我想会使得以前很多不适合运行在GPGPU上的应用,也可以尝试使用GPU来加速。这是因为在以前的CPU+GPU计算模式中,首先要把处理的数据通过PCI总线传输到GPU的显存上,然后GPU对数据进行并行处理,最后将GPU计算的结果又传回给内存,这种模式下,对计算时间/通信比值小的应用,或者不适合或者加速比较有限。新的hUMA技术,不需要在CPU与GPU之间传输数据,这必将会使GPU计算适用于更多的复杂应用。

但是由于这是一个新技术,AMD也没有透漏更多的技术细节,所以目前不好给出更多评价,但是我们很期待这个产品。

CSDN:HSA帮助开发者更高效、更容易的进行开发,并获得可观的性能提升及功耗降低,但这还需要一至两代产品更新才能实现。在当下,开发者学习和使用异构编程有价值吗?

朱虎明:HSA的成立对推动异构计算无疑是非常有帮助的,以前GPU计算主要是Nvidia和AMD推动,成效显著,但是GPU计算仍然是阳春白雪,仅限于既懂并行又懂领域知识的人使用。HSA的成立,致力于打造异构计算的软硬件生态系统,必然会推动异构计算进一步的快速普及。

据透露,HSA年底前推出hUMA(heterogeneous Uniform Memory Access,异构统一内存访问),这是异构计算硬件上的一大进步,我们也希望其配套软件也很快能够问世。那是不是要等软硬件都齐全了,我们再来学习异构计算呢?我个人认为,那可能太晚了。大家都知道,异构并行计算的编程方式与传统的MPI和openMP并行不太一样,要熟练掌握异构计算需要一定的时间周期,而要把异构计算应用于某个领域,那需要的时间就更长了。如果等异构计算的软硬件都非常成熟了,那我们已经落后了。所以,要想占领异构计算的制高点,那就要从现在起抓紧时间学习。等将来新的异构计算技术出来了,我们已经具有丰富的异构并行计算经验了,会很快的将旧的应用移植到新的架构下,从而快速占领市场。

CSDN:如何看待在高性能计算领域流行的CPU/GPU异构计算并获得高性能低功耗在移动平台的运用?

朱虎明:一方面,桌面级CPU/GPU异构计算已经广泛使用在各个领域,更多的基于CPU/GPU的应用还在研究和开发之中,另外一方面,随着智能手机、平板电脑和移动互联网的普及,移动平台上的复杂应用越来越多,要求平台具有高性能和低功耗的特点,但是目前好像还难以达到这个标准。从技术上来说,移动平台已经具有4~8个CPU核,2~8个GPU核,未来还会迅速增加到数十个之多,这些为移动平台的并行计算打下了坚实的基础。我想,与桌面级CPU/GPU应用相比,移动平台的并行应用还处于初级阶段,仅有几个高端平台支持openCL语言,而且由于移动平台计算与存储资源的限制,很多桌面级的原有并行应用和并行库不能直接使用,还需要从新开发和优化。但是根据目前三星研究院和加州大学的研究成果显示,移动平台采用CPU/GPU异构计算后,不但可以加速应用,而且可以降低功耗。因此,我认为移动平台CPU/GPU异构计算非常有发展前途,但是并行计算的生态系统建立还需要很长的时间。

CSDN:C++大师Herb Sutter曾发表过一篇著名的文章《The Free Lunch Is Over》,他表示程序员不断获取硬件升级带来帮助的日子已经结束了,并行计算或异构计算将是未来的趋势。Intel在内的公司不断推出了多核、众核处理器,虽然包括AMD和英特尔等公司做了很大努力,开发者驾驭多线程的编程难度很大,现在学习异构开发的难度依然很大吗?开发工具、函数、算法成熟吗?

朱虎明:我在我们学校已经从事异构计算的科研和教学三年多了,就我个人的经验而言,不管是本科生还是研究生,初次接触异构计算时,仍然面临很大的学习门槛。

就异构计算的研究和开发而言,其发展的速度非常快。异构开发的工具、支持的语言和并行库也越来越多,而且不断有新的基于异构计算应用被研究。目前,异构计算的软硬件都在不断革新中,硬件架构几乎每年都在升级,经常不保证通用计算的向前兼容性。异构计算尽管开发了很多的应用,但是至今仍然没有一个广泛使用的通用异构计算库,使得每一次的异构开发几乎都是从零开始。所以我认为,异构开发的整个生态系统还需要进一步的完善和提高。

CSDN:对想学习或入手异构编程的开发者有什么建议吗?

朱虎明:今天的桌面级计算平台几乎都使用了异构计算的架构,但是由于软件开发的滞后性,只有一些应用支持异构计算平台,比如用于图像处理的Photoshop CS6、用于科学计算的Matlab和谷歌的浏览器Chrome23等。因此很多新的应用开发都需要异构计算人才,但是市场上懂异构计算的开发者却很少。我想造成这个现象的原因很多,其中一点可能就是社会还没有建立起异构计算的人才培养体系,而且市场上很少有适合初学者的学习资料。

基于以上的认识,我想如果要学习异构计算,可能要靠开发者自己多找资料、多实践和多思考。当然另外一方面,情况也在改变,比如CSDN就在网络上建立了“异构开发技术社区”,西安电子科技大学与AMD联合开设了异构计算的课程,并建立了课程学习主页(http://hpc.ee.xidian.edu.cn/html/course/2012/0725/33.html),将来还会在主页上分享更多的异构学习资料。

CSDN:对AMD举办异构开发者大赛的想法和建议?带队参赛感悟?

朱虎明:AMD举办异构开发者大赛是非常好的一件事情,我本人也是由于参加大赛从而了解异构计算,并开始深入研究异构计算并将其应用于我们的科研实践中,目前已经基于异构计算平台开发了卫星图像处理系统、数据挖掘系统和智能计算系统等软件。通过大赛,我们也认识了国内从事异构计算的很多专家学者,与他们的交流,提高了自己的水平。我本人也在AMD的支持下,开设了“异构计算的课程”,从2011年以来,已有数百研究生选修了这门课,通过理论课和实验课的学习,他们掌握了异构计算技术,并将其应用于他们自己的研究领域,取得了良好的效果。趁此机会,我也想感谢AMD提供了这样的机会。

异构开发者大赛已经举办了5届,应该说,与5年前相比,今天异构计算取得了长足的进步,但是,我还是希望AMD能够继续举办这样的竞赛,让更多不懂异构计算的人来学习异构计算,让懂异构计算的专家能够继续提高自己的水平。

异构开发者大赛已经举办了5届,我们参加了3、4、5三届,每次都取得了很好的成绩,我想,之所以能够取得这么好的成绩,首先是我们参赛的学生有学习的动力,由于我们实验室侧重于算法的研究,这些算法在求解大规模问题时经常需要数小时甚至数天,因此他们迫切需要异构计算理论来加速他们的算法。第二就是实验室良好的研究氛围,实验室经常有国内外学者前来访问和交流,使得我们能够及时掌握国内外的最新算法,这样每一次竞赛我们都是学术界最新的算法,保证了我们参赛作品的新颖性,比如这一次我就是和实验室公茂果教授合作,将他研究的最新成果与异构计算相结合。第三就是与AMD技术专家的及时沟通。在竞赛中,AMD会指定专家对每一个参赛队伍提供技术支持,我们有问题时会与AMD专家积极交流,从而保证竞赛的进度。最后一点就是参赛学生的辛勤付出,由于实验室科研任务多,日常工作时间学生都忙于自己的研究工作,竞赛作品主要依靠晚上、周末甚至节假日来完成。

注:本文由付江采访 张红月整理成稿。

细微之处见真章 为什么要在try-catch-finally里加大括号 独立开发者:面对攻击就要“脸皮厚+更自豪” IBM纳米光子芯片对付大数据 单个通道25Gbps AWS数据仓库服务Redshift是最好的选择吗? 又赚了一笔:微软向两公司收取Android专利费 深度解析:Android4.2系统“应用验证服务” 欧洲移动游戏大会:五大行业趋势 大揭秘:Windows Phone 8 键盘输入的8个设计精髓 朝鲜:探寻最神秘的移动互联网王国 如何让IE 10玩转响应式网站 Windows Server 2012:令CIO激动的三个新特性 高德和新浪微博战略合作 打通账号互调数据 乐观锁和悲观锁 你更钟情于哪一个? Apple索30%分成 iOS版微软SkyDrive更新搁浅 [简讯] Linux 3.7发布 开源图形卡驱动程序 高效敏捷的十大经验法则 佛瑞斯特资讯公司预测2013年云计算的十个变化 百会中小企业CRM年会成功举办 发布CRM选型指南 诺基亚创新体验中心NEIC训练团正式开班 新威胁:IE新漏洞允许网站跟踪鼠标 少编码多思考:代码越多 问题越多 [简讯] JDK 7u10发布 修复安全漏洞 搜狗茹立云:为何搜狗语音助手比Siri更精准? BlackBerry 10最终版SDK Gold发布 谷歌地图正式登陆App Store 为开发者推出SDK 你的云数据的三个最大威胁 公开叫板:Google不打算推出Win8版Gmail和Drive APP备案风波:开发者何去何从? 32位和64位的JVM 我该选择哪个呢? 黑莓“Got Game Port-a-Thon”活动将于12月22日在北京举行 专访Moti Joseph:浏览器安全的经验之谈 编译一问 SOS,很严重windows的问题,高手快进 !!! 有人开发过基于winpcap的网络抓包程序么? SOS,很严重windows的问题,高手快进 ! 通过双网卡上网怎么设置? 一名初学者的问题? 各位老大,如何控制windows的资源管理器显示/不显示后缀名 问一下现在4000元可以买到大概什么配置的笔记本电脑 谁知道用VC++直接操作硬盘?告诉我一声,多谢了 请问考OCP的12本宝典在哪里下载?有人能介绍介绍经验吗?谢谢! Nobody can help me? 去考MCSD我合格吗? 怎样让程序自动修改IE中htm文件? !!!andyting!!!!过来拿分!!!!!! 请问各位大陆市场有没有<>? 请问学习vb有什么好书吗?请高手们帮帮忙,推荐几本好书?谢了!~ 谁知道生成随机数的算法 ListView问题 急急急急急急急急急急急急急急急急急急!!!! 如何向Access数据库中加入图片并从数据库中读出显示? 急,请问如何查询多个表(这些表有公共字段)查询结果按公共字段生成输出表单 请问关于利用JSP转换成HTML格式的问题 格了C:... 我装了Xteam linux kernel版本为:2.4.2,可是启动的时候屏幕上竟是0101010101010101,但用引导盘启动就可以的. 请高手们指点 "afx"是什么意思? 钩子函数里:GETMESSAGE????hook问题 大家帮帮忙!!我用vc中的Win32 console application调试c++程序时,输出的结果总是看不到,一出来就不见了啊!怎么办啊????急!!!!! 请教高手TDataSource的问题????????????????????????????????? TShockWaveFlash控件怎么样在播放时屏蔽其右键?另外怎么样让它在播放时单击鼠标让其播放结束?( Delphi版中没人回答 ,到这儿来试试) 谁有pb6.5的源代码,偶初学pb,想参考一下,最好是access或sql的,偶愿意送300分/个 LPWSTR-CString的相互转化? SQL语句问题,请指教。 我算不算“蓝领”? unix下面怎么实现多线程?可不可以发个例子给我?我的邮箱是caochao@powerise.com.cn 如何将数组中的一个元素附以二进的值 又来送分了! 请问用水晶报表设计报表的VB程序,安装时是不是一定要装水晶报表,如果不,安装应该怎么办? ListView问题:怎样在程序中自动选择LISTVIEW控件的某项或某些项? 怎样用VC设置在窗口区域内的鼠标形状? 如何在一个窗体的OLE控件内播放一个flash动画,不是另开窗口播放!谢谢! 不使用MFC,显示BMP文件的方法 请问什么时候可以知道程序员通过否? 招聘WINDOWS程序界面设计程序员 我明天签珠海天心,大家给个意见先!! 现在怎么办? 谁会在页面上加入右建菜单? 如何在程序里动态创建控件 如何转换字符型为CString型? to:ChinaOK-----401的设置方法? 不用winsock 用api的哪个函数可获得本机的网卡地址及ip地址?? 用酒精和水浸泡蝴蝶兰花可得到紫色溶液,该溶液遇酸溶液显红色遇碱溶液显黄色,下 为什么初中的化学知识到高中是错误的我们老师说现在学习的化学知识有的到高中是错误的 咋回事? 关于物理的题目,每个选项要有解析两列火车相向而行,第一列的速度大小为36km/h,第二列为54km/h.第一列火车上的乘客测出第二列火车从他旁边通过所用的时间为5s.以下结论正确的是( )A.两 什么铁离子遇到碱会变成黄色?谢谢! 能给我解释下B选项和C选项吗pH=a的稀NaOH溶液xmL与pH=b的稀盐酸ymL充分反应.下列关于反应后溶液的pH判断,正确的是(D)A.若x=y,且a+b=14,则pH> 7 B.若10x=y,且a+b=13,则pH=7C.若ax=by,且a+b=13,则pH= 7 D. 这道物理题c选项怎么做呢 植物中哪种成分遇酸变红,遇碱变蓝? 例子:混合物无固定的熔沸点.......等等 在溶液的配置里说“250ML水配置5mol的氯化钠溶液”这句话中的摩尔是指克嘛? 我刚去喝羊肉汤,加盐时发现很潮湿.也没管那么多,就加到碗里了.后来觉得味道不对.吃完后就问老板,这碗盐是不是坏了,怎么会是潮湿的.后来老板温了一下味道,判定是有人往里面倒酒了.我想 高中和初中所有的化学知识 如何配制250mL 0.2moL氯化钠溶液和计算所需氯化钠质量的步骤工式 同一弱电解质,增大或减小溶液的物质的量浓度,为什么电离平衡都将向电离方向移动?还有为什么电解质的电离程度却一减一增? 湖南省化学特岗教师考的化学知识是高中的还是初中的 配置250ml 0.1mol/l NaCl溶液 常温下物质的量浓度相同的HF、HNO2、HCN、NH3·H2O、H2S溶液,它们的电离平衡常数分别为7.2×10-4、4.6×10-4、4.9×10-10、1.8×10-5和K1 = 9.1×10-5,K2 = 1.1×10-12,其中,氢离子浓度最小的是 ,溶质 若要用NaCl配制0.5mol/L的NaCl溶液,5%的NaCl溶液,在实验操作步骤上有哪些不同若要用NaCl分别配制0.5mol/L的NaCl溶液和5%的NaCl溶液,在实验操作步骤上有哪些不同? 请问 配制250ml 0.2mol|l的氯化钠溶液的具体步骤及涉及的公式 锰酸酸酐,亚硝酸酸酐的化学式,还有MNO2是酸酐吗 同济大学普通化学化学第二版习题答案.告急! 求详细解答,第17题C,D选项选哪个 请问一氧化氮是不是亚硝酸酸酐啊? 一道大学普通化学化学题求解 第一题(多选)求C,D选项的解析 HNO3与HNO2的酸酐是什么?急 大学普通化学题求解,第17 2道大学有机化学题目 需详解化合物A的分子式为C6H10,有光学活性,能使溴的四氯化碳溶液褪色,但不能使高锰酸钾饿水溶液褪色,A加1 mol H2能生成两种化合物,都无光学活性,请推测A的结构式.化合 实验室需要配制下列溶液,试回答相关问题:1.用氯化钠固体配制200g16%的氯化钠溶液,试计算氯化钠质量并分布写出配制过程.2.某实验需要93ML2摩尔每升的氯化钠溶液,试计算氯化钠质量并分布 求大学普通化学第5版 浙大 的课后习题解析过程 1.“含有氮氧键化合物的Lewis结构式,往往带有正负分离的电荷”我不是很理解为什么会出现正负分离的情况,就是说,为什么含有氮氧键化合物的Lewis结构式众氧带负电荷而氮带正电荷2.“sp杂化 实验室配制100g10%的氯化钠溶液时,需要_____g氯化钠固体? 试计算下列反应的qpFeO(s)+CO(g)=Fe(s)+CO2(g) 要配制500mL,0.4mol/L NACL溶液,需要NACL固体的质量为多少?怎么计算? 为什么我算的是A选项? 一道大学普通化学题Which of the following is non-SI unit——milliliter,milligram,kilopascal,centimeter and millimole?什么是 non-SI unit? 为什么这么选...其他选项有什么不妥..He gave it back to me.He( )to me.a.turned it b.retured it c.turned it back d.turned it round 这道题的C,D选项怎么做,谢谢您的回答 一道大学《普通化学》题下列几种物质的水溶液,凝固点最高的是?A.0.1mol/L C6H12O6(葡萄糖)B.0.1mol/L NaClC.0.1mol/L HAc(醋酸)D.0.1mol/L CaCl2都是在标准状况下 怎样配置50g16%的nacl溶液(1)所需的仪器(2)配置的步骤 请问,这道题的D选项怎么算出来的? 南开大学《定量分析化学》中272页的习题1该怎么计算?555.题目传不上来.没办法截图.就是画圈的题目,大家帮帮忙撒~~~ 说明选这个答案的理由 最好对每个选项都作出分析1They suggested that a committee be set up to____ the matter[A] look for [B] look after [C] look in [D] look into2He did not work hard enough and_____ he failed the exam[A] as a resul 第五题A和C选项是怎样计算的, 在恒容绝热容器中发生自发的化学反应,反应的结果体系的温度和压力都升高了,则此过程中Q()0,W()0,△U()0,△H()0,△S()0.[括号内填>、=或 “化学性肝损伤”和“熬夜”有什么联系?我常熬夜,朋友送了一种茶,上面写对“化学性肝损伤”有辅助治疗作用,请问我喝它来保健没什么问题吧? 海水里的氯化钠提纯加入什么试剂出去杂质的?加试剂的先后顺序是什么?硫酸根、氢氧根、碳酸根去除的先后顺序? 实验室要配制50克溶质质量分数为20%的硝酸钾溶液,现有25g溶质质量分数为40%的硝酸钾溶液,20g溶质质量分数为15%的硝酸钾溶液.请选用上述的药品,设计三种配制方案. 2,大学的化学求平均分子量,成分质量分数的题目一个CH4,80%C2H4,10%C2H6,10%混合物,25lb,求平均分子量,还有各个成分的质量分率(分数),写下过程的, 氯化钠怎么样进一步的提纯?我在一种液体里面加化学药品提取到了氯化钠但是结晶和纯度都很不好,是不是有什么可以添加化学药品或催化剂的办法使其加快结晶和进一步的更高提纯呢?有没 实验室要配制50g溶质质量分数为20%的硝酸钾溶液.现有25g溶质质量分数为40%的KNO3溶液、20g溶质质量分数为15%的硝酸钾溶液及足够多的硝酸钾晶体和蒸馏水.请选用上述药品,设计三种配制方案( 现有下列四种原料:①氯化钠晶体;②蒸馏水;③20%氯化钠溶液;④2%氯化钠溶液.如果选择上述原料配制50 g溶质质量分数为10%的氯化钠溶液,请你将设计的配制三种方案填写在下表中.(过程! 食盐能否提取氯化钠,怎样从食盐中提取氯化钠 实验室要配制溶质质量分数为20%的硝酸钾溶液,现有25g溶质质量分数为40%的硝酸钾溶液.请选用上述的药品,设计两种不同的配制方案,通过计算说明配置时所需的各种药品及其用量还有20克溶 一瓶盐酸溶液的PH值是4,往该溶液中加入氯化钠溶液,其PH值如何变化?加氯化钠晶体呢? 食盐能否提取氯化钠?如何从食盐中提取氯化钠? 高中的化学知识跟初中的知识有联系吗? 怎么做(大学普通化学),急需 提纯混有KNO3的Nacl的方法 高一的化学和初中的化学有啥联系,以及初中和高中的化学重点是什么? aaa样题物理第三题C选项如何分析!
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn