KVM性能優化之CPU優化

1、查看kvm虛擬機vCPU的QEMU線程

ps -eLo ruser,pid,ppid,lwp,psr,args |awk '/^qemu/{print $1,$2,$3,$4,$5,$6,$8}'

注:vcpu是不同的線程,而不同的線程是跑在不同的cpu上,一般情況,虛擬機在運行時自身會點用3個cpus,為保證生產環境的穩定性,一個cpu(s)為10核的宿主機,最多給虛擬分7個vcpu,否者會出滿載工作的時候出現超線程的情況。如果有兩個邏輯CPU具有相同的"core id",那么說是超線程。

2、CPU綁定操作

說到這,既然我們的操作系統還有CPU特性都采用了NUMA架構,那么我們完全可以通過調整KVM對應的NUMA關系來達到KVM CPU這方面的優化。這里,我們一般是通過CPU綁定的方法來做相關操作的。

那么具體的操作是怎么樣的呢?那么接下來我們通過一個例子來演示。這里是一臺物理機,之前我們看過了,現在上面裝好了KVM,然后運行著幾個虛擬機,我們用 virsh list 命令可以查看到當前運行的虛擬機列表。?

比如我們要看這個Win7-ent虛擬機里vCPU對應物理CPU的情況,那么可以運行:?
# virsh vcpuinfo Win7-ent?可以查看?

這個虛擬機是2個vCPU 雙核的,然后都是跑在了物理機的CPU8上,使用的時間是2964.6s。最后一個是CPU的親和性,這個yyyyy 表示的是使用的物理CPU內部的邏輯核,一個y就代表其中一個CPU邏輯核。全部是y ,那么說明這臺物理機的24個CPU核,這個CPU都能調度使用。

當然,我們可以進入virsh ,然后運行emulatorpin Win7-ent, 通過這個命令我們可以更詳細的得到這個虛擬機可以用哪幾個核:?

我們可以看到目前這個虛擬機0-23的CPU它都能調度使用。

那么以上就是查看虛擬機CPU NUMA調度的信息,如果我們要把虛擬機綁定到固定的CPU上,我們就要做以下操作:?
# virsh emulatorpin Win7-ent 18-23 --live?
通過這個命令,我們把這個win7的虛擬機vCPU綁定在了18-23這6個CPU之間的核上。?
我們用命令查看下?
emulatorpin Win7-ent?

我們也可以用virsh dumpxml Win7-ent 查看確認:?

這是讓虛擬機里的vCPU一起綁定的方法。?
那么有的人會疑問,一個虛擬機我有兩個vCPU, 比如這個win7 ,它就是雙核的,我想讓里面的vCPU1和vCPU2分別綁定在不同的物理CPU上可以嗎?怎么操作呢?這也是可以的,我們通過下面的方法可以進行相關的vCPU分別綁定

# virsh vcpupin Win7-ent 0 22

# virsh vcpupin Win7-ent 1 23

# virsh dumpxml Win7-ent

# virsh vcpuinfo Win7-ent

這里要注意的是,你把虛擬機用reboot重啟,這個綁定配置還是生效的,但是你shutdown的話,CPU綁定的效果會失效。我們要讓VM關機然后起來也生效,就必須把參數寫入到虛擬機的XML里,然后保存,這樣關機了也不會失效,這里要注意下

# virsh edit vm1

添加:

<cputune>

????<vcpupin vcpu='0' cpuset='22'/>

????<vcpupin vcpu='1' cpuset='23'/></cputune>

以上就是CPU綁定技術的操作。通過這樣的操作,我們可以在一臺多CPU的物理機上固定幾個CPU給虛擬機用。當然,至于為什么可以這樣做,前面我們提到了關于NUMA的原理,如果固定了虛擬機的CPU,那么它就不會去找遠端節點了,另外就是有些場景下,一物理機多個CPU,如果前面幾個CPU負載很高,利用率大,后面幾個CPU利用率低,那么我們可以協調下,做CPU的綁定,平衡下CPU的負載。

注:通過直接在XML定義,需要使用virsh define /etc/libvirt/qemu/vm.xml重新導入虛擬機。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/38245.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/38245.shtml
英文地址,請注明出處:http://en.pswp.cn/web/38245.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

