一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

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

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

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

如何從處理器和加速器內(nèi)核中榨取最大性能?

穎脈Imgtec ? 2024-06-06 08:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文由半導(dǎo)體產(chǎn)業(yè)縱橫(ID:ICVIEWS)編譯自semiengineering


利用緩存增強(qiáng)低成本、上一代或中端的 SoC。

一些設(shè)計(jì)團(tuán)隊(duì)在創(chuàng)建片上系統(tǒng)(SoC)設(shè)備時(shí),有幸能夠使用最新和最先進(jìn)的技術(shù)節(jié)點(diǎn),并且擁有相對(duì)不受限制的預(yù)算來從可信的第三方供應(yīng)商那里獲取知識(shí)產(chǎn)權(quán)(IP)模塊。然而,許多工程師并沒有這么幸運(yùn)。對(duì)于每一個(gè)“不惜一切代價(jià)”的項(xiàng)目,都有一千個(gè)“在有限預(yù)算下盡你所能”的對(duì)應(yīng)項(xiàng)目。

一種從成本較低、早期代、中檔處理器和加速器核心中擠出最大性能的方法是,明智地應(yīng)用緩存。


削減成本圖1展示了一個(gè)典型的成本意識(shí)SoC場(chǎng)景的簡(jiǎn)化示例。盡管SoC可能由許多IP組成,但這里為了清晰起見,只展示了三個(gè)。

a79bf2c4-239b-11ef-bd4a-92fbcf53809c.png

圖 1SoC內(nèi)部IP之間連接的主要技術(shù)是網(wǎng)絡(luò)片上(NoC)互連IP。這可以被看作是一個(gè)跨越整個(gè)設(shè)備的IP。圖1中展示的例子可以假定為一個(gè)非緩存一致性場(chǎng)景。在這種情況下,任何一致性需求將由軟件處理。

假設(shè)SoC的時(shí)鐘運(yùn)行在1GHz。假設(shè)一個(gè)基于精簡(jiǎn)指令集計(jì)算機(jī)(RISC)架構(gòu)的中央處理單元(CPU)運(yùn)行一個(gè)典型指令將消耗一個(gè)時(shí)鐘周期。然而,訪問外部DRAM內(nèi)存可能需要100到200個(gè)處理器時(shí)鐘周期(為了本文的目的,我們將這個(gè)平均為150個(gè)周期)。這意味著,如果CPU沒有一級(jí)(L1)緩存,并且通過NoC和DDR內(nèi)存控制器直接連接到DRAM,那么每個(gè)指令將消耗150個(gè)處理器時(shí)鐘周期,導(dǎo)致CPU利用率僅為1/150 = 0.67%。

這就是為什么CPU以及一些加速器和其他IP使用緩存內(nèi)存來提高處理器利用率和應(yīng)用程序性能。緩存概念基于的基本原理是局部性原則。這個(gè)觀點(diǎn)是,在任何給定時(shí)間,只有一小部分主內(nèi)存被使用,而且那個(gè)空間中的位置被多次訪問。主要是由于循環(huán)、嵌套循環(huán)和子程序,指令及其相關(guān)數(shù)據(jù)經(jīng)歷時(shí)間、空間和順序局部性。這意味著,一旦一塊指令和數(shù)據(jù)從主內(nèi)存復(fù)制到IP的緩存中,IP通常會(huì)反復(fù)訪問它們。

當(dāng)今高端CPU IP通常至少有一個(gè)一級(jí)(L1)和二級(jí)(L2)緩存,它們通常還有一個(gè)三級(jí)(L3)緩存。此外,一些加速器IP,如圖形處理單元(GPU)通常有自己的內(nèi)部緩存。然而,這些最新一代的高端IP的價(jià)格通常比上一代中檔產(chǎn)品高出5倍到10倍。因此,正如圖1所示,一個(gè)注重成本的SoC中的CPU可能只配備了一個(gè)L1緩存。

更深入地考慮CPU及其L1緩存。當(dāng)CPU在其緩存中請(qǐng)求某物時(shí),結(jié)果被稱為緩存命中。由于L1緩存通常以與處理器核心相同的速度運(yùn)行,因此緩存命中將在單個(gè)處理器時(shí)鐘周期內(nèi)處理。相比之下,如果請(qǐng)求的數(shù)據(jù)不在緩存中,結(jié)果稱為緩存未命中,將需要訪問主內(nèi)存,這將消耗150個(gè)處理器時(shí)鐘周期。

現(xiàn)在考慮運(yùn)行1,000,000條指令。如果緩存足夠大以包含整個(gè)程序,那么這將只消耗1,000,000個(gè)時(shí)鐘周期,從而實(shí)現(xiàn)100%的CPU效率。

不幸的是,中檔CPU中的L1緩存通常只有16KB到64KB的大小。如果我們假設(shè)95%的緩存命中率,那么我們的1,000,000條指令中的950,000條將需要一個(gè)處理器時(shí)鐘周期。其余的50,000條指令每條將消耗150個(gè)時(shí)鐘周期。因此,這種情況下的CPU效率可以計(jì)算為1,000,000/((950,000 * 1) + (50,000 * 150)) = ~12%。


