日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 公眾號精選 > Linux閱碼場
[導讀]昨天我們用IntelI9的10核,每個核2個threads的機器跑了內核的編譯:超線程SMT究竟可以快多少?今天,我換一臺機器,采用AMDRyzen。?默認情況16核,每個核2個threads,共32個CPUs:下面編譯內核:大約需要53秒。記得昨天用IntelI910核20線程...

昨天我們用Intel I9的10核,每個核2個threads的機器跑了內核的編譯:

線程SMT究竟可以快多少?

今天,我換一臺機器,采用AMD Ryzen。?

默認情況16核,每個核2個threads,共32個CPUs:

下面編譯內核:

大約需要53秒。記得昨天用Intel I9 10核20線程需要2分鐘30秒左右。


再來一遍:

這說明make clean, drop_caches后時間也差不多。51秒,53秒左右的正常抖動范圍。


現在我們關閉smt,只保留16個CPU:

具體的關閉方法就是:

sudo?sh?-c?'echo?off?>?/sys/devices/system/cpu/smt/control'這樣只剩下16個CPU,下面來編譯:

時間57秒,相對于51、53秒,速度下降不到10%。


這說明超線程SMT對編譯內核這個workload的性能的提升絕對沒有達到100%,甚至都沒有達到10%。


我們現在重新開啟超線程:

?sudo?sh?-c?'echo?on?>?/sys/devices/system/cpu/smt/control看一下哪個CPU和哪個CPU是thread sibling:

看起來CPU0和CPU16是一對,CPU1和CPU17是一對,依次類推。


剛才我們關閉SMT是把CPU16-CPU31全關了,只留下每對里面的1個CPU,也就是留下了CPU0-CPU15。


在開啟SMT的時候(假設藍色和紅色是一個CORE里面的兩個CPU):

在關閉SMT的時候,等于每對里面只留1個CPU:

現在我們換一種關法,一對對關,只留下8對,也就是8個core:

指令如下:

實現效果如下:

再重新編譯內核:

現在耗時是1分21秒,相對于所有CPU全開,下降了很多,時間增大了59%,當然沒有達到2倍

再想想昨天的Intel I9,關閉5個完整核耗時是3分10秒,全開10核是2分30秒,Intel一半核工作和所有核同時工作的差距遠不如AMD那么明顯。


所以可以看出,就內核編譯這個workload而言,AMD的16core相對于8core,性能的scale會更加成正比。當然AMD開關SMT,對內核編譯這個workload而言,影響小于10%,而Intel I9的影響有14%。


很多童鞋昨天留言,說編譯內核有一定的IO bound,另外提到link階段是單線程,還有的童鞋說是Intel Turbo的影響,這些我們都認為是有一定道理的。但是,我始終堅信,profiling是檢驗猜想的唯一標準,后面有空再寫一篇文章來profiling一些究竟是為什么。


這到底是為什么?牙膏廠的多核scalability究竟是不是騙紙?還是按摩店的部分核沒有Intel部分核的威猛模式?「元芳,你怎么看?」


本站聲明: 本文章由作者或相關機構授權發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內容真實性等。需要轉載請聯系該專欄作者,如若文章內容侵犯您的權益,請及時聯系本站刪除。
換一批
延伸閱讀

(全球TMT2021年12月16日訊)摩爾線程與浪潮在京簽署元腦戰(zhàn)略合作協議。摩爾線程與浪潮將發(fā)揮各自在技術、生態(tài)和產業(yè)等方面的領先優(yōu)勢,基于創(chuàng)新算力芯片和元腦生態(tài)平臺展開多維和深度合作,聯手開發(fā)領先的人工智能行業(yè)解決...

關鍵字: 線程

目錄Java線程與OS線程的區(qū)別與關聯JNI的作用JNIEnv和JavaVM是啥JNI中數據是如何傳遞的Java線程與Native(OS)線程的區(qū)別聯系:Java線程其實是一層OS線程的封裝,本質上就是OS線程。【以前版...

關鍵字: Android NI 線程 LOADER

這是一道我秋招面試字節(jié)遇到的真題。這篇文章我會首先結合我們日常的軟件系統開發(fā)介紹?「“為什么網絡要分層”?」?,隨后我會介紹?「“OSI7層模型”」?以及?「“TCP/IP4層模型”」。我會詳細介紹目前廣泛使用的?「“T...

關鍵字: 網絡 模型 網絡層 SMT

本文來源面包板社區(qū)現在,工程師做SMT貼片已經越來越方便,但是,對SMT中的各項工藝,作為工程師的你真的了解“透”了嗎?本文整理了“五大SMT常見工藝缺陷”,幫你填坑,速速get吧!缺陷一:“立碑”現象即片式元器件發(fā)生“...

關鍵字: SMT GE 元件 引腳

線程的同步是Java多線程編程的難點,往往開發(fā)者搞不清楚什么是競爭資源、什么時候需要考慮同步,怎么同步等等問題。

關鍵字: 線程 進程 JAVA

線程(英語:thread)是操作系統能夠進行運算調度的最小單位。它被包含在進程之中,是進程中的實際運作單位。一條線程指的是進程中一個單一順序的控制流,一個進程中可以并發(fā)多個線程,每條線程并行執(zhí)行不同的任務。

關鍵字: 線程 進程 控制流

SMD:它是Surface Mounted Devices的縮寫,意為:表面貼裝器件,它是SMT(Surface Mount Technology)元器件中的一種。

關鍵字: SMD SMT NSMD

摘要:介紹了地基沉降遠程數據采集系統服務器端軟件的設計與實現方法。該軟件能夠并發(fā)處理多個遠程客戶端傳送過來的數據,并將數據保存到數據庫中,同時采用B/S架構對采集的數據進行管理和分析,從而實現對地基沉降遠程采集數據的實時...

關鍵字: 地基沉降 遠程數據采集 軟件系統 線程

眾所周知,STL容器不是線程安全的。對于vector,即使寫方(生產者)是單線程寫入,但是并發(fā)讀的時候,由于潛在的內存重新申請和對象復制問題,會導致讀方(消費者)的迭代器失效。實際表現也就是招致了coredump。另外一...

關鍵字: 線程 ST

Linux閱碼場

174 篇文章

關注

發(fā)布文章

編輯精選

技術子站

關閉