chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

單精度、雙精度和半精度浮點格式之間的區(qū)別

strongerHuang ? 來源:嵌入式專欄 ? 作者:strongerHuang ? 2020-11-29 09:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

我們學過數學,都知道有理數和無理數,然后在有理數中有一類叫浮點數的數字,不知道大家對這些還有沒有印象?

在軟件編程的時候,我們也會用到浮點數,一種既包含小數又包含整數的數據類型。

下面就來講講關于浮點數中,單精度、雙精度、多精度和混合精度計算的區(qū)別。

1

關于圓周率 π我們提到圓周率 π 的時候,它有很多種表達方式,既可以用數學常數3.14159表示,也可以用一長串1和0的二進制長串表示。

圓周率 π 是個無理數,既小數位無限且不循環(huán)。因此,在使用圓周率進行計算時,人和計算機都必須根據精度需要將小數點后的數字四舍五入。

在小學的時候,小學生們可能只會用手算的方式計算數學題目,圓周率的數值也只能計算到小數點后兩位——3.14;而高中生使用圖形計算器可能會使圓周率數值排到小數點后10位,更加精確地表示圓周率。

在計算機科學中,這被稱為精度,它通常以二進制數字來衡量,而非小數。對于復雜的科學模擬,開發(fā)人員長期以來一直都依靠高精度數學來研究諸如宇宙大爆炸,或是預測數百萬個原子之間的相互作用。

數字位數越高,或是小數點后位數越多,意味著科學家可以在更大范圍內的數值內體現(xiàn)兩個數值的變化。借此,科學家可以對最大的星系,或是最小的粒子進行精確計算。

但是,計算精度越高,意味著所需的計算資源、數據傳輸和內存存儲就越多。其成本也會更大,同時也會消耗更多的功率。

由于并非每個工作負載都需要高精度,因此 AI 和 HPC 研究人員可以通過混合或匹配不同級別的精度的方式進行運算,從而使效益最大化。

NVIDIA Tensor Core GPU 支持多精度和混合精度技術,能夠讓開發(fā)者優(yōu)化計算資源并加快 AI 應用程序及其推理功能的訓練。

2

單精度、雙精度和半精度浮點格式之間的區(qū)別

IEEE 浮點算術標準是用來衡量計算機上以二進制所表示數字精度的通用約定。在雙精度格式中,每個數字占用64位,單精度格式占用32位,而半精度僅16位。要了解其中工作原理,我們可以拿圓周率舉例。

在傳統(tǒng)科學記數法中,圓周率表示為3.14 x100。但是計算機將這些信息以二進制形式存儲為浮點,即一系列的1和0,它們代表一個數字及其對應的指數,在這種情況下圓周率則表示為1.1001001 x 21。

在單精度32位格式中,1位用于指示數字為正數還是負數。指數保留了8位,這是因為它為二進制,將2進到高位。其余23位用于表示組成該數字的數字,稱為有效數字。而在雙精度下,指數保留11位,有效位數為52位,從而極大地擴展了它可以表示的數字范圍和大小。

半精度則是表示范圍更小,其指數只有5位,有效位數只有10位。圓周率在每個精度級別表現(xiàn)如下:

3

多精度和混合精度計算的差異多精度計算意味著使用能夠以不同精度進行計算的處理器,在需要使用高精度進行計算的部分使用雙精度,并在應用程序的其他部分使用半精度或單精度算法。

混合精度(也稱為超精度)計算則是在單個操作中使用不同的精度級別,從而在不犧牲精度的情況下實現(xiàn)計算效率。

在混合精度中,計算從半精度值開始,以進行快速矩陣數學運算。但是隨著數字的計算,機器會以更高的精度存儲結果。

例如,如果將兩個16位矩陣相乘,則結果為32位大小。使用這種方法,在應用程序結束計算時,其累積得到結果,在準確度上可與使用雙精度算法運算得到的結果相媲美。

這項技術可以將傳統(tǒng)的雙精度應用程序加速多達25倍,同時減少了運行所需的內存、時間和功耗。它可用于 AI 和模擬 HPC 工作負載。

隨著混合精度算法在現(xiàn)代超級計算應用程序中的普及,HPC 專家 Jack Dongarra 提出了一個新的基準,即 HPL-AI,以評估超級計算機在混合精度計算上的性能。

混合精度計算主要用于現(xiàn)在很火人工智能領域,感興趣的讀者可以上網搜索更多關于混合精度計算的內容。

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 編程
    +關注

    關注

    90

    文章

    3710

    瀏覽量

    96979
  • 浮點數
    +關注

    關注

    0

    文章

    62

    瀏覽量

    16383
  • 單精度
    +關注

    關注

    0

    文章

    8

    瀏覽量

    2405

