91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內(nèi)不再提示

Arm宣布將會采用Bfloat16數(shù)據(jù)類型,這種數(shù)據(jù)類型會成為主流嗎?

倩倩 ? 來源:lq ? 作者:雷鋒網(wǎng) ? 2019-09-20 10:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

為了提升AI性能,AI芯片公司從多個方面進行優(yōu)化,包括采用更先進的工藝制程、進行架構(gòu)創(chuàng)新,數(shù)據(jù)類型的支持也是其中之一。如今,為了加速機器學(xué)習(xí)性能,Arm宣布將會采用Bfloat16數(shù)據(jù)類型,這種數(shù)據(jù)類型會成為主流嗎?

Arm Holdings宣布其ArmV8-A架構(gòu)的下一版本將支持bfloat16,這種浮點格式越來越多地用于加速機器學(xué)習(xí)應(yīng)用。如今,谷歌、英特爾和少數(shù)初創(chuàng)公司的芯片都選擇了支持bfloat16。

Bfloat16,又名16位腦浮點(brain floating point),由Google發(fā)明,最初在其第三代Tensor處理單元(TPU)中支持。英特爾認可以將bfloat16整合到其未來的“Cooper Lake”Xeon SP處理器,以及即將推出的“Spring Crest”神經(jīng)網(wǎng)絡(luò)處理器中。Wave Computing、Habana Labs和Flex Logix也采用了定制的AI處理器。

bfloat16的主要思想是提供16位浮點格式,其動態(tài)范圍與標準IEEE-FP32相同,但精度較低。相當于指數(shù)區(qū)和FP32保持了相同的8位,并將FP32分數(shù)字段的小數(shù)區(qū)縮減到到了7位。

根據(jù)Arm的ISA架構(gòu)師和Fellow Nigel Stephens的說法,大多數(shù)情況下,用戶在進行神經(jīng)網(wǎng)絡(luò)計算時,bfloat16格式與FP32一樣準確,但是以一半的位數(shù)完成任務(wù)。因此,與32位相比,采用bfloat16吞吐量可以翻倍,內(nèi)存需求可以減半。在大多數(shù)情況下,blfloat16可以成為這些機器學(xué)習(xí)算法中FP32的“插入式”替代品?!靶疫\的是,神經(jīng)網(wǎng)絡(luò)由于其統(tǒng)計性質(zhì),只要數(shù)據(jù)類型具有足夠的范圍和精度,就可以很好地適應(yīng)少量噪聲,” Stephens告訴我們。

在Arm,附加支持將適用于ArmV8-A下支持的所有浮點指令集,即SVE(可擴展矢量擴展),AArch64 Neon(64位SIMD)和AArch32 Neon(32位SIMD))。附加支持旨在用于基于Arm的終端和服務(wù)器的機器學(xué)習(xí)推理和訓(xùn)練。雖然Arm服務(wù)器的規(guī)模仍然很小,但其終端市場規(guī)模巨大,這意味著未來的手持式和物聯(lián)網(wǎng)設(shè)備將很快能夠利用更緊湊的數(shù)字格式。

Stephens 8月份撰寫的一篇博客中寫到,將增加四條新指令來支持bfoat16值的乘法運算,這是用于訓(xùn)練和推理神經(jīng)網(wǎng)絡(luò)的最常用計算。據(jù)他介紹,在大多數(shù)情況下,應(yīng)用程序開發(fā)人員不會在底層代碼中添加這些指令,因為這些支持很可能由Arm自己的機器學(xué)習(xí)庫提供。對于那些對細節(jié)感興趣的人來說,這四條新指令如下:

BFDOT 是BF16元素的[1×2]×[2×1]點積,累積到SIMD結(jié)果中的每個IEEE-FP32元素中。

BFMMLA, 包括兩個有效地 BFDOT 操作,執(zhí)行BF16元素的[2×4]×[4×2]矩陣乘法,累積到SIMD結(jié)果內(nèi)的每個[2×2]矩陣的IEEE-FP32元素中。

BFMLAL是偶數(shù)或奇數(shù)BF16元素的簡單乘積,累積到SIMD結(jié)果中的每個IEEE-FP32元素中。

BFCVT,將IEEE-FP32元素或標量值轉(zhuǎn)換為BF16格式。

在SVE中包含對bfloat16的支持特別有趣,因為這些向量指令是專門為高性能計算開發(fā)的。截至目前,唯一已知的實現(xiàn)SVE是富士通的A64FX芯片,這款處理器將為即將推出的Post-K超級計算機提供動力,該超級計算機現(xiàn)在名為Fugaku。但這還為時過早,無法獲得bfloat16的好處,但后來的那些,就像為歐洲處理器計劃(EPI)開發(fā)的Arm處理器肯定會包含它。

