RM新时代网站-首页

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

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

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

移動GPU經(jīng)典的Rogue架構(gòu)淺析 人工智能的新戰(zhàn)場

SSDFans ? 2018-09-22 22:43 ? 次閱讀

隨著人工智能的飛速發(fā)展,和業(yè)界對人工智能項(xiàng)目落地的巨大需求,移動端GPU的競爭也日益激烈,除了來自各GPU廠商之間的競爭之外,也要與專用芯片展開競爭(例如寒武紀(jì)的NPU等),可謂群雄逐鹿。

在之前的一篇淺析移動端GPU的文章中介紹過移動端GPU領(lǐng)域主要的三家廠商。隨著蘋果棄用PowerVR,在手機(jī)領(lǐng)域Mali和Adreno有著絕對的優(yōu)勢,而在物聯(lián)網(wǎng)自動駕駛領(lǐng)域,三家都并未建立起完整的生態(tài)。這兩個(gè)領(lǐng)域除了GPU,也有一些專用芯片廠商入局,隨著物聯(lián)網(wǎng)和自動駕駛的發(fā)展,競爭將更加激烈。相對于其他移動廠商,PowerVR在GPU的技術(shù)方面披露的比較多,其中比較經(jīng)典當(dāng)屬Rogue架構(gòu)。Rogue架構(gòu)采用的是延后式分塊渲染架構(gòu)(TBDR),憑借該技術(shù),Rogue架構(gòu)曾一直是移動端GPU的標(biāo)桿。作為蘋果移動端GPU的獨(dú)家供應(yīng)商,也曾風(fēng)光無限。本文就對Rogue架構(gòu)進(jìn)行一些分析,歡迎高手點(diǎn)評斧正。

架構(gòu)概述

Rogue架構(gòu)是一種可編程的架構(gòu),能夠支持通用計(jì)算和圖形渲染。Rogue架構(gòu)針對頂點(diǎn)和像素的傳輸、計(jì)算數(shù)據(jù)在內(nèi)存之間的傳輸以及數(shù)據(jù)和計(jì)算核心之間的交互等提供了不同的硬件。本文將側(cè)重于通用計(jì)算方面的特性。

如上圖所示,Rogue架構(gòu)中通用計(jì)算相關(guān)的部件有計(jì)算數(shù)據(jù)控制器(Compute Data Master,CDM),粗粒度調(diào)度器(Coarse Grain Scheduler,CGS),統(tǒng)一渲染集群(Unified Shading Clusters),L1混合緩存(L1 Mixed Cache)。

GPU的整個(gè)計(jì)算流程是,CDM負(fù)責(zé)將CPU分配的單個(gè)任務(wù)拆分為多個(gè)子任務(wù),然后傳遞給CGS,由CGS將多個(gè)獨(dú)立的子任務(wù)部署到USC上去執(zhí)行。只有計(jì)算任務(wù)是由CDM處理的,所以CDM是計(jì)算任務(wù)專用的通道。

每個(gè)USC pair包含兩個(gè)USCs和一個(gè)紋理處理單元(Texture Processing Unit,TPU),這樣可以有效的平衡紋理訪問和計(jì)算。USC是Rogue架構(gòu)中的主要計(jì)算單元。TPU是一種專門加速內(nèi)核代碼中訪問圖像和紋理的硬件,它擁有獨(dú)立的緩存,能夠加速處理器對圖像數(shù)據(jù)的訪問。對于一些需要對圖像進(jìn)行專門訪問的算法和一些大尺寸的圖像,TPU可以提供很好的加速效果。

L1混合緩存是Rogue架構(gòu)的主要緩存,所有對內(nèi)存的訪問都會首先在這里緩存。當(dāng)數(shù)據(jù)讀取不能使用該緩存的時(shí)候,則會使用系統(tǒng)級緩存。系統(tǒng)級的高速緩存直接與系統(tǒng)RAM交互,也是數(shù)據(jù)命中緩存的最后機(jī)會。

統(tǒng)一渲染集群(USC)

Rogue架構(gòu)中負(fù)責(zé)計(jì)算的核心部件是USC,是一個(gè)可編程的標(biāo)量SIMD處理器,通常包含16個(gè)ALU Pilelines,用來執(zhí)行計(jì)算內(nèi)核中代碼。下圖為Rogue架構(gòu)中的USC示意圖。

