国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

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

深入剖析多線程計(jì)算平臺(tái)的性能模型

Linux閱碼場(chǎng) ? 來源:GPU and Computing ? 作者:GPUComputing ? 2021-06-28 16:33 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在以前的文章里,筆者談到單核CPU無論在PC端還是服務(wù)器上基本上已經(jīng)退出歷史舞臺(tái),目前主流的計(jì)算平臺(tái)是使用多核(multiple cores)的CPU以及眾核(many cores)的GPU。另外處理器與內(nèi)存訪問速度差距也不斷增大,為克服訪存瓶頸主要采用兩種方法。

其中多核CPU與單核CPU都是利用Cache來掩蓋訪問系統(tǒng)內(nèi)存的延遲,以減輕訪存帶寬的壓力,其芯片的較大面積也都貢獻(xiàn)給Cache。在另一端,GPU通過同時(shí)運(yùn)行很多簡(jiǎn)單的線程,不使用或者只利用相對(duì)較小的Cache。

而主要通過線程間的并行(Thread Level Parallelism, TLP)來隱藏內(nèi)存訪問延遲,當(dāng)一部分線程因?yàn)樵L存停滯的時(shí)候,另一部分線程會(huì)接著執(zhí)行,使得處理單元不會(huì)空閑下來。

目前的異構(gòu)計(jì)算平臺(tái)同時(shí)采用這兩種截然不同的架構(gòu),使得性能預(yù)測(cè)和優(yōu)化都不太容易,面對(duì)一個(gè)給定的計(jì)算負(fù)載,我們應(yīng)該如何分發(fā)能夠達(dá)到性能最佳?對(duì)芯片架構(gòu)師而言,在面積受限的芯片上,怎樣合理部署處理單元、Register File和Cache等等也是讓人撓頭的事情。

希望能夠?yàn)槔斫鈨?yōu)化性能提供參考,論文作者定義了一個(gè)統(tǒng)一仿真模型可以容納延展這兩種不同特點(diǎn)的架構(gòu)設(shè)計(jì)。這個(gè)模型對(duì)應(yīng)一個(gè)想象的混合計(jì)算平臺(tái),該平臺(tái)由很多簡(jiǎn)單的處理單元以及較大的共享緩存構(gòu)成,通過靈活配置一系列參數(shù),包括處理單元個(gè)數(shù)、緩存大小以及緩存和內(nèi)存的訪問延遲等等,可以觀察不同參數(shù)變化對(duì)計(jì)算性能的影響。

為保持模型簡(jiǎn)單,論文假設(shè)所有線程相互不共享數(shù)據(jù)且系統(tǒng)內(nèi)存帶寬足夠大。如下圖所示,作者發(fā)現(xiàn),當(dāng)線程數(shù)量較少的時(shí)候,隨著線程數(shù)量增加,性能開始提升,而當(dāng)線程數(shù)量到達(dá)轉(zhuǎn)折點(diǎn),Cache不能夠容納所有線程的工作集的時(shí)候,性能反而下降。

之后,隨著線程數(shù)量越來越多,由于有足夠的線程來掩蓋Cache訪問不命中帶來內(nèi)存訪問延遲,性能又接著上升,直達(dá)到平臺(tái)可獲得的最大性能。我們可以認(rèn)為MC Region對(duì)應(yīng)多核CPU的情形,而MT Region自然對(duì)應(yīng)有超多線程的GPU,MC Region和MT Region之間的性能波谷區(qū)域在我們的架構(gòu)設(shè)計(jì)和程序優(yōu)化中都是要努力避免的。

以下我們具體推導(dǎo)下參數(shù)曲線對(duì)應(yīng)的公式,下表列出計(jì)算模型涉及的參數(shù),左邊是平臺(tái)相關(guān)的,右邊跟運(yùn)算任務(wù)有關(guān)。

公式(1)為考慮Cache命中率的線程平均訪問內(nèi)存所需要的時(shí)鐘數(shù)。

6876e088-d77a-11eb-9e57-12bb97331649.png

這就是說,線程每運(yùn)行1/rm條指令,就會(huì)因?yàn)樵L存停滯tavg時(shí)鐘,如果沒有別的線程替換進(jìn)來,對(duì)應(yīng)的處理單元就會(huì)處于空閑狀態(tài),要讓該處理單元充分利用,額外需要的線程數(shù)為tavg/(CPIexe/rm)。所以要讓整個(gè)計(jì)算平臺(tái)滿負(fù)荷運(yùn)轉(zhuǎn),總共需要的線程數(shù)量為

NPE * (1 +tavg/(CPIexe/rm))。給定有n個(gè)線程的計(jì)算任務(wù),計(jì)算平臺(tái)的利用率η可以計(jì)算如公式(2)。

68821840-d77a-11eb-9e57-12bb97331649.png

