在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

講講線程、進(jìn)程和CPU中的超線程

冬至配餃子 ? 來源:天奇工作室 ? 作者:LRC ? 2022-08-05 16:38 ? 次閱讀

我們先來回顧一下之前的內(nèi)容。CPU其實(shí)就是執(zhí)行指令的器件,指令從哪讀取要看PC寄存器,取得的指令需要翻譯成電路的控制信號,最后輸出一條指令的結(jié)果,這個(gè)結(jié)果可能會對下一條指令產(chǎn)生影響,也可能會對內(nèi)存或地址空間中的某個(gè)值產(chǎn)生影響。

今天我們來講講線程、進(jìn)程和CPU中的超線程。

我們通過不計(jì)其數(shù)的指令的組合,可以形成一個(gè)完整的線程。線程之間通過少量的必要的溝通組合形成一個(gè)進(jìn)程,也就是我們通常意義上的應(yīng)用程序。比如說音樂播放器中,音樂的播放是一個(gè)線程,用戶的操作界面是另外一個(gè)線程,兩個(gè)線程合起來構(gòu)成了音樂播放器。當(dāng)然,一個(gè)應(yīng)用程序(進(jìn)程)也可以只有一個(gè)線程。

早期的計(jì)算機(jī)不像現(xiàn)在如此發(fā)達(dá),一般一臺計(jì)算機(jī)一段時(shí)間內(nèi)只運(yùn)行一個(gè)線程,比如說計(jì)算導(dǎo)彈軌跡什么的,在計(jì)算完成后輸出結(jié)果,線程結(jié)束。然而時(shí)代在改變,在寫這段文字的時(shí)候,我的平板一邊打開著wps,一邊播放著音樂。這兩個(gè)進(jìn)程的運(yùn)行是連續(xù)的、同時(shí)的。

為什么會連續(xù)、同時(shí)呢?

首先,當(dāng)今的CPU的核心數(shù)早已不是單核心,一個(gè)非超線程(一會會講)的核心可以運(yùn)行一個(gè)線程,現(xiàn)在的八核CPU就可以同時(shí)運(yùn)行八個(gè)線程。但是這樣夠嗎?我們現(xiàn)在的電腦同一時(shí)刻需要運(yùn)行的線程可遠(yuǎn)不止八個(gè)。那看來光有核心數(shù)還不夠,我們還需要別的辦法。

第二個(gè)辦法便是分時(shí)間片。CPU運(yùn)算速度極快,我們能不能讓CPU在這一些線程上反復(fù)橫跳,快速切換并輪流執(zhí)行這些個(gè)線程,營造出一種這些線程是同時(shí)進(jìn)行的錯(cuò)覺。具體怎么操作呢?可以設(shè)置一個(gè)“鬧鐘”,當(dāng)?shù)褂?jì)時(shí)結(jié)束的時(shí)候強(qiáng)行停止CPU當(dāng)前的線程(中斷),PC寄存器跳轉(zhuǎn)到相應(yīng)的地址,將當(dāng)前未處理完的線程的PC值、寄存器組數(shù)據(jù)等信息用一種數(shù)據(jù)類型保存到內(nèi)存中,CPU將根據(jù)操作系統(tǒng)給出的決定切換到接下來要運(yùn)行的下一個(gè)線程。CPU此時(shí)要將接下來要運(yùn)行的線程從內(nèi)存中讀取,恢復(fù)該線程到CPU內(nèi)核心中,就像它之前被切換出去時(shí)的樣子,然后開始執(zhí)行這個(gè)線程。(暫不細(xì)講)

第三個(gè)方法則是今天的主角--超線程技術(shù)。這個(gè)技術(shù)我沒記錯(cuò)的話是Intel率先提出來的,他們聲稱增加5%的晶體管數(shù)量可以提升20%的性能。

具體怎么操作呢?首先我們先要考慮一下為什么一個(gè)核心只能同時(shí)運(yùn)行一個(gè)線程。

1.只有一個(gè)PC寄存器,只能指示一個(gè)線程目前運(yùn)行到哪了。

2.無法區(qū)分對寄存器組的操作。比如線程A要把第一個(gè)寄存器的值寫成0,B要讀出第一個(gè)寄存器的值,現(xiàn)在也就是0。但這個(gè)0是B想要的嗎?肯定不是。

