摩尔定律需要一个拥抱。在小型硅计算机芯片上植入晶体管的日子屈指可数了,它们的救生筏——硬件加速器——是有代价的。在编程加速器时(应用程序将某些任务卸载到系统硬件,特别是为了加速该任务),您必须构建一个全新的软件支持。硬件加速器可以以比CPU快几个数量级的速度运行某些任务,但它们不能开箱即用。软件需要有效地使用加速器的指令,使其与整个应用系统兼容。这意味着需要为一个新的芯片维护大量的工程工作,而你正在用任何编程语言编译代码。
现在,来自麻省理工学院计算机科学和人工智能实验室(CSAIL)的科学家创造了一种新的编程语言,称为“Exo”,用于在硬件加速器上编写高性能代码。Exo帮助低水平的性能工程师将指定他们想要计算的非常简单的程序转换为非常复杂的程序,这些程序与规范做相同的事情,但通过使用这些特殊的加速器芯片,速度要快得多。例如,工程师可以使用Exo将简单的矩阵乘法转换为更复杂的程序,通过使用这些特殊加速器,该程序的运行速度加快了几个数量级。Exo的未来需要探索一种更高效的调度元语言,并扩展其语义以支持并行编程模型,将其应用于更多加速器,包括GPU。
资讯来源:http://news.mit.edu/

