[發明專利]一種防止數據溢出的方法、裝置和芯片有效
| 申請號: | 202010044318.5 | 申請日: | 2020-01-15 |
| 公開(公告)號: | CN111258537B | 公開(公告)日: | 2022-08-09 |
| 發明(設計)人: | 不公告發明人 | 申請(專利權)人: | 中科寒武紀科技股份有限公司 |
| 主分類號: | G06F7/499 | 分類號: | G06F7/499;G06N20/00 |
| 代理公司: | 北京維昊知識產權代理事務所(普通合伙) 11804 | 代理人: | 李波;孫新國 |
| 地址: | 100000 北京市海*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 防止 數據 溢出 方法 裝置 芯片 | ||
本公開防止數據溢出的方法、裝置和芯片。其中該防止數據溢出的裝置可以包括在組合處理裝置中,該組合處理裝置還可以包括通用互聯接口和其他處理裝置。該防止數據溢出的裝置與其他處理裝置進行交互,共同完成用戶指定的計算操作。組合處理裝置還可以包括存儲裝置,該存儲裝置分別與防止數據溢出的裝置和其他處理裝置連接,用于防止數據溢出的裝置和其他處理裝置的數據服務。借助于本公開的內容,使得在CPU和機器學習單元交互的時候,數據從CPU拷到機器學習單元上時,數據在從float32浮點數格式數據轉換到float16浮點數格式數據的時候,不會出現float16浮點數格式數據因為狹窄的表示范圍造成的溢出問題。
技術領域
本公開涉及計算機領域,更具體地涉及一種防止數據溢出的方法、裝置和芯片。
背景技術
在現有技術使用的板卡上,由于在機器學習單元上的表示精度是float16浮點數格式,一個float16浮點數格式數據占據兩個字節,其中1位符號位,5位指數位,10位有效精度。數值計算公式為:(-1)^signbit*2^(e)*(1+significantbits)。一個float16浮點數格式數據最大值為:0 111101111111111=(-1)^0*2^15*(1+1-2^-10)=65504,最小值為:0000010000000000=2^-14=6.10*10^-5,即一個float16浮點數格式數據表示范圍是[6.10*10^-5,65504]。而在中央處理單元(CPU)上表示的精度是float32浮點數格式數據。
現有技術存在的缺陷在于,因為CPU和機器學習單元存在交互行為,數據從CPU拷貝到機器學習單元上,數據就從float32浮點數格式數據轉換到了float16浮點數格式數據。但是float16浮點數格式數據因為狹窄的表示范圍會帶來溢出問題。網絡的輸入、輸出或者權值表示的范圍超出了float16浮點數格式數據的表示范圍后,在機器學習單元上這個數值就會溢出(上溢或者下溢)。
發明內容
為了至少解決在上述背景技術部分所描述的問題,以避免數據的溢出,本公開提出了如下的技術方案。
根據本公開的第一方面,提供了一種防止數據溢出的方法,可以包括下面的步驟:
在數據上溢的情況下,將輸入數據先縮小n倍,然后在后續的輸出單元再放大相應的倍數;和/或
在數據下溢的情況下,將輸入數據先放大n倍,然后在后續的輸出單元再縮小相應的倍數。
根據本公開的第二方面,提供了一種用于防止數據溢出的裝置,可以包括:
處理器,其配置用于執行程序指令;以及
存儲器,其配置用于存儲程序指令,當程序指令由處理器加載并執行時,使得裝置執行根據上述的方法。
根據本公開的第三方面,提供了一種用于防止數據溢出的芯片,可以包括:
輸入端,其配置成用于接收輸入數據;
處理器,其配置成用于:
在數據上溢的情況下,將輸入數據先縮小n倍,然后在后續的輸出單元再放大相應的倍數;和/或
在數據下溢的情況下,將輸入數據先放大n倍,然后在后續的輸出單元再縮小相應的倍數。
借助于上述的技術方案,使得在CPU和機器學習單元交互的時候,數據從CPU拷到機器學習單元上,即數據在從float32浮點數格式數據轉換到float16浮點數格式數據的時候,不會出現float16浮點數格式數據因為狹窄的表示范圍造成的溢出問題。
附圖說明
圖1示意性示出了現有技術中CPU的批量歸一化層(bn層)的計算邏輯圖。
圖2示意性示出了根據本公開一個實施例的防止數據溢出的方法流程圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中科寒武紀科技股份有限公司,未經中科寒武紀科技股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010044318.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種區塊鏈私鑰托管方法及系統
- 下一篇:一種復雜形狀大型薄壁件及其制造工藝
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