圖中包含多種部件,我們只關(guān)心兩種,一種是內(nèi)存,一種是ALU。USC內(nèi)部的內(nèi)存空間主要包括兩個(gè)寄存器組,一個(gè)是Common Store,由整個(gè)USC共享;一個(gè)是Unified Store,每4個(gè)ALU 管線(Pipelines)共享一塊。

Unified Store是USC中4個(gè)小的由寄存器組成的存儲體,每個(gè)存儲體被4個(gè)ALU Pipes所共享,對應(yīng)于OpenCL中的私有存儲。每個(gè)Unified store包含1280個(gè)128-bit的寄存器,也就是說,每個(gè)ALU管線平均擁有320個(gè)寄存器。例如,如果每個(gè)線程申請10個(gè)寄存器,那么,每個(gè)USC上只能執(zhí)行512個(gè)線程(每個(gè)ALU管線執(zhí)行32個(gè)線程,需要320個(gè)寄存器),這也是達(dá)到推薦占有率所需最小的線程數(shù)。由于每個(gè)線程擁有獨(dú)立的寄存器等資源,所以可以實(shí)現(xiàn)0開銷的warp切換,切換的時(shí)候不需要進(jìn)行中間數(shù)據(jù)轉(zhuǎn)存。當(dāng)然在具體計(jì)算中,每個(gè)線程即OpenCL的WorkItem所能擁有的寄存器,與多種因素有關(guān)。

這128位的寄存器可以像4個(gè)32位寄存器一樣,被內(nèi)核有效的訪問,所以內(nèi)核最多可以使用40個(gè)32位寄存器,達(dá)到推薦的利用率。如果一個(gè)給定的內(nèi)核需要的寄存器不止這些,此時(shí)駐留的任務(wù)就會減少,減少執(zhí)行每個(gè)任務(wù)的線程數(shù)量,這樣每個(gè)線程就會獲得更多的寄存器空間。Imagination的編譯器只會降低利用率,因?yàn)檎加新蕦τ陔[藏線程中的延遲是至關(guān)重要的。

USC利用率(USC/Multiprocessor utilization),是指USC執(zhí)行活動的warp所用的時(shí)間與被阻斷的時(shí)間之比。如下圖所示,其利用率為75%。

USC的占有率是指駐留的warps與可用的駐留槽的比率。如下圖所示,展示了駐留的warps和可用warps的示意圖。駐留槽的數(shù)量與具體產(chǎn)品有關(guān),大多是16個(gè)。圖中的占有率為6/16。

所以,當(dāng)寄存器不夠用的時(shí)候,編譯器會犧牲利用率,保證占有率,有利于隱藏延遲。如果寄存器溢出嚴(yán)重,利用率不會無限制降低,會達(dá)到一個(gè)限度后,將溢出的寄存器分配到主存儲器中,也就是全局存儲(global memory),這樣會造成很高的帶寬和延遲成本,大幅度降低程序的性能。當(dāng)然,這種調(diào)度是有軟件控制的,所以不同的設(shè)備之間會有區(qū)別。

Common Store就是通常意義上的共享內(nèi)存,它是對一個(gè)USC中的所有ALU Pipelines可見的,主要用于線程之間的數(shù)據(jù)交換,任何共享的內(nèi)存都存儲在這個(gè)位置,例如OpenCL的local memory,OpenGL的share memory。它也用于存儲對象句柄,例如圖像,紋理和采樣器狀態(tài)等。

Common Store被分配在4個(gè)存儲體中,每個(gè)存儲體可看作是一個(gè)128位寬的數(shù)列,如下圖所示。

在Common Store中,可以同時(shí)從4個(gè)存儲體中獲取數(shù)據(jù),整個(gè)數(shù)據(jù)行可以在單周期內(nèi)讀取,例如一個(gè)任務(wù)中的16個(gè)線程從同一行獲取連續(xù)數(shù)據(jù)(綠色部分),那么每個(gè)線程可以在一個(gè)周期內(nèi)獲取32位值。但是,如果多于一個(gè)線程試圖從同一列訪問數(shù)據(jù)(紅色部分),則會導(dǎo)致存儲體沖突,因?yàn)槊總€(gè)周期,存儲體只能提供一次訪問請求,因此請求將被序列化,大大降低訪問性能。為了避免存儲體沖突,Common Store中的數(shù)據(jù)應(yīng)該跨行訪問,每周期訪問不同存儲體中的4個(gè)128位寄存器。

