“我们的目标是促进代码转换,使其能够在结合了多核处理器、多显卡和可重构硬件的并行异构平台上执行,”项目协调员、卡洛斯三世大学计算机科学系教授何塞·丹尼尔·加西亚解释道。“我们在性能和能效方面都取得了非常显著的提升,其效果可与手动开发流程相媲美;不同之处在于,手动开发流程需要数月的工程时间,而我们的半自动化流程只需几天即可完成同样的工作。”.
这些计算在各个领域都有应用,例如医疗保健(预测蛋白质对接)、交通运输(监控铁路系统)、机器人(立体视觉和导航)或工业(分析零件制造中的缺陷)。.
REPARA 项目旨在让用户无需投入通常与此类复杂架构相关的巨大开发成本,即可享受到这些计算机系统的能源和性能优势。实现这一目标的关键在于源代码的“重构”,这是一种软件工程技术,用于在不改变程序可观察行为的前提下改进其内部结构。这类似于改变建筑物管道和压力泵的布局,使水流更快、更清洁、更环保。重构可以改善三个基本属性:应用程序性能(有助于提高执行速度)、能源效率(降低能耗)以及源代码的维护和修改的便捷性。.
这些研究人员已在《国际并行编程杂志》上发表了部分研究成果,他们开发并注册了三款技术产品,并已与一家表示有意向的欧洲公司合作,这些产品有望实现商业化应用。“这些软件产品能够简化开发流程,从而帮助我们向第三方提供工程服务,”何塞·丹尼尔·加西亚教授说道。.
REPARA项目(应用性能与能力重构与提升)于2013年9月启动,2016年8月结束,汇集了来自五个欧洲国家的学术界和工业界的并行与异构计算系统专家。该项目预算超过360万欧元,其中超过260万欧元来自欧盟第七框架计划(FP7),即欧盟主要的科研资助工具。共有六所学术机构参与其中:瑞士拉珀斯维尔应用科学大学、西班牙马德里卡洛斯三世大学、意大利比萨大学、匈牙利塞格德大学、德国达姆施塔特工业大学和意大利都灵大学。此外,该项目还有两家工业界合作伙伴:西班牙的Ixion Industry & Aerospace公司和匈牙利的Evopro Innovation公司。卡洛斯三世大学 (UC3M) 是 REPARA 项目的协调机构,并通过 ARCOS 研究小组参与该项目,该小组将其在高性能计算和嵌入式系统方面的经验贡献给该项目。.
REPARA 项目网站: http://www.repara-project.eu
参考文献:
R. Sotomayor、LM Sanchez、JG Blas、J. Fernandez 和 JD Garcia。“用于 C++ 科学应用的多版本 OpenCL 内核的自动 CPU/GPU 生成”。《国际并行编程杂志》,2016 年。