原文標題:單精度、雙精度、多精度和混合精度計算的區(qū)別是什么?

文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    嵌入式中的浮點型數據轉換為字節(jié)類型的三種方法

    單精度浮點型變量 double b; // 聲明精度浮點型變量 單精度(float型)與
    發(fā)表于 01-07 06:28

    ADC分辨率與精度區(qū)別是什么

    簡單點說,“精度”是用來描述物理量的準確程度的,而“分辨率”是 用來描述刻度劃分的。從定義上看,這兩個量應該是風馬牛不相及的。(是不是有朋友感到愕然^_^)。 很多賣傳感器的JS就是利用這一點
    發(fā)表于 12-05 06:24

    浮點指令(三)

    浮點指令以及簡單解釋 fcvt.s.d fcvt.s.d rd, rs1, rs2//f[rd] = f32f64(f[rs1]) 精度單精度
    發(fā)表于 10-24 13:38

    浮點指令(二:精度

    浮點指令以及簡單解釋 fadd.d fadd.d rd, rs1, rs2//f [rd] = f [rs1] + f [rs2] 精度浮點加(Floating-point Ad
    發(fā)表于 10-24 13:00

    蜂鳥E203擴展浮點指令設計(2)

    中的單精度浮點數值等于rs2中的值,結果為1,否則為0,將結果寫回通用整數寄存器rd中。 此三個指令可以和fmin,fmax指令采用同一個模塊實現(xiàn),其區(qū)別是,此三個指令返回的結果為1或者0,并且返回
    發(fā)表于 10-24 11:56

    浮點指令(一:單精度

    浮點指令以及簡單解釋 fadd.s fadd.s rd, rs1, rs2//f [rd] = f [rs1] + f [rs2] 單精度浮點加(Floating-point Add
    發(fā)表于 10-24 11:42

    蜂鳥E203擴展浮點指令設計(1)

    浮點指令介紹 單精度浮點指令一共30個:其中包括26個32位指令;4個16位的壓縮指令。 如果按照分類來算一共有以下幾種指令: 2.1浮點數讀寫指令 32位指令
    發(fā)表于 10-24 10:00

    浮點指令(七:寄存器)

    0x7fc00000,精度浮點對應Canonical-NaN數值為0x7ff80000_00000000 如果同時支持單精度浮點(F擴展指
    發(fā)表于 10-24 08:28

    RVF單精度浮點指令集擴展介紹(2)

    RVF單精度浮點指令集擴展 RVF擴展了26條浮點指令。 浮點乘加指令 浮點比較、最大最小值、轉移、符號注入、分類指令
    發(fā)表于 10-22 07:26

    IEEE 754浮點算術標準(1)

    IEEE 754 浮點格式 單精度浮點格式如圖所示: 符號位 指數項:移碼。加上bias(127)可求得具體數值 尾數項:原碼。
    發(fā)表于 10-22 07:19

    RVF單精度浮點指令集擴展介紹(1)

    RVF單精度浮點指令集寄存器擴展 RVF擴展了32個獨立的浮點通用寄存器,其中0號寄存器可變。 RVF擴展了1個fcsr寄存器,存放了異常標志和動態(tài)舍入模式。 RVF擴展必須對misa csr寄存器進行一定的修改。
    發(fā)表于 10-22 06:04

    risc-v中浮點運算單元的使用及其設計考慮

    的應用。 在RISC-V中,浮點運算單元分為單精度浮點數(32位)和精度浮點數(64位),通常
    發(fā)表于 10-21 14:46

    大彩講堂:VisualHMI-LUA教程-獲取設置單精度浮點數函數的應用

    軟件開發(fā)中各種協(xié)議對浮點數數據進行獲取和賦值處理。get_float(vtype,addr)讀取單精度浮點數(float)寄存器,返回有符號單精度
    的頭像 發(fā)表于 10-16 00:00 ?1379次閱讀
    大彩講堂:VisualHMI-LUA教程-獲取設置<b class='flag-5'>單精度</b><b class='flag-5'>浮點</b>數函數的應用

    labview數據類型與PLC 數據類型之間的轉換(來自于寫入浮點數到匯川 PLC中的數據轉換關鍵的修改)

    浮點數默認數據類型是64為精度浮點數,PLC中real浮點數數據類型,是單精度
    發(fā)表于 02-24 19:01

    ADS1248放大倍數與精度之間的關系,是否是放大倍數越高,精度越高?

    ADS1248放大倍數與精度之間的關系,是否是放大倍數越高,精度越高
    發(fā)表于 01-22 06:29