3.還有一些涉及到線程的棧指針和頁表基地址的寄存器,也只能支撐一個(gè)線程的運(yùn)行。

因此,超線程簡單來講就是把這些不能公用的資源加倍。而那些流水線上的操作邏輯電路、ALU單元等則可以不用復(fù)制。以此實(shí)現(xiàn)多個(gè)線程同時(shí)在一個(gè)CPU的核心中進(jìn)行處理。注意,不一定一個(gè)核心只能虛擬出兩個(gè)線程,IBM的某款CPU甚至一個(gè)核心虛擬出了八個(gè)線程。

那為什么性能會提升呢?共用了這么多資源,性能應(yīng)該會有所下降才對。是的,有些時(shí)候性能確實(shí)會下滑,尤其是某個(gè)線程需要很大計(jì)算量的時(shí)候,因?yàn)楣灿茫赡軙?dǎo)致該線程運(yùn)行速度減慢。那Intel是瞎吹他們的超線程技術(shù)嗎?并不是,往往CPU限制運(yùn)行速度的不是計(jì)算而是讀寫。讀寫要做的就是等待數(shù)據(jù)的傳輸,這個(gè)過程CPU沒事可做,只能空等。但有了超線程就不一樣了,CPU可以在本該空等的地方擇機(jī)執(zhí)行另外一個(gè)線程的指令,實(shí)現(xiàn)了時(shí)間管理,縮短了兩個(gè)程序執(zhí)行的總體時(shí)間。