Stephens說,鑒于傳統(tǒng)HPC用戶對機器學(xué)習(xí)的興趣增加以及他們的高性能系統(tǒng)對訓(xùn)練大型神經(jīng)網(wǎng)絡(luò)的適應(yīng)性,在SVE中包含bfloat16似乎是一種自然的補充。他還指出,有一些HPC研究人員正在調(diào)查使用新的16位格式來加速傳統(tǒng)科學(xué)應(yīng)用的混合精度計算。

“再次強調(diào),bfloat16的優(yōu)勢在于它具有與FP32相同的動態(tài)范圍,這使得使用FP 32的代碼,在轉(zhuǎn)換的早期階段使用bfloat16更容易?!彼忉屨f。

并且由于SVE可以針對不同的向量長度,實現(xiàn)從128位到2048位,理論上bfloat16吞吐量應(yīng)該相應(yīng)于128位Neon實現(xiàn)進行擴展。但實際上,Stephens說吞吐量還取決于具體的硬件實現(xiàn)選擇,例如SVE執(zhí)行單元的數(shù)量與給定實現(xiàn)的Neon執(zhí)行單元的數(shù)量。

然而,當轉(zhuǎn)換為具有較小范圍的數(shù)據(jù)類型(例如INT8和FP16)時,基于blfoat16的網(wǎng)絡(luò)的易部署性與其最終大小和性能之間存在折衷。Stephens表示,使用blfoat16進行推理可能對那些無法承擔額外費用和重新訓(xùn)練網(wǎng)絡(luò)的開發(fā)人員來說是有吸引力的,因為只有一種類型可用于訓(xùn)練和推理,因此可以使用這些較小的類型(可能需要幾個月)。

另外,需要注意的是bfloat16類型沒有標準,因此無法保證相同計算的結(jié)果在不同的處理器上完全相同。但正如Stephens所指出的那樣,F(xiàn)P32關(guān)于如何對點積進行排序(IEEE保持開放排序),甚至存在可變性。無論如何,四舍五入的噪音幾乎總是可以接受的,因為正如斯蒂芬斯所說,機器學(xué)習(xí)是一種統(tǒng)計游戲。