提升性能

提高注重成本SoC性能的一種成本效益高的方式是添加緩存IP。例如,Arteris的CodaCache是一個(gè)可配置的、獨(dú)立的非一致性緩存IP。每個(gè)CodaCache實(shí)例可以高達(dá)8MB,并且可以在同一個(gè)SoC中實(shí)例化多個(gè)副本,如圖2所示。

a7d00000-239b-11ef-bd4a-92fbcf53809c.png

圖2

本文的目的并不是建議每個(gè)IP都應(yīng)該配備一個(gè)CodaCache。圖2僅旨在提供潛在CodaCache部署的示例。

如果一個(gè)CodaCache實(shí)例與一個(gè)IP關(guān)聯(lián),它被稱為專用緩存(DC)。或者,如果一個(gè)CodaCache實(shí)例與一個(gè)DDR內(nèi)存控制器關(guān)聯(lián),它被稱為末級(jí)緩存(LLC)。DC將加速與其關(guān)聯(lián)的IP的性能,而LLC將增強(qiáng)整個(gè)SoC的性能。

作為我們可能期望的性能提升類型的一個(gè)示例,考慮圖2中顯示的CPU。讓我們假設(shè)與這個(gè)IP關(guān)聯(lián)的CodaCache DC實(shí)例以處理器速度的一半運(yùn)行,并且對(duì)這個(gè)緩存的任何訪問消耗20個(gè)處理器時(shí)鐘周期。如果我們還假設(shè)這個(gè)DC有95%的緩存命中率,那么對(duì)于1,000,000條指令——我們的整體CPU+L1+DC效率可以計(jì)算為1,000,000/((950,000 * 1) + (47,500 * 20) + (2,500 * 150)) = ~44%。這是一個(gè)~273%的性能提升!


結(jié)論過去,嵌入式程序員喜歡挑戰(zhàn),盡可能從時(shí)鐘速度低、內(nèi)存資源有限的小處理器中擠出最高性能。事實(shí)上,計(jì)算機(jī)雜志通常會(huì)向讀者提出挑戰(zhàn),例如:“誰能在處理器Y上使用最少的時(shí)鐘周期和最小的內(nèi)存量執(zhí)行任務(wù)X?”