審核編輯:劉清

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

    關(guān)注

    31

    文章

    5425

    瀏覽量

    123558
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    11049

    瀏覽量

    216159
  • ALU
    ALU
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    13284
收藏 人收藏

    評論

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

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

    [] = []; // 3. 子線程按需查詢數(shù)據(jù) static async getAuthors(ids: number[]): Promise<string[]> { return
    發(fā)表于 06-12 17:13

    進(jìn)程線程、協(xié)程傻傻分不清?一文帶你徹底扒光它們的\"底褲\"!

    ;) ? asyncio.run(main()) 輸出結(jié)果: markdown 抓取完成!共 10 條數(shù)據(jù) 「三大門派」終極對比表(含「社死」現(xiàn)場) 特性 進(jìn)程 線程 協(xié)程 資源開銷 高(買房) (合租
    發(fā)表于 03-26 09:27

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

    () thread.join() process.join() 我的問題是:**如何合理地組合多線程和多進(jìn)程以獲得更好的性能?**特別是在I/O密集型任務(wù)和CPU密集型任務(wù)混合的情況下,如何避免性能瓶頸,確保程序的高效運(yùn)行? 希
    發(fā)表于 03-11 06:57

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

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

    華為云 X 實(shí)例 CPU 性能測試詳解與優(yōu)化策略

    ? 2.2 Sysbench單線程CPU性能測試 ? 2.3 Sysbench多線程CPU性能測試(4線程) ? 2.4 高強(qiáng)度多
    的頭像 發(fā)表于 12-30 14:52 ?590次閱讀
    華為云 X 實(shí)例 <b class='flag-5'>CPU</b> 性能測試詳解與優(yōu)化策略

    國產(chǎn)GPU獨(dú)角獸摩爾線程啟動上市輔導(dǎo)

    近日,國內(nèi)GPU領(lǐng)域的獨(dú)角獸企業(yè)摩爾線程正式在北京證監(jiān)局辦理了上市輔導(dǎo)備案登記,標(biāo)志著其A股上市進(jìn)程已全面啟動。此次輔導(dǎo)機(jī)構(gòu)選定為中信證券,將為摩爾線程的上市之路提供有力支持。
    的頭像 發(fā)表于 11-14 14:21 ?522次閱讀

    socket 多線程編程實(shí)現(xiàn)方法

    是指在同一個(gè)進(jìn)程運(yùn)行多個(gè)線程,每個(gè)線程可以獨(dú)立執(zhí)行任務(wù)。線程共享進(jìn)程的資源,如內(nèi)存空間和文件句
    的頭像 發(fā)表于 11-12 14:16 ?923次閱讀

    摩爾線程完成股改,籌備上市

    近日,摩爾線程智能科技(北京)股份有限公司(簡稱“摩爾線程”)宣布已完成股改,并正積極籌備上市。據(jù)國家企業(yè)信用信息公示系統(tǒng)最新查詢結(jié)果顯示,摩爾線程的市場主體類型在10月28日已從其他有限責(zé)任公司
    的頭像 發(fā)表于 11-12 14:15 ?1074次閱讀

    一文搞懂Linux進(jìn)程的睡眠和喚醒

    。通過PPID,可以追蹤進(jìn)程的來源,并了解進(jìn)程之間的關(guān)系。 在PCB記錄的進(jìn)程狀態(tài),不過是一些整數(shù),這個(gè)整數(shù)是多少就代表進(jìn)程此時(shí)處于什么
    發(fā)表于 11-04 15:15

    Python線程和多進(jìn)程的區(qū)別

    Python作為一種高級編程語言,提供了多種并發(fā)編程的方式,其中多線程與多進(jìn)程是最常見的兩種方式之一。在本文中,我們將探討Python線程與多進(jìn)
    的頭像 發(fā)表于 10-23 11:48 ?943次閱讀
    Python<b class='flag-5'>中</b>多<b class='flag-5'>線程</b>和多<b class='flag-5'>進(jìn)程</b>的區(qū)別

    CPU線程和程序線程的區(qū)別

    CPU線程與程序的線程在概念、作用、實(shí)現(xiàn)方式以及性能影響等方面存在顯著差異。以下是對兩者區(qū)別的詳細(xì)闡述,旨在深入探討這一技術(shù)話題。
    的頭像 發(fā)表于 09-02 11:18 ?1974次閱讀

    一文掌握Python多線程

    使用線程可以把占據(jù)長時(shí)間的程序的任務(wù)放到后臺去處理。
    的頭像 發(fā)表于 08-05 15:46 ?1202次閱讀

    從多線程設(shè)計(jì)模式到對 CompletableFuture 的應(yīng)用

    最近在開發(fā) 延保服務(wù) 頻道頁時(shí),為了提高查詢效率,使用到了多線程技術(shù)。為了對多線程方案設(shè)計(jì)有更加充分的了解,在業(yè)余時(shí)間讀完了《圖解 Java 多線程設(shè)計(jì)模式》這本書,覺得收獲良多。本篇文章將介紹其中
    的頭像 發(fā)表于 06-26 14:18 ?635次閱讀
    從多<b class='flag-5'>線程</b>設(shè)計(jì)模式到對 CompletableFuture 的應(yīng)用

    鴻蒙開發(fā):線程模型

    FA模型下的線程主要有如下三類
    的頭像 發(fā)表于 06-24 17:27 ?674次閱讀
    鴻蒙開發(fā):<b class='flag-5'>線程</b>模型

    探索虛擬線程:原理與實(shí)現(xiàn)

    虛擬線程的引入與優(yōu)勢 在Loom項(xiàng)目之前,Java虛擬機(jī)(JVM)線程是通過java.lang.Thread類型來實(shí)現(xiàn)的,這些線程被稱為平臺線程
    的頭像 發(fā)表于 06-24 11:35 ?543次閱讀
    探索虛擬<b class='flag-5'>線程</b>:原理與實(shí)現(xiàn)
    主站蜘蛛池模板: 男啪女色黄无遮挡免费视频 | 国产精品第九页 | 欧美性hd| 日本h片在线观看 | 一级黄色毛毛片 | 五月婷婷在线视频 | 日本黄色站 | 成人做视频免费 | 777精品视频 | 三级理论在线观看 | 午夜看看| 国产精品久久在线 | 日本一区免费观看 | 免费公开在线视频 | 狠狠色丁香久久综合网 | 国产综合精品久久亚洲 | 另类免费视频 | 欧美xxxx性疯狂bbbb | 日韩欧美在线第一页 | 成年人www | 性满足久久久久久久久 | 你懂得在线播放 | 免费在线观看理论片 | 精品视频一区在线观看 | 色婷婷激婷婷深爱五月老司机 | 亚洲444444在线观看 | 亚洲午夜久久久 | 日本天天色 | 波多野结衣三个女人蕾丝边 | 最新sss华人 | 天堂资源在线官网bt | 关晓彤被调教出奶水的视频 | 国产欧美一级片 | 久久久久国产一级毛片高清片 | 天天色天天看 | 日本黄色大片免费观看 | 国内真实下药迷j在线观看 国内自拍 亚洲系列 欧美系列 | 激情www| 四虎永久在线观看免费网站网址 | 日韩操| 性色欧美 |