在η=1的情況下,再添加多余的線程于性能無補(bǔ)。根據(jù)利用率η我們可以得到計(jì)算平臺(tái)的預(yù)期性能為NPE * (f/CPIexe)*η OPS(Operations Per Second,每秒鐘運(yùn)算數(shù))。通過該公式,我們可以觀察以下各種參數(shù)調(diào)節(jié)對(duì)性能曲線的影響。

值得注意的是以上計(jì)算中我們沒有考慮內(nèi)存帶寬受限的情況,如果把它納入考慮,對(duì)特定性能Performance,我們可以按公式(3)計(jì)算所要求帶寬。

6945c92a-d77a-11eb-9e57-12bb97331649.png

所以在內(nèi)存帶寬也是約束條件的情況下,性能計(jì)算修正為公式(4)。

69687290-d77a-11eb-9e57-12bb97331649.png

而下圖也反映了內(nèi)存帶寬對(duì)性能曲線的影響。值得提醒的是性能曲線水平頂表示計(jì)算任務(wù)在該平臺(tái)上已經(jīng)觸到了內(nèi)存帶寬墻(off-chip bandwidth wall),在這種情況下繼續(xù)增加線程有可能會(huì)惡化Cache命中率,使得帶寬問題更加嚴(yán)重反而有損性能,這也是為什么之前我們提到過的GPU顯存帶寬要遠(yuǎn)大于CPU系統(tǒng)內(nèi)存帶寬。

主要參考資料:

Many-core vs many-thread machines: Stay away from the valley

The Interplay of Caches and Threads in Chip-MultiProcessors

編輯:jq

聲明:本文內(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)投訴
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11279

    瀏覽量

    225000
  • PC
    PC
    +關(guān)注

    關(guān)注

    9

    文章

    2167

    瀏覽量

    159333
  • 內(nèi)存
    +關(guān)注

    關(guān)注

    9

    文章

    3210

    瀏覽量

    76375
  • TLP
    TLP
    +關(guān)注

    關(guān)注

    0

    文章

    37

    瀏覽量

    16487

原文標(biāo)題:多線程計(jì)算平臺(tái)的性能模型