通過MATLAB控制TI毫米波雷達的工作狀態

前言 前一章博主介紹了MATLAB上位機軟件“設計視圖”的制作流程,這一章節博主將介紹如何基于這些組件結合MATLAB代碼來發送CFG指令控制毫米波雷達的工作狀態 串口配置 首先,在我們選擇的端口號輸入框和端口波特率設置框內是可以手動填入數值(字符)的,也可以在點擊運行后…

匯凱金業:投資交易如何才能不虧損

投資交易中永不虧損是一個理想化的目標&#xff0c;現實中無法完全避免虧損。然而&#xff0c;通過科學的方法、合理的策略和嚴格的風險管理&#xff0c;投資者可以大幅減少虧損&#xff0c;并提高長期盈利的概率。以下是一些關鍵策略和方法&#xff0c;幫助投資者在交易中盡量…

【CSRF】

CSRF 原理&#xff1a;誘導用戶在訪問第三方site時&#xff0c;訪問攻擊者構造的site,攻擊者site會對原site進行惡意操作。 burp模擬攻擊&#xff1a; 對一個博客系統點擊發布文章時&#xff0c;Burp Suite抓包&#xff0c;右鍵CSRF PoC功能 -> Engagament tools -> Gen…

洛谷 P3954 [NOIP2017 普及組] 成績

本文由Jzwalliser原創&#xff0c;發布在CSDN平臺上&#xff0c;遵循CC 4.0 BY-SA協議。 因此&#xff0c;若需轉載/引用本文&#xff0c;請注明作者并附原文鏈接&#xff0c;且禁止刪除/修改本段文字。 違者必究&#xff0c;謝謝配合。 個人主頁&#xff1a;blog.csdn.net/jzw…

太陽能輻射系統加速材料老化的關鍵設備光照老化實驗箱

光照老化實驗箱概述 光照老化實驗箱是一種模擬太陽光照射對材料影響的實驗設備&#xff0c;主要用于加速材料的自然老化過程&#xff0c;以此來評估材料在實際使用環境中的耐久性和穩定性。該設備廣泛應用于汽車、航空、建筑、塑料制品等行業&#xff0c;尤其在汽車領域&#…

多商戶b2b2c商城系統怎么運營

B2B2C多用戶商城系統支持多種運營模式&#xff0c;以滿足不同類型和發展階段的企業需求。以下是五大主要的運營模式&#xff1a; **1. 自營模式&#xff1a;**平臺企業通過建立自營線上商城&#xff0c;整合自身多渠道業務。通過會員、商品、訂單、財務和倉儲等多用戶商城管理系…

OK527N-C開發板-簡單的性能測試

OK527N-C CoreMark 獲取CoreMark源碼 首先使用Git克隆倉庫&#xff1a; git clone https://github.com/eembc/coremark.git cd coremark修改Makefile 首先復制文件夾 cp -rf posix ok527之后修改ok527文件夾下的core_portme.mak文件&#xff0c;將CC修改如下 CC aarch6…

CPU占用率飆升至100%:是攻擊還是正常現象?

在運維和開發的日常工作中&#xff0c;CPU占用率突然飆升至100%往往是一個令人緊張的信號。這可能意味著服務器正在遭受攻擊&#xff0c;但也可能是由于某些正常的、但資源密集型的任務或進程造成的。本文將探討如何識別和應對服務器的異常CPU占用情況&#xff0c;并通過Python…

魔行觀察-探魚·鮮青椒爽麻烤魚-開關店監測-時間段:2013年1月 至 2024年6月

今日監測對象&#xff1a;探魚鮮青椒爽麻烤魚&#xff0c;監測時間段&#xff1a;2011年1月 至 2024年6月 本文用到數據源免費獲取地址 魔行觀察http://www.wmomo.com/ 品牌介紹&#xff1a; 探魚建立了產、供、銷一體全鏈條式供應鏈體系&#xff0c;并在低緯珠江口特設潮汐…

大公司圖紙管理的未來趨勢

隨著科技的不斷發展&#xff0c;大公司圖紙管理正朝著更加智能化、自動化和協同化的方向發展。以下是大公司圖紙管理的未來趨勢預測。 1. 智能化管理 利用人工智能和機器學習技術&#xff0c;實現圖紙的自動分類、標注和檢索。通過智能分析算法&#xff0c;預測圖紙的使用趨勢…

