近10年来,多核处理器在提升个人电脑和智能手机性能降低功耗同时,也让软件开发越来越复杂棘手,无法充分利用多核性能。为了解决这个问题,麻省理工学院开发了所谓的群芯片架构,让软件开发者可以充分挖掘硬件性能,并释放所有核心性能,性能提升在某些情况下可以高达75倍,同时要求程序员编写代码的体积大幅度减小。
由丹尼尔·桑切斯教授和团队开发的群芯片架构是一个64核芯片,在排序和执行上采用简单而有效的方式,将软件开发者从繁重工作当中解放出来。它采用专用电路,非常有效地委派最小任务,严格按照优先级执行任务。其结果是,程序员可以用很少的开销并行执行任务,使得软件运行速度提升多达数十倍。
群芯片架构支持小任务,小到几十指令,效率更高。相比之下,当前的多核需要更大的任务(数以千计的指令),以有效地运行。群芯片架构支持执行这些任务之间的全局秩序,用于处理数据冲突。
为了测试他们的新架构,桑切斯和团队编写了六种常见算法的群版本,和高度优化的并行版本一起对比。值得注意的是,群软件执行相同的任务比其它版本快3到18倍,同时代码规模只有其它版本的十分之一。在一个案例中,该系统能够在计算机科学家迄今没有实现并行的算法当中,提供令人印象深刻的75倍加速。