近10年來,多核處理器在提升個人電腦和智能手機性能降低功耗同時,也讓軟件開發越來越復雜棘手,無法充分利用多核性能。為了解決這個問題,麻省理工學院開發了所謂的群芯片架構,讓軟件開發者可以充分挖掘硬件性能,并釋放所有核心性能,性能提升在某些情況下可以高達75倍,同時要求程序員編寫代碼的體積大幅度減小。
由丹尼爾·桑切斯教授和團隊開發的群芯片架構是一個64核芯片,在排序和執行上采用簡單而有效的方式,將軟件開發者從繁重工作當中解放出來。它采用專用電路,非常有效地委派最小任務,嚴格按照優先級執行任務。其結果是,程序員可以用很少的開銷并行執行任務,使得軟件運行速度提升多達數十倍。
群芯片架構支持小任務,小到幾十指令,效率更高。相比之下,當前的多核需要更大的任務(數以千計的指令),以有效地運行。群芯片架構支持執行這些任務之間的全局秩序,用于處理數據沖突。
為了測試他們的新架構,桑切斯和團隊編寫了六種常見算法的群版本,和高度優化的并行版本一起對比。值得注意的是,群軟件執行相同的任務比其它版本快3到18倍,同時代碼規模只有其它版本的十分之一。在一個案例中,該系統能夠在計算機科學家迄今沒有實現并行的算法當中,提供令人印象深刻的75倍加速。