文章出處:【微信號(hào):LinuxDev,微信公眾號(hào):Linux閱碼場(chǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    深入剖析 LTC7802 - 3.3:高性能雙路同步降壓控制器

    深入剖析 LTC7802 - 3.3:高性能雙路同步降壓控制器 在電子設(shè)計(jì)領(lǐng)域,電源管理芯片的性能直接影響著整個(gè)系統(tǒng)的穩(wěn)定性和效率。ADI 的 LTC7802 - 3.3 作為一款高
    的頭像 發(fā)表于 03-04 11:20 ?122次閱讀

    深入剖析TAS2564:高性能音頻放大器的卓越之選

    深入剖析TAS2564:高性能音頻放大器的卓越之選 在當(dāng)今的電子設(shè)備領(lǐng)域,音頻放大器的性能對(duì)產(chǎn)品的用戶體驗(yàn)起著至關(guān)重要的作用。TAS2564作為一款數(shù)字輸入的高
    的頭像 發(fā)表于 01-29 11:15 ?252次閱讀

    深入剖析PCM6140-Q1:高性能音頻ADC的卓越之選

    深入剖析PCM6140-Q1:高性能音頻ADC的卓越之選 在當(dāng)今音頻技術(shù)飛速發(fā)展的時(shí)代,高性能音頻模擬 - 數(shù)字轉(zhuǎn)換器(ADC)對(duì)于實(shí)現(xiàn)高質(zhì)量音頻采集和處理至關(guān)重要。PCM6140-Q
    的頭像 發(fā)表于 01-28 17:05 ?436次閱讀

    【瑞薩RA × Zephyr評(píng)測(cè)】多線程和看門狗

    本文章旨在評(píng)估使用 Zephyr RTOS 在 Renesas FPB-RA6E2 開發(fā)板上實(shí)現(xiàn)多線程調(diào)度與硬件看門狗功能的應(yīng)用。評(píng)估內(nèi)容包括任務(wù)調(diào)度、看門狗初始化流程、主程序邏輯的詳細(xì)解析,以及實(shí)驗(yàn)現(xiàn)象與數(shù)據(jù)分析。
    的頭像 發(fā)表于 01-10 10:23 ?2474次閱讀
    【瑞薩RA × Zephyr評(píng)測(cè)】<b class='flag-5'>多線程</b>和看門狗

    解析Linux的進(jìn)程、線程和協(xié)程

    更有效地利用多核的計(jì)算資源。 線程并行的應(yīng)用場(chǎng)景包括: (1)多線程服務(wù)器:多個(gè)線程可以同時(shí)處理客戶端請(qǐng)求,提高服務(wù)器的性能和響應(yīng)速度。
    發(fā)表于 12-22 11:00

    深入剖析CC1354R10:高性能多頻段無線MCU的卓越之選

    深入剖析CC1354R10:高性能多頻段無線MCU的卓越之選 在當(dāng)今的物聯(lián)網(wǎng)(IoT)領(lǐng)域,無線微控制器(MCU)的性能和功能對(duì)于各類應(yīng)用的成功至關(guān)重要。CC1354R10作為一款高
    的頭像 發(fā)表于 12-22 09:50 ?691次閱讀

    多線程的系統(tǒng)

    多線程系統(tǒng)的事件響應(yīng)也是在中斷中完成的,但事件的處理是在線程中完成的。在多線程系統(tǒng)中,線程跟中斷一樣,也具有優(yōu)先級(jí),優(yōu)先級(jí)高的線程會(huì)被優(yōu)先執(zhí)
    發(fā)表于 12-08 07:55

    深入剖析NCP13994:高性能半橋諧振轉(zhuǎn)換器控制器

    在電子工程師的設(shè)計(jì)世界里,一款優(yōu)秀的控制器就像是一位得力助手,能夠?yàn)殡娫崔D(zhuǎn)換設(shè)計(jì)帶來諸多便利和高性能表現(xiàn)。今天,我們就來深入剖析安森美(onsemi)的NCP13994,一款專為半橋諧振轉(zhuǎn)換器打造的高
    的頭像 發(fā)表于 12-05 11:27 ?691次閱讀
    <b class='flag-5'>深入</b><b class='flag-5'>剖析</b>NCP13994:高<b class='flag-5'>性能</b>半橋諧振轉(zhuǎn)換器控制器

    Linux多線程對(duì)比單線程的優(yōu)勢(shì)

    :「資源利用率」:通過多線程,可以更有效地利用CPU資源,特別是多核CPU。「并行處理」:線程允許同時(shí)執(zhí)行多個(gè)任務(wù),提高程序的執(zhí)行效率。「簡(jiǎn)化設(shè)計(jì)」:使用線程可以簡(jiǎn)化程序設(shè)計(jì),因?yàn)?b class='flag-5'>線程
    發(fā)表于 12-01 06:11

    rt-thread studio 如何進(jìn)行多線程編譯?

    ,使用的是5800h+32g內(nèi)存+sn550 ssd,開啟16線程編譯時(shí)cpu的占用率也只能到30%,編譯完整個(gè)工程需要3分鐘 感覺多線程編譯設(shè)置沒有生效,有辦法提高編譯速度嗎 rtthread studio版本是 2.2.9
    發(fā)表于 10-11 09:16

    模型推理顯存和計(jì)算量估計(jì)方法研究

    GPU、FPGA等硬件加速。通過分析硬件加速器的性能參數(shù),可以估算模型在硬件加速下的計(jì)算量。 四、實(shí)驗(yàn)與分析 為了驗(yàn)證上述估計(jì)方法的有效性,我們選取了幾個(gè)具有代表性的深度學(xué)習(xí)模型,在多
    發(fā)表于 07-03 19:43

    多線程的安全注意事項(xiàng)

    多線程安全是指多個(gè)線程同時(shí)訪問或修改共享資源時(shí),能夠保證程序的正確性和可靠性。 開發(fā)者選擇TaskPool或Worker進(jìn)行多線程開發(fā)時(shí),在TaskPool和Worker的工作線程中導(dǎo)
    發(fā)表于 06-20 07:49

    鴻蒙5開發(fā)寶藏案例分享---跨線程性能優(yōu)化指南

    ;>Worker</span>做多線程開發(fā)時(shí),總遇到對(duì)象跨線程卡頓的問題,原來鴻蒙早就提供了解決方案。下面結(jié)合代碼和實(shí)戰(zhàn)案例,帶你徹底玩轉(zhuǎn)性能優(yōu)化! 一、痛點(diǎn):跨線程
    發(fā)表于 06-12 17:13

    工控一體機(jī)多線程任務(wù)調(diào)度優(yōu)化:聚徽分享破解工業(yè)復(fù)雜流程高效協(xié)同密碼

    任務(wù)調(diào)度作為工控一體機(jī)管理和協(xié)調(diào)各項(xiàng)任務(wù)的關(guān)鍵機(jī)制,其優(yōu)化程度直接關(guān)乎工業(yè)生產(chǎn)的效率、穩(wěn)定性與精準(zhǔn)度,宛如一把關(guān)鍵鑰匙,解鎖工業(yè)復(fù)雜流程高效協(xié)同的大門。 工業(yè)復(fù)雜流程與多線程任務(wù)調(diào)度的現(xiàn)狀剖析 現(xiàn)代工業(yè)場(chǎng)景紛繁復(fù)雜,
    的頭像 發(fā)表于 05-28 14:06 ?637次閱讀

    請(qǐng)問如何在Python中實(shí)現(xiàn)多線程與多進(jìn)程的協(xié)作?

    大家好!我最近在開發(fā)一個(gè)Python項(xiàng)目時(shí),需要同時(shí)處理多個(gè)任務(wù),且每個(gè)任務(wù)需要不同的計(jì)算資源。我想通過多線程和多進(jìn)程的組合來實(shí)現(xiàn)并發(fā),但遇到了一些問題。 具體來說,我有兩個(gè)任務(wù),一個(gè)是I/O密集型
    發(fā)表于 03-11 06:57