[發明專利]用于訪問矩陣操作數的多變量跨步讀取操作在審
| 申請號: | 202010589581.2 | 申請日: | 2020-06-24 |
| 公開(公告)號: | CN112445526A | 公開(公告)日: | 2021-03-05 |
| 發明(設計)人: | 尼廷·N·加萊格拉特;托尼·L·魏納;杰夫·德爾基亞羅;邁克爾·羅津;羅伯特·T·羅德斯;烏杰瓦爾·巴薩瓦拉杰·薩賈納爾;安妮·Q·葉 | 申請(專利權)人: | 英特爾公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30 |
| 代理公司: | 北京東方億思知識產權代理有限責任公司 11258 | 代理人: | 姜飛 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 訪問 矩陣 作數 多變 跨步 讀取 操作 | ||
本申請涉及用于訪問矩陣操作數的多變量跨步讀取操作。在一個實施例中,矩陣處理器包括用于存儲矩陣操作數和跨步讀取序列的存儲器,其中:矩陣操作數被亂序地存儲在存儲器中;并且跨步讀取序列包括以正確的順序從存儲器中讀取矩陣操作數的一系列讀取操作。矩陣處理器還包括電路,用于:接收要由矩陣處理器執行的第一指令,其中,第一指令用于指示矩陣處理器對矩陣操作數執行第一操作;基于跨步讀取序列從存儲器中讀取矩陣操作數;以及通過對矩陣操作數執行第一操作來執行第一指令。
技術領域
本公開總體上涉及矩陣處理系統的領域,并且更具體地但非排他地涉及用于從存儲器中提取矩陣操作數的多變量跨步(strided)讀取操作。
背景技術
訓練人工神經網絡和/或使用神經網絡執行推理通常需要涉及復雜的矩陣算術(例如許多大的多維度矩陣操作數的矩陣乘法和卷積)的許多計算密集型操作。這些矩陣操作數的存儲器布局對于神經網絡的整體性能非常重要。在某些情況下,例如,以特定格式存儲在存儲器中的矩陣操作數可能需要被提取和/或轉換為不同格式,以對基礎矩陣元素執行某些操作。例如,為了執行某些神經網絡操作,矩陣操作數的維度可能需要被重新排列(shuffled)或重新排序,或者矩陣操作數的某些部分可能需要被提取、切片(sliced)、修剪和/或重新排序。在許多計算架構中,這要求將原始矩陣操作數從存儲器中完整地讀取、轉換為適當的格式或順序、作為新的矩陣操作數存儲回存儲器中,然后進行操作。這種方法可能效率極低,因為它增大了處理延遲、存儲器訪問延遲和存儲器利用率。
發明內容
根據本申請的一方面,提供了一種矩陣處理器,包括:存儲器,用于存儲矩陣操作數和跨步讀取序列,其中:所述矩陣操作數被亂序地存儲在所述存儲器中;并且所述跨步讀取序列包括用于以正確的順序從所述存儲器中讀取所述矩陣操作數的讀取操作序列;控制電路,用于接收要由所述矩陣處理器執行的第一指令,其中,所述第一指令用于指示所述矩陣處理器對所述矩陣操作數執行第一操作;讀取電路,用于基于所述跨步讀取序列從所述存儲器中讀取所述矩陣操作數;以及執行電路,用于通過對所述矩陣操作數執行所述第一操作來執行所述第一指令。
根據本申請的另一方面,提供了至少一種非暫態機器可訪問存儲介質,其上存儲有指令,其中,所述指令在機器上被執行時使所述機器:接收要由矩陣處理器執行的第一指令,其中,所述第一指令用于指示所述矩陣處理器對矩陣操作數進行第一操作,其中,所述矩陣操作數被亂序地存儲在所述矩陣處理器的存儲器中;訪問存儲在所述存儲器中的跨步讀取序列,其中,所述跨步讀取序列包括用于以正確的順序從所述存儲器中讀取所述矩陣操作數的讀取操作序列;基于所述跨步讀取序列從所述存儲器中讀取所述矩陣操作數;以及使得所述第一指令由所述矩陣處理器執行,其中,所述第一指令要通過對所述矩陣操作數執行所述第一操作來執行。
根據本申請的又一方面,提供了一種方法,包括:接收要由矩陣處理器執行的第一指令,其中,所述第一指令用于指示所述矩陣處理器對矩陣操作數進行第一操作,其中,所述矩陣操作數被亂序地存儲在所述矩陣處理器的存儲器中;訪問存儲在所述存儲器中的跨步讀取序列,其中,所述跨步讀取序列包括用于以正確的順序從所述存儲器中讀取所述矩陣操作數的讀取操作序列;基于所述跨步讀取序列從所述存儲器中讀取所述矩陣操作數;以及使得所述第一指令由所述矩陣處理器執行,其中,所述第一指令要通過對所述矩陣操作數執行第一操作來執行。
根據本申請的再一方面,提供了一種系統,包括:主機處理器;以及矩陣處理器,包括:存儲器,用于存儲矩陣操作數和跨步讀取序列,其中:所述矩陣操作數被亂序地存儲在所述存儲器中,并且所述跨步讀取序列包括用于以正確的順序從所述存儲器中讀取所述矩陣操作數的讀取操作序列;控制電路,用于接收要由所述矩陣處理器執行的第一指令,其中,所述第一指令用于指示所述矩陣處理器對所述矩陣操作數執行第一操作,并且其中,所述第一指令是要從所述主機處理器接收的;讀取電路,用于基于所述跨步讀取序列從所述存儲器中讀取所述矩陣操作數;以及執行電路,用于通過對所述矩陣操作數執行所述第一操作來執行所述第一指令。
附圖說明
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于英特爾公司,未經英特爾公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010589581.2/2.html,轉載請聲明來源鉆瓜專利網。