ALU Pipelines是USC中的計(jì)算單元,結(jié)構(gòu)圖如下圖所示。這是Series7XT ALUs示意圖。Rogue架構(gòu)中每個(gè)USC包含16個(gè)ALU Pipelines,每個(gè)ALU中包含有FP16,F(xiàn)P32等核心用于計(jì)算。不同型號的GPU包含的ALU core類型不同,數(shù)量也不同。例如在Series7XT Plus GPU中增加了Integer Pipelines,能夠支持Int8和Int16等整數(shù)類型,可以大幅度提升GPU性能,在Series7XT GPU中增加了FP64。FP16核心也不是Rogue架構(gòu)的標(biāo)配,早期型號也是沒有的。

根據(jù)ALU core的數(shù)量和時(shí)鐘頻率,可以很方便的計(jì)算出GPU的理論峰值??刹捎萌缦鹿剑?/p>

例如Series7XT系列中的GT7600包含6個(gè)USC,一共有192個(gè)FP32 core or 384個(gè)FP16 core。時(shí)鐘頻率有三種可定制,分別為650MHz, 800MHz和1GHz。以650MHz為例,其峰值性能為:

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

    關(guān)注

    28

    文章

    4729

    瀏覽量

    128890
  • 人工智能
    +關(guān)注

    關(guān)注

    1791

    文章

    47183

    瀏覽量

    238239
  • 架構(gòu)
    +關(guān)注

    關(guān)注

    1

    文章

    513

    瀏覽量

    25468
  • 寒武紀(jì)
    +關(guān)注

    關(guān)注

    11

    文章

    186

    瀏覽量

    73882

原文標(biāo)題:移動GPU的經(jīng)典:淺析Rogue架構(gòu)

