要提升處理器性能,不斷增加核心數是一種方法。不過北卡羅拉娜州立大學(NorthCarolinaStateUniversity)的研究團隊則另辟蹊徑,藉由發展全新的處理器預取(prefetching)及動態調整數據帶寬兩項技術,將處理器性能推升10~40%之多。
處理器在處理數據時,首先會將數據從內存捉進處理器的快取區內,之后才能繼續后續的運算。若處理器與內存間的帶寬固定不變,而核心數不斷增加時,由于分母越來越大,能分給每個核心的帶寬就會越來越少,進而成為數據傳輸的瓶頸。此外,為了提升處理器運算性能,提前預測即將用到的數據并將它提前讀取進處理器快取內的「預取技術」是許多處理器都會采用的技術。然而預取也不見得是百發百中,一旦判斷錯誤,這個動作反而會讓處理性能變差。
北卡羅拉娜的研究團隊提升處理性能的方法,主要從兩個地方下手:其一是發展新的算法來動態分配各個核心使用的數據帶寬,以減少數據傳輸瓶頸發生的可能。其二則是動態開關預取機制,當預取的準確度低于某個程度時即關閉掉預取的功能,以減少捉取錯誤數據所占用的額外帶寬。引用來源處有完整的公關稿,至于更完整的學術論文內容將于六月九日正式發表。