论文部分内容阅读
“未来,异构计算将成为一种普遍的趋势。对学生来说,学习Open CL不仅是掌握一门语言,更重要的是掌握异构计算的思维方式。”5月22日,《OpenCL 异构计算》中文译本发布暨高等院校异构计算综合技能及学科应用培训(北京)在中科院软件所举行。翻译团队代表、中国科学院软件研究所并行软件与计算科学实验室姚继峰博士在谈到该书出版的意义时如是说。
“近年来,应用Open CL开发应用的开发者数量正在不断上升。”在《OpenCL 异构计算》的英文原著编写出版过程中出力不少的AMD公司一直希望推动异构计算在中国的普及。目前,AMD已经在中国十余所大学进行了异构计算及OpenCL的授课和培训,在其不断推动和支持下,已经有老师陆续在各个高校开始相关教学。除此之外,AMD也分别与清华大学、浙江大学等高校合作开展通用GPU应用等科研项目,助力中国专业技术人才队伍的建设及科研创新能力的提高。
AMD中国技术开发与合作总监楚含进介绍说,过去两年中,支持异构计算的软件数量有了大幅度的增加。“过去,异构计算仅被应用在科学计算中。今天,它已经被广泛应用在流媒体等领域。现在,包括Office、Flash等大量主流应用都开始支持异构计算。当然,异构计算的普及还需要一个过程。不过,当它为用户带来的优异体验被广泛接受后,其发展会更为快速。”楚含进表示。
对开发者来说,现有的应用转移到异构计算架构上是否很困难呢?针对这一问题,姚继峰将应用划分为三类:第一类,应用中的某一个函数占用了绝大多数计算资源;第二类,应用中有若干个函数占用的计算资源较高;第三类,应用中的很大数量函数占用的计算资源都比较平均。“我们最希望遇到的就是第一类应用,这样,仅需对占用资源最多的函数进行优化,就能够得到很好的结果。但是,实际情况中经常是有二三十个函数占据的计算资源都在百分之几,这样工作就会比较复杂。”
相对而言,从头编写异构计算程序似乎更容易一些。“一个程序员,只要用不到两个月的时间就可以掌握Open CL。”姚继峰表示。另外,编程者还可以通过调用一些库来实现异构计算。目前,中科院软件所已经编写了一些相关的库。
“随着异构计算的应用越来越广泛,未来PC的架构也会随之发生变化。”楚含进表示,虽然GPU和CPU不会彼此取代,但未来GPU承担的计算任务会越来越重。AMD推出的AMD Fusion APU正是融合CPU和GPU的产物,它能够在兼具两者优势的同时让计算资源在CPU及GPU之间实现智能分配。楚含进表示,目前已有50多款由领先的软件和网络内容提供商提供的应用软件正在利用APU 技术进行加速,其中不乏基于OpenCL开发的应用实例。
“近年来,应用Open CL开发应用的开发者数量正在不断上升。”在《OpenCL 异构计算》的英文原著编写出版过程中出力不少的AMD公司一直希望推动异构计算在中国的普及。目前,AMD已经在中国十余所大学进行了异构计算及OpenCL的授课和培训,在其不断推动和支持下,已经有老师陆续在各个高校开始相关教学。除此之外,AMD也分别与清华大学、浙江大学等高校合作开展通用GPU应用等科研项目,助力中国专业技术人才队伍的建设及科研创新能力的提高。
AMD中国技术开发与合作总监楚含进介绍说,过去两年中,支持异构计算的软件数量有了大幅度的增加。“过去,异构计算仅被应用在科学计算中。今天,它已经被广泛应用在流媒体等领域。现在,包括Office、Flash等大量主流应用都开始支持异构计算。当然,异构计算的普及还需要一个过程。不过,当它为用户带来的优异体验被广泛接受后,其发展会更为快速。”楚含进表示。
对开发者来说,现有的应用转移到异构计算架构上是否很困难呢?针对这一问题,姚继峰将应用划分为三类:第一类,应用中的某一个函数占用了绝大多数计算资源;第二类,应用中有若干个函数占用的计算资源较高;第三类,应用中的很大数量函数占用的计算资源都比较平均。“我们最希望遇到的就是第一类应用,这样,仅需对占用资源最多的函数进行优化,就能够得到很好的结果。但是,实际情况中经常是有二三十个函数占据的计算资源都在百分之几,这样工作就会比较复杂。”
相对而言,从头编写异构计算程序似乎更容易一些。“一个程序员,只要用不到两个月的时间就可以掌握Open CL。”姚继峰表示。另外,编程者还可以通过调用一些库来实现异构计算。目前,中科院软件所已经编写了一些相关的库。
“随着异构计算的应用越来越广泛,未来PC的架构也会随之发生变化。”楚含进表示,虽然GPU和CPU不会彼此取代,但未来GPU承担的计算任务会越来越重。AMD推出的AMD Fusion APU正是融合CPU和GPU的产物,它能够在兼具两者优势的同时让计算资源在CPU及GPU之间实现智能分配。楚含进表示,目前已有50多款由领先的软件和网络内容提供商提供的应用软件正在利用APU 技术进行加速,其中不乏基于OpenCL开发的应用实例。