今天,許多SoC開發(fā)者喜歡挑戰(zhàn),盡可能從他們的設(shè)計(jì)中擠出最高性能,特別是如果他們被限制使用性能較低的中檔IP。部署CodaCache IP作為專用和末級(jí)緩存,為工程師提供了一種負(fù)擔(dān)得起的方式來提升他們注重成本的SoC的性能。


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

    關(guān)注

    68

    文章

    19896

    瀏覽量

    235265
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1416

    瀏覽量

    41442
  • 加速器
    +關(guān)注

    關(guān)注

    2

    文章

    827

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    充分利用數(shù)字信號(hào)處理器上的片內(nèi)FIR和IIR硬件加速器

    我們看到如何利用不同的加速器使用模型實(shí)現(xiàn)所需的MIPS和處理目標(biāo),從而將大量內(nèi)核MIPS轉(zhuǎn)移到ADSP-2156x處理器上的FIRA和IIRA加速器
    發(fā)表于 06-22 14:42 ?2013次閱讀
    充分利用數(shù)字信號(hào)<b class='flag-5'>處理器</b>上的片內(nèi)FIR和IIR硬件<b class='flag-5'>加速器</b>

    【FPGA干貨分享六】基于FPGA協(xié)處理器的算法加速的實(shí)現(xiàn)

    移動(dòng)的數(shù)據(jù)具有較低的延時(shí)和更高的數(shù)據(jù)速率。3. 指令流水線連接指令流水線連接加速器直接連接到CPU的計(jì)算內(nèi)核。通過與指令流水線連接,CPU不能識(shí)別的指令可以由協(xié)處理器執(zhí)行。操作數(shù)、結(jié)果以及狀態(tài)直接
    發(fā)表于 02-02 14:18

    【Aworks申請(qǐng)】中國科學(xué)院高能物理所質(zhì)子直線加速器chopper電源

    申請(qǐng)理由:需要微控制處理CHOPPER的各種故障信號(hào)并且產(chǎn)生PWM波并且和其他設(shè)備遠(yuǎn)程通訊。測(cè)試該控制板在直接加速器系統(tǒng)抗電磁干擾和打火浪涌的
    發(fā)表于 07-09 16:04

    AM57x處理器實(shí)施多種內(nèi)核

    隨著嵌入式領(lǐng)域的不斷擴(kuò)大,應(yīng)用也變得日趨復(fù)雜。因此,對(duì)特定處理器內(nèi)核(面向特定任務(wù))的需求正在迅速增加。在我們生活的世界里,一種高性能、單架構(gòu)處理器稱霸天下的情況已不復(fù)存在。在單個(gè)
    發(fā)表于 09-04 09:54

    正確進(jìn)行多內(nèi)核之間的應(yīng)用劃分(Ⅱ)

    任務(wù)到加速器或者加速器接受任務(wù),而不依賴軟件從中協(xié)調(diào)。 本文小結(jié) 單內(nèi)核器件已經(jīng)跟不上網(wǎng)絡(luò)設(shè)備用戶的性能需求。隨著網(wǎng)絡(luò)帶寬及對(duì)高層服務(wù)
    發(fā)表于 05-16 10:45

    采用控制律加速器的Piccolo MCU

    日前,德州儀器 (TI) 宣布推出采用控制律加速器 (CLA) 的新型 TMS320F2803x Piccolo 微處理器 (MCU),可促進(jìn)具有更高可靠性與效率的嵌入式控制應(yīng)用的開發(fā)。CLA
    發(fā)表于 07-26 06:21

    如何充分利用數(shù)字信號(hào)處理器上的片內(nèi)FIR和IIR硬件加速器

    上的片內(nèi)FIR和IIR硬件加速器也分別稱為FIRA和IIRA,我們可以利用這些硬件加速器來分擔(dān)FIR和IIR處理任務(wù),讓內(nèi)核去執(zhí)行其他處理
    發(fā)表于 12-28 06:26

    D-2700和D-1700處理器產(chǎn)品資料

    IntelXeon@D-2700和D-1700處理器為云、邊緣和5G網(wǎng)絡(luò)提供突破性的、密度優(yōu)化的性能、可擴(kuò)展性和價(jià)值。intel Xeon D集成了以太網(wǎng)和加速器處理器,用于支持網(wǎng)絡(luò)
    發(fā)表于 08-04 07:07

    利用硬件加速器提高處理器性能

    超過兩倍。本文以下一代音頻系統(tǒng)為例,說明硬件加速器在這方面的應(yīng)用。 為什么使用硬件加速器 FIR濾波、IIR濾波和FFT操作在數(shù)字信號(hào)處理器
    發(fā)表于 12-04 15:22 ?1564次閱讀

    使用協(xié)處理器加速器的方法介紹

    了解協(xié)處理的價(jià)值,Zynq-7000加速器一致性端口,使用協(xié)處理器加速器的方法以及協(xié)處理器設(shè)計(jì)實(shí)例的概述。
    的頭像 發(fā)表于 11-30 06:15 ?4550次閱讀

    如何解放你的內(nèi)核?硬件加速器“使用指南”奉上

    為開始進(jìn)行FIRA/IIRA處理,內(nèi)核使用通道特定信息初始化處理器存儲(chǔ)的DMA傳輸控制塊(TCB)鏈。然后將該TCB鏈的起始地址寫入FI
    的頭像 發(fā)表于 07-06 16:10 ?3198次閱讀
    如何解放你的<b class='flag-5'>內(nèi)核</b>?硬件<b class='flag-5'>加速器</b>“使用指南”奉上

    硬件加速器提升下一代SHARC處理器性能

    硬件加速器提升下一代SHARC處理器性能
    發(fā)表于 04-23 13:06 ?6次下載
    硬件<b class='flag-5'>加速器</b>提升下一代SHARC<b class='flag-5'>處理器</b>的<b class='flag-5'>性能</b>

    利用數(shù)字信號(hào)處理器上的片上FIR和IIR硬件加速器

    處理器上的片上FIR和IIR硬件加速器(也稱為FIRA和IIRA)可用于卸載FIR和IIR處理任務(wù),從而騰出內(nèi)核用于其他處理。在本文中,我們
    的頭像 發(fā)表于 12-20 11:39 ?1901次閱讀
    利用數(shù)字信號(hào)<b class='flag-5'>處理器</b>上的片上FIR和IIR硬件<b class='flag-5'>加速器</b>

    硬件加速器提升下一代SHARC處理器性能

    SHARC ADSP-2146x處理器集成了硬件加速器,可實(shí)現(xiàn)三種廣泛使用的信號(hào)處理操作:FIR(有限脈沖響應(yīng))、IIR(無限脈沖響應(yīng))和FFT(快速傅里葉變換)。加速器卸載了核心
    的頭像 發(fā)表于 03-03 14:46 ?1677次閱讀
    硬件<b class='flag-5'>加速器</b>提升下一代SHARC<b class='flag-5'>處理器</b>的<b class='flag-5'>性能</b>

    回旋加速器粒子的最大動(dòng)能與什么有關(guān)

    回旋加速器是一種用于加速粒子的裝置,通過不斷變化的磁場(chǎng)和電場(chǎng)來不斷加速粒子,使其達(dá)到極高的速度和能量。粒子的最大動(dòng)能取決于幾個(gè)關(guān)鍵因素。 首先,回旋
    的頭像 發(fā)表于 01-18 10:42 ?4801次閱讀