Arm對bfloat16的支持,使得GPU(目前廣泛使用的機器學(xué)習(xí)引擎)包括Nvidia和AMD,成為唯一仍然不提供該格式原生支持的機器學(xué)習(xí)引擎。但作為現(xiàn)在使用最廣泛的處理器架構(gòu),GPU支持bfloat16幾乎是不可避免的,包括英特爾即將推出的X e GPU加速器。IEEE是否曾接受bfloat16并提供了一些標準?這還有待觀察。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4838

    瀏覽量

    107879
  • 機器學(xué)習(xí)
    +關(guān)注

    關(guān)注

    66

    文章

    8556

    瀏覽量

    137005
  • AI芯片
    +關(guān)注

    關(guān)注

    17

    文章

    2132

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    PyTorch 中RuntimeError分析

    ? 錯誤原因 這個 RuntimeError 是因為在 PyTorch 中,upsample_nearest2d_out_frame(最近鄰2D上采樣)操作尚未對 BFloat16 數(shù)據(jù)類型提供
    發(fā)表于 03-06 06:02

    基于凌羽派的OpenHarmony北向應(yīng)用開發(fā):ArkTS語法-數(shù)據(jù)類型和變量聲明

    可以在程序執(zhí)行期間具有不同的值。使用TS風(fēng)格,聲明的時候使用冒號給出數(shù)據(jù)類型。 let hi: string = \'hello\'; let num: number = 0; 2.2 常量聲明
    發(fā)表于 02-26 14:24

    睿遠研究院丨IO-Link規(guī)范解讀(十五):數(shù)據(jù)類型詳解

    前言 本篇對IO-Link規(guī)范的附錄F的數(shù)據(jù)類型做個詳細解釋,附錄定義了 ?基本數(shù)據(jù)類型 (Basic Data Types) 和? 組合數(shù)據(jù)類型 (Composite Data Types),并
    的頭像 發(fā)表于 01-14 18:25 ?5451次閱讀
    睿遠研究院丨IO-Link規(guī)范解讀(十五):<b class='flag-5'>數(shù)據(jù)類型</b>詳解

    LabVIEW 變體:萬能數(shù)據(jù)容器的藝術(shù)

    的[LabVIEW簡單萬能框架] 就用到了變體,感興趣的寶子們可以去前面翻看。 還有好使的用法,利用變體的屬性能存儲和運算各種數(shù)據(jù)類型,用幾個甚至1個變體就能存儲整個應(yīng)用程序的所有數(shù)據(jù),方便管理和數(shù)據(jù)
    發(fā)表于 01-05 11:06

    電能質(zhì)量在線監(jiān)測裝置支持哪些數(shù)據(jù)壓縮算法?

    增強。以下是主流算法的詳細支持情況: 一、無損壓縮算法(核心用于關(guān)鍵數(shù)據(jù)) 算法名稱 核心原理 適用數(shù)據(jù)類型 壓縮比 裝置支持情況 DEFLATE(ZIP 基礎(chǔ)) LZ77 + 哈夫曼編碼結(jié)合,先通過 LZ77 查找重復(fù)序列,再
    的頭像 發(fā)表于 12-12 14:08 ?467次閱讀
    電能質(zhì)量在線監(jiān)測裝置支持哪些<b class='flag-5'>數(shù)據(jù)</b>壓縮算法?

    枚舉類型的講解

    枚舉是一個基本的數(shù)據(jù)類型,它可以讓數(shù)據(jù)更簡潔。 如果寫一個判斷星期的文章,我們當然可以使用宏定義來使代碼更加易懂,不過: #define MON 1 #define TUE 2
    發(fā)表于 12-08 08:14

    電能質(zhì)量在線監(jiān)測裝置支持的數(shù)據(jù)推送頻率是多少?

    電能質(zhì)量在線監(jiān)測裝置的數(shù)據(jù)推送頻率 可靈活配置 ,根據(jù)數(shù)據(jù)類型(穩(wěn)態(tài) / 暫態(tài) / 事件)和應(yīng)用場景(電網(wǎng)關(guān)口 / 工業(yè)用戶 / 新能源并網(wǎng))的不同, 覆蓋從毫秒級到小時級的廣泛范圍 ,主流裝置支持
    的頭像 發(fā)表于 12-05 15:07 ?421次閱讀
    電能質(zhì)量在線監(jiān)測裝置支持的<b class='flag-5'>數(shù)據(jù)</b>推送頻率是多少?

    數(shù)組的初體驗

    程序中也需要容器,只不過該容器有點特殊,它在程序中是一塊連續(xù)的,大小固定并且里面的數(shù)據(jù)類型一致的內(nèi)存空間,它還有個好聽的名字叫數(shù)組??梢詫?shù)組理解為大小固定,所放物品為同類的一個購物袋,在該購 物
    發(fā)表于 11-25 08:06

    C語言自動類型轉(zhuǎn)換

    一、自動類型轉(zhuǎn)換 數(shù)據(jù)類型存在自動轉(zhuǎn)換的情況. 自動轉(zhuǎn)換發(fā)生在不同數(shù)據(jù)類型運算時,在編譯的時候自動完成。 char類型數(shù)據(jù)轉(zhuǎn)換為int
    發(fā)表于 11-25 08:04

    C語言強制類型轉(zhuǎn)換

    強制類型轉(zhuǎn)換是通過定義類型轉(zhuǎn)換運算來實現(xiàn)的。其一般形式為: (數(shù)據(jù)類型) (表達式) 其作用是把表達式的運算結(jié)果強制轉(zhuǎn)換成類型說明符所表示的類型
    發(fā)表于 11-24 06:32

    內(nèi)存與數(shù)據(jù)處理優(yōu)化藝術(shù)

    ,避免了數(shù)組索引的額外計算。 選擇合適的數(shù)據(jù)類型同樣重要。如果一個變量只需要表示0或1,使用最小所需的數(shù)據(jù)類型就比使用較大的類型更好,因為它占用內(nèi)存更少,可能提高緩存利用率。 對于浮點運算,在不需要
    發(fā)表于 11-14 07:46

    大彩講堂:VisualHMI-LUA教程-獲取和設(shè)置16數(shù)據(jù)函數(shù)

    ,返回無符號短整型數(shù)據(jù)。?vtype:變量類型,生成main.lua,自動定義變量的數(shù)據(jù)類型?addr:變量地址2.2set_uint16(vtype,addr,v
    的頭像 發(fā)表于 10-13 16:40 ?1376次閱讀
    大彩講堂:VisualHMI-LUA教程-獲取和設(shè)置<b class='flag-5'>16</b>位<b class='flag-5'>數(shù)據(jù)</b>函數(shù)

    SQL 通用數(shù)據(jù)類型

    SQL 通用數(shù)據(jù)類型 數(shù)據(jù)庫表中的每個列都要求有名稱和數(shù)據(jù)類型。Each column in a database table is required to have a name and a
    的頭像 發(fā)表于 08-18 09:46 ?720次閱讀

    IEC101協(xié)議可以傳輸什么類型數(shù)據(jù)

    IEC101協(xié)議作為電力系統(tǒng)遠動通信的核心標準,其核心能力在于支持多種類型數(shù)據(jù)的傳輸,滿足調(diào)度端與場站端(如變電站、發(fā)電廠)的實時監(jiān)控、控制及狀態(tài)感知需求。以下從數(shù)據(jù)類型、傳輸模式及典型應(yīng)用場景三個
    的頭像 發(fā)表于 05-21 11:37 ?1043次閱讀

    詳解Prometheus的數(shù)據(jù)類型

    對于 Prometheus 生態(tài)的監(jiān)控系統(tǒng),PromQL 是必備技能,本文著重點講解這個查詢語言,摻雜一些生產(chǎn)實踐場景,希望對你有所幫助。
    的頭像 發(fā)表于 05-13 09:50 ?1479次閱讀
    詳解Prometheus的<b class='flag-5'>數(shù)據(jù)類型</b>