文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    人工智能是什么?

    ` 人工智能是什么?什么是人工智能?人工智能是未來發(fā)展的必然趨勢嗎?以后人工智能技術(shù)真的能達(dá)到電影里機(jī)器人的智能水平嗎?如果技術(shù)成熟的那一天
    發(fā)表于 09-16 15:40

    百度人工智能大神離職,人工智能的出路在哪?

    發(fā)展規(guī)劃,加快新材料、人工智能、集成電路、生物制藥、第五代移動通信等技術(shù)研發(fā)和轉(zhuǎn)化”,這是“人工智能”首次出現(xiàn)在***工作報(bào)告中。兩會上,百度CEO李彥宏、小米董事長雷軍、吉利控股集團(tuán)董事長李書福等來自
    發(fā)表于 03-23 17:00

    人工智能到底用 GPU?還是用 FPGA?

    GPU 和 FPGA。有人說 GPU 好用;有人說 FPGA 靈活可編程;有人說 GPU 運(yùn)算能力強(qiáng),適合對人工智能進(jìn)行“訓(xùn)練”;有人說做“推斷”還得靠 FPGA … 作為程序員,您
    發(fā)表于 08-23 15:42

    人工智能就業(yè)前景

    據(jù)相關(guān)招聘機(jī)構(gòu)數(shù)據(jù)顯示,2018年AI領(lǐng)域仍然是大部分資深技術(shù)人才轉(zhuǎn)崗的首選目標(biāo),在人才最緊缺的前十大職位中,時(shí)下最火的大數(shù)據(jù)、人工智能、算法類崗位占據(jù)半壁江山。據(jù)調(diào)查指出,2017年技術(shù)研發(fā)類崗位
    發(fā)表于 03-29 15:46

    人工智能AI經(jīng)典入門書

    人工智能AI經(jīng)典入門書,很難找的噢,給喜歡的朋友
    發(fā)表于 09-12 17:13

    解讀人工智能的未來

    `已歷經(jīng)60多年的人工智能在物聯(lián)網(wǎng)以及大數(shù)據(jù)的推動下,實(shí)現(xiàn)飛躍式的發(fā)展,并且迎來了第三個(gè)黃金周期。必優(yōu)傳感今天和大家解讀一下關(guān)于人工智能的未來。自從有了人工智能,引發(fā)了人類的各種“未來論”。有人說
    發(fā)表于 11-14 10:43

    人工智能醫(yī)生未來或上線,人工智能醫(yī)療市場規(guī)模持續(xù)增長

      導(dǎo)讀:機(jī)構(gòu)預(yù)測,中國醫(yī)療人工智能的市場需求已達(dá)數(shù)百億元。專家認(rèn)為,“人工智能醫(yī)生”的應(yīng)用,有利于緩解社會老齡化帶來的醫(yī)療資源供需失衡以及地域分配不均等問題。那么,“人工智能醫(yī)生”何時(shí)能真正
    發(fā)表于 02-24 09:29

    人工智能:超越炒作

    。對于人工智能用例在當(dāng)前物聯(lián)網(wǎng)環(huán)境中變?yōu)楝F(xiàn)實(shí),必須滿足三個(gè)條件:非常大的真實(shí)數(shù)據(jù)集具有重要處理能力的硬件架構(gòu)和環(huán)境開發(fā)新的強(qiáng)大算法和人工神經(jīng)網(wǎng)絡(luò)(ANN)以充分利用上述內(nèi)容很明顯,后兩種要求相互依賴,并且
    發(fā)表于 05-29 10:46

    什么是基于云計(jì)算的人工智能服務(wù)?

    如今,采用人工智能的企業(yè)遇到了一個(gè)主要障礙,那就是在內(nèi)部開發(fā)人工智能產(chǎn)品成本高昂,因此有了外包人工智能產(chǎn)品的需求。而對于從中小企業(yè)到預(yù)算受限的大型企業(yè)來說,通過云計(jì)算來采用人工智能的成
    發(fā)表于 09-11 11:51

    人工智能芯片是人工智能發(fā)展的

    人工智能芯片是人工智能發(fā)展的 | 特倫斯謝諾夫斯基責(zé)編 | 屠敏本文內(nèi)容經(jīng)授權(quán)摘自《深度學(xué)習(xí) 智能時(shí)代的核心驅(qū)動力量》從AlphaGo的人機(jī)對戰(zhàn),到無人駕駛汽車的上路,再到AI合成主播上崗
    發(fā)表于 07-27 07:02

    物聯(lián)網(wǎng)人工智能是什么?

    一、人工智能介紹工作以后想要拿高薪的話,人工智能是你的不二之選,那么問題來了,究竟什么是人工智能呢?又需要了解哪些才能去開發(fā)人工智能產(chǎn)品呢?接下來小編帶領(lǐng)大家進(jìn)入
    發(fā)表于 09-09 14:12

    移動終端人工智能技術(shù)與應(yīng)用開發(fā)》人工智能的發(fā)展與AI技術(shù)的進(jìn)步

    人工智能的發(fā)展是隨著人類生活需要,產(chǎn)業(yè)需求不斷提升的,其中人工智能的發(fā)展很大程度上受到了計(jì)算機(jī)算力的影響,隨著數(shù)據(jù)處理量的增大,人工智能算法對算力的要求逐年增加,而且沒過兩年算力上升一倍,因此往往
    發(fā)表于 02-17 11:00

    移動終端人工智能技術(shù)與應(yīng)用開發(fā)》+快速入門AI的捷徑+書中案例實(shí)操

    操作系統(tǒng)的終端應(yīng)用程序開發(fā)經(jīng)驗(yàn)的讀者閱讀。該書從移動終端人工智能技術(shù)應(yīng)用的現(xiàn)狀和發(fā)展態(tài)勢講起,對深度學(xué)習(xí)與軟件框架等相關(guān)基礎(chǔ)知識進(jìn)行了介紹。第2章從總體上介紹移動終端AI技術(shù)架構(gòu),包括
    發(fā)表于 02-19 20:24

    移動終端人工智能技術(shù)與應(yīng)用開發(fā)》+理論學(xué)習(xí)

    收到《移動終端人工智能技術(shù)與應(yīng)用開發(fā)》有一段時(shí)間了,由于時(shí)間有限,加上工作原因,目前只看到第3章,前幾章主要介紹人工智能和機(jī)器學(xué)習(xí)的基礎(chǔ)知識,發(fā)展歷程,分類等,重點(diǎn)說明了,在移動終端上
    發(fā)表于 02-27 23:28

    《通用人工智能:初心與未來》-試讀報(bào)告

    作者給出的結(jié)論。整體讀下來,可以給我們關(guān)于通用人工智能全面的了解。作者也反復(fù)強(qiáng)調(diào)了通用人工智能與專用智能的區(qū)別。尤其是人們錯(cuò)誤的認(rèn)為一堆專用智能堆砌起來就是通用
    發(fā)表于 09-18 10:02
    RM新时代网站-首页