NSSCTF-Web題目19(數據庫注入、文件上傳、php非法傳參)

目錄 [LitCTF 2023]這是什么&#xff1f;SQL &#xff01;注一下 &#xff01; 1、題目 2、知識點 3、思路 [SWPUCTF 2023 秋季新生賽]Pingpingping 4、題目 5、知識點 6、思路 [LitCTF 2023]這是什么&#xff1f;SQL &#xff01;注一下 &#xff01; 1、題目 2、知識…

基于Vue的MOBA類游戲攻略分享平臺

你好呀&#xff0c;我是計算機學姐碼農小野&#xff01;如果有相關需求&#xff0c;可以私信聯系我。 開發語言&#xff1a;Java 數據庫&#xff1a;MySQL 技術&#xff1a;Java技術、SpringBoot框架、B/S模式、Vue.js 工具&#xff1a;MyEclipse、MySQL 系統展示 首頁 用…

在 Windows 上,使用 icacls 命令讓apache 用戶有權訪問

調試免費云服務器&#xff0c;三豐云&#xff0c;用戶權限過程。 在 Windows 上&#xff0c;icacls 命令是一個非常強大的工具&#xff0c;用于修改文件和目錄的權限。然而&#xff0c;需要注意的是&#xff0c;Windows 默認的 Web 服務器&#xff08;如 IIS&#xff09;通常運…

lstrip()方法——截掉字符串左邊的空格或指定的字符

自學python如何成為大佬(目錄):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 語法參考 lstrip()方法用于截掉字符串左邊的空格或指定的字符。lstrip()方法的語法格式如下&#xff1a; str.lstrip([chars]) 參數說明&#xff…

【算法】Merge Sort 合并排序

Merge Sort概述 分而治之算法 遞歸地將問題分解為多個子問題&#xff0c;直到它們變得簡單易解 將解決方案組合起來&#xff0c;解決原有問題 O&#xff08;n*log&#xff08;n&#xff09;&#xff09;運行時間 基于比較的算法的最佳運行時間 一般原則 合并排序: 1. 將數…

elasticsearch鏡像化安裝部署

1、鏡像安裝 docker network create --driver bridge --subnet192.128.0.0/10 --gateway192.128.1.1 mynetwork docker run -d --netmynetwork --ip192.128.10.1 -p 1000:22 --name redhat-es01 -it c70d72aaebb4 /bin/bash #拉取鏡像 docker pull elasticsearch:7.7.0 #啟動…

【瞎折騰日常】服務器的cpu飆高到1000%了怎么破

一、故障起因 起因是用戶反饋系統很卡,我登錄普羅米修斯一看,發現docker部署得集群下的一個java應用服務器cpu爆了,直接沖到了1000%以上了,接著就是各種接口超時報警等,趕緊打開對應的服務器查看進程情況,這會使用jstack和top命令定位哪個線程占用的cpu比較大,定位代碼問…

橢流線法設計配光器

橢流線法設計配光器 一、設計原理 1、邊光原理 邊光原理是非成像光學中的一個基礎原理&#xff0c;其內容可以表述為&#xff1a;來自光源邊緣的光線經過若干有序正則光學曲面后依然落在投射光斑的邊緣&#xff0c;而來自光源內部的光線也將落在光斑內部。這里的邊緣包含兩層…

PyTorch(七)模型的保存與加載

#d 兩種保存方式比較 僅保存模型參數 優點: 更加靈活&#xff0c;只保存模型的參數&#xff0c;不保存模型的結構&#xff0c;可以在不同的模型結構中加載參數&#xff08;只要參數匹配&#xff09;。文件大小通常比保存整個模型小。安全性更高&#xff0c;因為不直接執行pic…

機械拆裝-基于Unity-總體設計

前言 在工業設計和制造領域&#xff0c;零部件的拆裝技術是一個重要的應用場景&#xff0c;比如我們在工程訓練課程中經歷的摩托車發動機拆裝課程&#xff0c;是機械類學生的必修課程。虛擬拆裝系統模擬和仿真了模型的拆裝過程&#xff0c;雖然SolidWorks等機械設計軟件能夠解決…