Linux的CPU相關知識

来源:http://www.cnblogs.com/cindy-cindy/archive/2017/07/05/7120623.html
-Advertisement-
Play Games

超線程和多線程的區別? 在Linux系統中,如何詳細瞭解CPU的信息呢? 當然是通過cat /proc/cpuinfo來檢查了,但是比如幾個物理CPU/幾核/幾線程,這些問題怎麼確定呢? 經過查看,我的開發機器是1個物理CPU,4核8線程,Intel(R) Core(TM) i7 CPU 860 @ ...


超線程和多線程的區別?

超線程從硬體層面理解,即一個CPU的部件(可以理解為核)同時執行多條指令,表現就是同時執行多個線程。
多線程是軟體層面的概念,比如CPU只有一個核,通過線程調度可以在一個時間段內運行多個程式或任務,但實際任何時刻只執行一個線程。

 

Linux系統中,如何詳細瞭解CPU的信息呢? 當然是通過cat /proc/cpuinfo來檢查了,但是比如幾個物理CPU/幾核/幾線程,這些問題怎麼確定呢?

經過查看,我的開發機器是1個物理CPU,4核8線程,Intel(R) Core(TM) i7 CPU 860  @ 2.80GHz  www.2cto.com   記錄一下,判斷的過程和知識。   判斷依據: 1.具有相同core id的cpu是同一個core的超線程。 2.具有相同physical id的cpu是同一顆cpu封裝的線程或者cores。 英文版: 1.Physical id and core id are not necessarily consecutive but they are unique. Any cpu with the same core id are hyperthreads in the same core. 2.Any cpu with the same physical id are threads or cores in the same physical socket.   echo "logical CPU number:" #邏輯CPU個數 cat /proc/cpuinfo | grep "processor" | wc -l   echo "physical CPU number:" #物理CPU個數: cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l   echo "core number in a physical CPU:" #每個物理CPU中Core的個數: cat /proc/cpuinfo | grep "cpu cores" | uniq | awk -F: '{print $2}' #查看每個physical cpu上core id的數量,即為每個物理CPU上的core的個數 cat /proc/cpuinfo | grep "core id"   #是否為超線程? #如果有兩個邏輯CPU具有相同的”core id”,那麼超線程是打開的。 #每個物理CPU中邏輯CPU(可能是core, threads或both)的個數: cat /proc/cpuinfo | grep "siblings"     /proc/cpuinfo 文件包含系統上每個處理器的數據段落。/proc/cpuinfo 描述中有 6 個條目適用於多內核和超線程(HT)技術檢查:processor, vendor id, physical id, siblings, core id 和 cpu cores。 processor 條目包括這一邏輯處理器的唯一標識符。 physical id 條目包括每個物理封裝的唯一標識符。 core id 條目保存每個內核的唯一標識符。 siblings 條目列出了位於相同物理封裝中的邏輯處理器的數量。 cpu cores 條目包含位於相同物理封裝中的內核數量。 如果處理器為英特爾處理器,則 vendor id 條目中的字元串是 GenuineIntel。   1.擁有相同 physical id 的所有邏輯處理器共用同一個物理插座。每個 physical id 代表一個唯一的物理封裝。 2.Siblings 表示位於這一物理封裝上的邏輯處理器的數量。它們可能支持也可能不支持超線程(HT)技術。 3.每個 core id 均代表一個唯一的處理器內核。所有帶有相同 core id 的邏輯處理器均位於同一個處理器內核上。 4.如果有一個以上邏輯處理器擁有相同的 core id 和 physical id,則說明系統支持超線程(HT)技術。 5.如果有兩個或兩個以上的邏輯處理器擁有相同的 physical id,但是 core id 不同,則說明這是一個多內核處理器。cpu cores 條目也可以表示是否支持多內核。   判斷CPU是否64位,檢查cpuinfo中的flags區段,看是否有lm標識。 Are the processors 64-bit?    A 64-bit processor will have lm ("long mode") in the flags section of cpuinfo. A 32-bit processor will not.
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 本文總結了Ubantu 16.04 環境下的samba安裝、配置及使用。本文為原創,也是我的第一篇博客,以後會經常寫博客,記錄自己的學習、總結及研究,讓博客見證著我成長的軌跡。 下文中的所有命令均使用root許可權或添加sudo命令執行。 1. samba 安裝 2. 查看samba服務 samba安 ...
  • 本機環境: 1.更新軟體列表 2.安裝pip工具包 3.安裝ss 4.ss配置: (1)可以直接啟動:sudo ssserver -p 8388 -k password -m aes-256-cfb -d start (2)創建配置文件啟動: 單用戶的配置文件: /etc/shadowsocks.j ...
  • 當命令或語句不在命令行執行,而是通過一個程式文件執行時,該程式就稱為shell script或shell 程式。shell腳本文件中可以編寫一系列命令和命令語句、變數和流程式控制制語句等結合起來就形成了一個功能強大的shell script shell 程式類似於DOS系統下的批處理程式(*.bat) ...
  • 0. shell腳本所需要的基礎知識 - vi/vim編輯器命令,包括vimrc設置; - Linux命令基礎 - 網路服務(nfs, rsync, inotify, lanmp, sersync, ssh key)批量分發管理 1. shell腳本介紹 1.1 什麼是shell 1.2 什麼she ...
  • [20170705]理解linux su命令.txt--//我一般在維護時經常使用root用戶登錄,然後su - oracle 轉到其他用戶操作--//一般都加入 - 參數.這個已經成了條件反射...^_^.# man su Change the effective user id and grou ...
  • centos7下安裝rabbitmq 折騰了三天最後做了以下總結 先查看一電腦名 :示例 查看一下hosts配置文件:如果如下結果,就要修改下 修改hosts: 如下 安裝相關文件:為了不出錯,要裝 EPEL源,順手安裝一下 redis ...
  • 美國國家安全局(NSA)旗下的“方程式黑客組織”(shadow brokers)使用的部分網路武器被公開,其中包括可以遠程攻破全球約70%Windows機器的漏洞利用工具。 其中,有十款工具最容易影響Windows個人用戶,包括永恆之藍、永恆王者、永恆浪漫、永恆協作、翡翠纖維、古怪地鼠、愛斯基摩捲、 ...
  • 本文為命令ssh的man文檔翻譯,翻譯了90%的內容,剩餘是一些沒必要翻譯的東西,請見諒。 如此文有所疑惑,希望我的另一篇文章能解惑:http://www.cnblogs.com/f-ck-need-u/p/7129122.html SSH(1) BSD General Commands Manua ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...