国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法與流程

      文檔序號:12733191閱讀:1774來源:國知局
      基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法與流程
      本發(fā)明屬于云計(jì)算
      技術(shù)領(lǐng)域
      ,更為具體地講,涉及一種基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法。
      背景技術(shù)
      :云計(jì)算服務(wù)的基礎(chǔ)設(shè)施即服務(wù)模式,支持用戶以虛擬機(jī)的形式按需租用具有一定級別計(jì)算能力的計(jì)算資源,用戶按資源的性能和租用時(shí)間繳付租金,當(dāng)用戶需要租賃一個(gè)虛擬機(jī)時(shí),需要選擇一個(gè)資源提供商,并選擇一種特定配置的虛擬機(jī),這時(shí),虛擬機(jī)的性能是影響決策的一個(gè)重要因素。因此,如何準(zhǔn)確地評估虛擬機(jī)的性能成為一個(gè)關(guān)鍵問題。影響虛擬機(jī)性能的因素主要包括三類:一是虛擬化平臺的軟硬件參數(shù)及虛擬機(jī)配置等確定性的因素,如CPU微架構(gòu)和主頻、內(nèi)存類型、硬盤類型、虛擬機(jī)監(jiān)控器(VirtualMachineMonitor,VMM)類型、虛擬機(jī)的虛擬CPU(VCPU)個(gè)數(shù)、內(nèi)存容量、I/O帶寬等參數(shù)的取值等都會影響虛擬機(jī)性能;二是虛擬機(jī)運(yùn)行時(shí)環(huán)境中的可變性因素,如多個(gè)虛擬機(jī)競爭底層資源會對虛擬機(jī)性能帶來不確定性的影響;三是虛擬機(jī)上運(yùn)行的應(yīng)用的資源訪問偏好因素,如分別運(yùn)行內(nèi)存密集或I/O密集的兩類應(yīng)用時(shí),同一個(gè)虛擬機(jī)可能表現(xiàn)出不同的性能水平。當(dāng)給定一個(gè)虛擬機(jī)的軟硬件配置特征及運(yùn)行時(shí)環(huán)境特征時(shí),如果能較為準(zhǔn)確地預(yù)測該虛擬機(jī)運(yùn)行特定類型應(yīng)用時(shí)的性能,可以幫助用戶選擇合適的虛擬機(jī),并指導(dǎo)資源提供方優(yōu)化虛擬機(jī)部署和資源分配。目前的虛擬機(jī)性能評估研究主要從虛擬機(jī)在不同方面的性能表現(xiàn)來整體評估虛擬機(jī)性能。呂慶翰(<華南理工大學(xué)碩士論文>,2015)提出了一種基于模糊層次分析法和離差最大化方法的綜合測評模型,將綜合性能分為功能層和指標(biāo)層,功能層中各要素的權(quán)重用模糊層次分析法進(jìn)行分析;指標(biāo)層的各要素的權(quán)重采用基于離差最大化方法來計(jì)算,從而根據(jù)各指標(biāo)的評測結(jié)果來計(jì)算相同配置下虛擬機(jī)相對于物理機(jī)的綜合性能百分比。車建華(<浙江大學(xué)博士論文>,2010)提出一種多粒度性能組合測試思想,將虛擬機(jī)的性能分為宏觀性能、微觀性能兩種粒度,以黑盒方式測試虛擬機(jī)的宏觀性能和微觀性能;以白盒方式分析在兩種粒度下的性能數(shù)據(jù)以刻畫相應(yīng)的性能特征;通過關(guān)聯(lián)各種粒度的性能特征,鑒別虛擬機(jī)的性能瓶頸。這一類工作主要考查VMM層次為實(shí)現(xiàn)虛擬化引入的性能開銷。目前的虛擬機(jī)性能建模研究主要應(yīng)用負(fù)載特征或部分硬件特征與性能的關(guān)系建模。余勇(<計(jì)算機(jī)科學(xué)>,2016)提出了兩個(gè)負(fù)載類型相關(guān)的性能模型:通過分析Xen虛擬機(jī)系統(tǒng)處理網(wǎng)絡(luò)I/O操作的CPU消耗規(guī)律,建立了CPU核共享和CPU核隔離兩種情況下的普通虛擬機(jī)網(wǎng)絡(luò)I/O操作請求次數(shù)計(jì)算模型;通過分析多個(gè)虛擬機(jī)并行執(zhí)行計(jì)算密集型負(fù)載的平均性能與一個(gè)相同配置的虛擬機(jī)執(zhí)行同樣負(fù)載的性能之間的關(guān)系,建立了并行執(zhí)行計(jì)算密集型負(fù)載的虛擬機(jī)平均性能分析模型。黎豐澤(<計(jì)算機(jī)系統(tǒng)應(yīng)用>,2015)分析了影響虛擬機(jī)應(yīng)用性能的關(guān)鍵參數(shù),通過奇異值分解的特征拓展及非線性模型對運(yùn)行于同一物理資源池上的虛擬機(jī)應(yīng)用性能進(jìn)行建模。以上對虛擬機(jī)上不同負(fù)載性能建模的研究主要考慮CPU、內(nèi)存、網(wǎng)絡(luò)等確定性的因素對虛擬機(jī)性能的影響,未考慮CPU微架構(gòu)、VCPU與CPU核心的綁定方式、多虛擬機(jī)上同時(shí)運(yùn)行的其他類型的負(fù)載對資源的競爭等因素對虛擬機(jī)性能的影響。目前的虛擬機(jī)性能預(yù)測的相關(guān)研究通過構(gòu)建資源配置與虛擬機(jī)性能的關(guān)系模型來預(yù)測某一資源配置下的虛擬機(jī)性能。如貝振東等“一種云計(jì)算系統(tǒng)中虛擬機(jī)的性能預(yù)測方法及系統(tǒng)”(發(fā)明專利,2015年4月22日公開,公開號為CN104536829A的中國發(fā)明專利申請),提出了一種虛擬機(jī)性能預(yù)測方法,其虛擬機(jī)監(jiān)控模塊根據(jù)預(yù)設(shè)的資源配置標(biāo)準(zhǔn),隨機(jī)地改變虛擬機(jī)的資源配置,將每一種資源配置下的云計(jì)算系統(tǒng)響應(yīng)時(shí)間和當(dāng)前為虛擬機(jī)配置的資源集合合并生成向量,將一組資源配置生成的向量作為輸入,使用支持向量機(jī)算法根據(jù)輸入的向量生成性能預(yù)測模型,用來預(yù)測在任一資源配置下的云計(jì)算系統(tǒng)的響應(yīng)時(shí)間。所設(shè)置的資源配置標(biāo)準(zhǔn)涉及內(nèi)存、CPU、網(wǎng)絡(luò)帶寬等三種資源,包括每臺虛擬機(jī)的最低資源耗費(fèi)量及每臺物理主機(jī)的資源容量。但是以上研究未涉及虛擬機(jī)運(yùn)行時(shí)環(huán)境中其他虛擬機(jī)上的負(fù)載對其性能的影響。影響虛擬機(jī)性能的特征有多個(gè),各個(gè)特征之間的關(guān)系復(fù)雜且呈非線性,并且不同的應(yīng)用性能對特征取值變化的敏感程度不同,傳統(tǒng)的統(tǒng)計(jì)方法在分析這些數(shù)據(jù)時(shí)遭到挑戰(zhàn),尤其是廣義線性模型,對于特征之間的復(fù)雜關(guān)系無法得出比較精確的回歸模型,且模型的普適性不好。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法,采用隨機(jī)森林回歸模型來描述虛擬機(jī)性能特征與性能指標(biāo)間的關(guān)系,從而有效預(yù)測特定配置下的虛擬機(jī)性能。為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法包括以下步驟:S1:根據(jù)待預(yù)測的虛擬化環(huán)境的資源特點(diǎn),從底層硬件特征、虛擬機(jī)軟件特征、虛擬機(jī)資源配置特征、虛擬機(jī)運(yùn)行時(shí)環(huán)境特征四個(gè)方面提取可能影響虛擬機(jī)性能的特征,記所提取到的虛擬機(jī)性能特征數(shù)量為F;S2:根據(jù)步驟S1中各虛擬機(jī)性能特征的可能取值,配置得到一組不同虛擬機(jī)性能特征組合的虛擬機(jī),記虛擬機(jī)數(shù)量為N;根據(jù)虛擬機(jī)上待運(yùn)行的應(yīng)用類型選取一組基準(zhǔn)測試程序,分別在每一臺虛擬機(jī)上運(yùn)行基準(zhǔn)測試程序,記錄預(yù)設(shè)的性能指標(biāo)的數(shù)值,得到由N臺虛擬機(jī)的數(shù)據(jù)Dn=(Xn,Yn)構(gòu)成的數(shù)據(jù)樣本集D,其中Xn=(xn,1,xn,2,…,xn,F)表示第n臺虛擬機(jī)的虛擬機(jī)性能特征,xn,i表示第n臺虛擬機(jī)中第i個(gè)虛擬機(jī)性能特征xi的取值,Yn表示第n臺虛擬機(jī)Xn對應(yīng)的性能指標(biāo)值,i=1,2,…,F,n=1,2,…,N;S3:根據(jù)步驟S2得到的數(shù)據(jù)樣本集D構(gòu)建隨機(jī)森林回歸模型,其具體方法為:S3.1:令決策樹序號t=1;S3.2:從步驟S2得到的數(shù)據(jù)樣本集D中,采用Bootstrap方法有放回地多次隨機(jī)采樣,抽取γ×N個(gè)數(shù)據(jù)樣本作為第t棵決策樹的訓(xùn)練集S(t),γ的取值范圍為0<γ≤1;S3.3:令決策樹深度d=1,將S(t)作為根節(jié)點(diǎn)的樣本集合,根節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值為根節(jié)點(diǎn)樣本集合中所有樣本的性能指標(biāo)平均值;S3.4:如果第t棵決策樹的深度d=Td,Td表示決策樹深度最大值,本決策樹訓(xùn)練完畢,進(jìn)入步驟S3.8,否則進(jìn)入步驟S3.5;S3.5:對第d層的每個(gè)節(jié)點(diǎn),依次按照以下方法進(jìn)行節(jié)點(diǎn)切分:記節(jié)點(diǎn)的樣本集合為S,如果樣本集合中的樣本數(shù)目小于預(yù)設(shè)閾值TS,則本節(jié)點(diǎn)作為葉子節(jié)點(diǎn),不再切分,否則從F維虛擬機(jī)性能特征中無放回地隨機(jī)選取f維特征構(gòu)成集合P,f的取值范圍為1≤f≤F;對于虛擬機(jī)性能特征集合P中的每個(gè)特征xj,分別選取K個(gè)切分點(diǎn)λj(k),k=1,2,…,K,K表示切分點(diǎn)數(shù)量;根據(jù)如下公式計(jì)算出節(jié)點(diǎn)樣本集合S中以特征xj和切分點(diǎn)λj(k)進(jìn)行切分時(shí)的加權(quán)方差M(j,k):其中,R1(j,k)表示節(jié)點(diǎn)樣本集合S中切分特征xj的取值小于等于λj(k)的樣本集合,R2(j,k)表示節(jié)點(diǎn)樣本集合S中切分特征xj的取值大于λj(k)的樣本集合,Q1和Q2分別表示R1(j,k)和R2(j,k)中樣本數(shù)量,c1和c2分別表示R1(j,k)和R2(j,k)中所有樣本的性能指標(biāo)平均值;篩選出最小加權(quán)方差,如果最小加權(quán)方差小于設(shè)定的最小切分閾值Tλ,則本節(jié)點(diǎn)作為葉子節(jié)點(diǎn),不再切分,否則選擇最小加權(quán)方差對應(yīng)的特征和切分點(diǎn)作為本節(jié)點(diǎn)的切分特征和切分點(diǎn),將節(jié)點(diǎn)樣本集合S中切分特征的取值小于等于的樣本劃分至左子節(jié)點(diǎn),大于的樣本劃分至右子節(jié)點(diǎn),子節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值為子節(jié)點(diǎn)樣本集合中所有樣本的性能指標(biāo)平均值;S3.6:如果第d層的每個(gè)節(jié)點(diǎn)均為葉子節(jié)點(diǎn),本決策樹訓(xùn)練完畢,進(jìn)入步驟S3.8,否則進(jìn)入步驟S3.7;S3.7:令d=d+1,返回步驟S3.4;S3.8:如果t<Tt,Tt表示隨機(jī)森林回歸模型中決策樹的數(shù)量,進(jìn)入步驟S3.9,否則隨機(jī)森林回歸模型構(gòu)建完畢;S3.9:令t=t+1,返回步驟3.2;S4:對于待預(yù)測性能的虛擬機(jī)X′=(x′1,x′2,…,x′F),分別采用隨機(jī)森林回歸模型中的Tt個(gè)決策樹預(yù)測得到Tt個(gè)性能預(yù)測值,平均后得到該虛擬機(jī)的性能預(yù)測值,每個(gè)決策樹預(yù)測的方法為:將虛擬機(jī)X′的性能特征矢量(x′1,x′2,…,x′F)輸入決策樹的根節(jié)點(diǎn),根據(jù)該節(jié)點(diǎn)的切分特征和切分點(diǎn)將虛擬機(jī)X′劃分入相應(yīng)子節(jié)點(diǎn),以此類推直到到達(dá)某個(gè)葉子節(jié)點(diǎn),以該葉子節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值作為采用該決策樹得到的性能預(yù)測值。本發(fā)明基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法,根據(jù)待預(yù)測的虛擬化環(huán)境的資源特點(diǎn),從底層硬件特征、虛擬機(jī)軟件特征、虛擬機(jī)資源配置特征、虛擬機(jī)運(yùn)行時(shí)環(huán)境特征四個(gè)方面提取可能影響虛擬機(jī)性能的特征,配置不同虛擬機(jī)性能特征組合的虛擬機(jī),通過運(yùn)行基準(zhǔn)測試程序來獲取所需的性能指標(biāo)值,獲得數(shù)據(jù)樣本集;根據(jù)數(shù)據(jù)樣本集構(gòu)建隨機(jī)森林回歸模型,采用隨機(jī)森林回歸模型對特定虛擬機(jī)性能特征配置的虛擬機(jī)進(jìn)行性能預(yù)測。本發(fā)明采用隨機(jī)森林回歸模型來描述虛擬機(jī)性能特征與性能指標(biāo)間的關(guān)系,從而有效預(yù)測特定配置下的虛擬機(jī)性能。附圖說明圖1是本發(fā)明基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法的具體實(shí)施方式流程圖;圖2是本發(fā)明中構(gòu)建用于預(yù)測虛擬機(jī)性能的隨機(jī)森林回歸模型的流程圖;圖3是本實(shí)施例中第1棵決策樹示意圖。具體實(shí)施方式下面結(jié)合附圖對本發(fā)明的具體實(shí)施方式進(jìn)行描述,以便本領(lǐng)域的技術(shù)人員更好地理解本發(fā)明。需要特別提醒注意的是,在以下的描述中,當(dāng)已知功能和設(shè)計(jì)的詳細(xì)描述也許會淡化本發(fā)明的主要內(nèi)容時(shí),這些描述在這里將被忽略。圖1是本發(fā)明基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法的具體實(shí)施方式流程圖。如圖1所示,本發(fā)明基于隨機(jī)森林回歸的虛擬機(jī)性能預(yù)測方法的具體步驟包括:S101:選取虛擬機(jī)性能特征:根據(jù)待預(yù)測的虛擬化環(huán)境的資源特點(diǎn),從底層硬件特征、虛擬機(jī)軟件特征、虛擬機(jī)資源配置特征、虛擬機(jī)運(yùn)行時(shí)環(huán)境特征四個(gè)方面提取可能影響虛擬機(jī)性能的特征,記所提取到的虛擬機(jī)性能特征數(shù)量為F。根據(jù)目前的虛擬化環(huán)境,底層硬件特征可能包括物理CPU微架構(gòu),如IntelSkylake和AMDSteamroller;內(nèi)存的容量和主頻;硬盤的類型,如SATA和SSD;網(wǎng)絡(luò)的帶寬等。虛擬機(jī)軟件特征可能包括采用的VMM軟件,如Xen,VMware,KVM;CPU的虛擬化方式,包括半虛擬化與全虛擬化方式;I/O設(shè)備的虛擬化方式,包括半虛擬化、軟件模擬、直接訪問;虛擬化平臺選取的調(diào)度算法,包括credit,credit2,sedf,rtds等調(diào)度算法。虛擬機(jī)資源配置特征可能包括虛擬機(jī)配置的VCPU個(gè)數(shù);每個(gè)VCPU是否綁定到固定的核心,不同的綁定方式對虛擬機(jī)性能影響不同;虛擬機(jī)使用的內(nèi)存容量;虛擬機(jī)使用的虛擬機(jī)硬盤的類型,如物理分區(qū)、LVM邏輯卷;虛擬機(jī)可使用的網(wǎng)絡(luò)帶寬等。虛擬機(jī)運(yùn)行時(shí)環(huán)境特征可能包括:運(yùn)行時(shí)是單個(gè)虛擬機(jī)運(yùn)行還是多個(gè)虛擬機(jī)同時(shí)運(yùn)行,多虛擬機(jī)同時(shí)運(yùn)行對資源的競爭會對虛擬機(jī)性能造成影響;若存在多個(gè)虛擬機(jī)同時(shí)運(yùn)行,干擾虛擬機(jī)的負(fù)載類型也會對待預(yù)測虛擬機(jī)的性能有影響;多主機(jī)之間調(diào)整虛擬機(jī)部署的頻繁程度和持續(xù)的時(shí)間等。在實(shí)際應(yīng)用中,可以根據(jù)待預(yù)測的虛擬化環(huán)境的資源特點(diǎn)從以上特征中進(jìn)行虛擬機(jī)性能特征選取。S102:評測虛擬機(jī)性能:根據(jù)步驟S101中選取的各虛擬機(jī)性能特征的可能取值,配置得到一組不同虛擬機(jī)性能特征組合的虛擬機(jī),記虛擬機(jī)數(shù)量為N。也就是說,這N臺虛擬機(jī)的性能特征要包含步驟S101中選取的所有虛擬機(jī)性能特征,并且每個(gè)性能特征在這N臺虛擬機(jī)的取值在該性能特征的值域范圍內(nèi)均勻分布,最理想的情況是每個(gè)可能取值均覆蓋到,這樣可以使最終的預(yù)測結(jié)果準(zhǔn)確率更高。當(dāng)值域范圍連續(xù)或者較大時(shí),可以均勻選取一組離散的取值。在實(shí)際應(yīng)用中可以根據(jù)需要來確定。根據(jù)虛擬機(jī)上待運(yùn)行的應(yīng)用類型選取一組基準(zhǔn)測試程序,分別在每一臺虛擬機(jī)上運(yùn)行基準(zhǔn)測試程序,記錄預(yù)設(shè)的性能指標(biāo)Y的數(shù)值,得到由N臺虛擬機(jī)的特征-性能數(shù)據(jù)Dn=(Xn,Yn)構(gòu)成的數(shù)據(jù)樣本集D,其中Xn=(xn,1,xn,2,…,xn,F)表示第n臺虛擬機(jī)的虛擬機(jī)性能特征,xn,i表示第n臺虛擬機(jī)中第i個(gè)虛擬機(jī)性能特征xi的取值,Yn表示第n臺虛擬機(jī)Xn對應(yīng)的性能指標(biāo)值,i=1,2,…,F,n=1,2,…,N。在實(shí)際應(yīng)用中,需要根據(jù)虛擬機(jī)上待運(yùn)行的應(yīng)用類型選取基準(zhǔn)測試工具,如Parsec基準(zhǔn)測試工具,是一個(gè)多線程應(yīng)用程序組成的測試程序集,SPEC2006是一個(gè)CPU密集型基準(zhǔn)測試工具,包含了針對整型計(jì)算和浮點(diǎn)型計(jì)算的數(shù)十個(gè)基準(zhǔn)測試程序,Parsec和SPEC2006均以基準(zhǔn)測試的執(zhí)行時(shí)間來體現(xiàn)被測虛擬機(jī)的性能;Bonnie++以文件系統(tǒng)的按塊讀寫、按字符讀寫等的吞吐率和延遲體現(xiàn)硬盤I/O的性能。S103:構(gòu)建隨機(jī)森林回歸模型:隨機(jī)森林回歸算法是Breiman提出的基于決策樹分類器的融合算法,其基本思想是基于統(tǒng)計(jì)學(xué)理論、利用Bootstrap重抽樣方法從原始樣本中抽取多個(gè)樣本。Bootstrap過程是從實(shí)際觀測到的含有N個(gè)觀察單位的數(shù)據(jù)集中有放回地隨機(jī)抽取S個(gè)組成一個(gè)新樣本,該樣本稱之為Bootstrap樣本。對每個(gè)Bootstrap樣本構(gòu)建決策樹,將所有決策樹預(yù)測平均值作為最終預(yù)測結(jié)果。隨機(jī)森林回歸可以看成是由很多弱分類器集成的強(qiáng)預(yù)測器。隨機(jī)森林回歸算法近年來被廣泛應(yīng)用于多個(gè)領(lǐng)域,然而,將隨機(jī)森林回歸算法用于虛擬機(jī)性能預(yù)測方面的方法還未見報(bào)道。隨機(jī)森林算法能夠處理非線性關(guān)系、高維度的數(shù)據(jù),并且不需要做特征選擇,對數(shù)據(jù)集的適應(yīng)能力強(qiáng),既能處理連續(xù)型數(shù)據(jù)也能處理離散型數(shù)據(jù)。隨機(jī)森林回歸算法在訓(xùn)練過程中還可以得到變量的重要性排序,對特征作為切分特征的次數(shù)進(jìn)行統(tǒng)計(jì),用特征作為切分特征的頻度表明它的重要性程度,頻度越高說明該特征越重要。經(jīng)研究發(fā)現(xiàn),采用隨機(jī)森林回歸算法對虛擬機(jī)的性能數(shù)據(jù)進(jìn)行建模,便于提取出影響虛擬機(jī)性能的關(guān)鍵特征并進(jìn)一步精簡模型。在本發(fā)明中,用于預(yù)測虛擬機(jī)性能的隨機(jī)森林回歸模型是基于步驟S102獲取的數(shù)據(jù)樣本集來構(gòu)建的。圖2是本發(fā)明中構(gòu)建用于預(yù)測虛擬機(jī)性能的隨機(jī)森林回歸模型的流程圖。如圖2所示,構(gòu)建隨機(jī)森林回歸模型的具體步驟包括:S201:令決策樹序號t=1。S202:抽取單棵決策樹訓(xùn)練集:從步驟S102得到的數(shù)據(jù)樣本集D中,采用Bootstrap方法有放回地多次隨機(jī)采樣,抽取γ×N個(gè)數(shù)據(jù)樣本作為第t棵決策樹的訓(xùn)練集S(t),γ的取值范圍為0<γ≤1,可以根據(jù)實(shí)際需要來設(shè)置。S203:確定根節(jié)點(diǎn):令決策樹深度d=1,將S(t)作為根節(jié)點(diǎn)的樣本集合,根節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值為根節(jié)點(diǎn)樣本集合中所有樣本的性能指標(biāo)平均值,即根節(jié)點(diǎn)性能指標(biāo)值|S(t)|表示S(t)中樣本數(shù)量。S204:判斷是否第t棵決策樹的深度d=Td,Td表示決策樹深度最大值,如果是,本決策樹訓(xùn)練完畢,進(jìn)入步驟S208,否則進(jìn)入步驟S205。S205:節(jié)點(diǎn)切分:對第d層的每個(gè)節(jié)點(diǎn),依次按照以下方法進(jìn)行節(jié)點(diǎn)切分:記節(jié)點(diǎn)的樣本集合為S,如果樣本集合中的樣本數(shù)目小于預(yù)設(shè)閾值TS,則本節(jié)點(diǎn)作為葉子節(jié)點(diǎn),不再切分,否則從F維虛擬機(jī)性能特征中無放回地隨機(jī)選取f維特征構(gòu)成集合P,f的取值范圍為1≤f≤F,根據(jù)實(shí)際需要進(jìn)行設(shè)置。一般地,在回歸模型中,f的取值為F的1/3。對于虛擬機(jī)性能特征集合P中的每個(gè)特征xj,即xj∈P,分別選取K個(gè)切分點(diǎn)λj(k),k=1,2,…,K,K表示切分點(diǎn)數(shù)量,根據(jù)實(shí)際需要進(jìn)行設(shè)置,K個(gè)切分點(diǎn)一般在特征xj的取值范圍內(nèi)隨機(jī)選取。計(jì)算出節(jié)點(diǎn)樣本集合S以不同特征xj和切分點(diǎn)λj(k)進(jìn)行切分時(shí)的加權(quán)方差,篩選出最小加權(quán)方差,如果最小加權(quán)方差小于設(shè)定的最小切分閾值Tλ(通常取Tλ≤0.01),則本節(jié)點(diǎn)作為葉子節(jié)點(diǎn),不再切分,否則選擇最小加權(quán)方差對應(yīng)的特征和切分點(diǎn)作為本節(jié)點(diǎn)的切分特征和切分點(diǎn),將節(jié)點(diǎn)樣本集合S中切分特征的取值小于等于的樣本劃分至左子節(jié)點(diǎn),大于的樣本劃分至右子節(jié)點(diǎn),子節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值為子節(jié)點(diǎn)樣本集合中所有樣本的性能指標(biāo)平均值。節(jié)點(diǎn)樣本集合S中以特征xj和切分點(diǎn)λj(k)進(jìn)行切分時(shí)的加權(quán)方差計(jì)算的具體過程如下:記節(jié)點(diǎn)樣本集合S以特征xj和切分點(diǎn)λj(k)進(jìn)行切分時(shí)得到的兩個(gè)樣本集合為R1(j,k)和R2(j,k),R1(j,k)表示節(jié)點(diǎn)樣本集合S中切分特征xj的取值小于等于λj(k)的樣本集合,R2(j,k)表示節(jié)點(diǎn)樣本集合S中切分特征xj的取值大于λj(k)的樣本集合,其表達(dá)式為:R1(j,k)={(Xn,Yn)|xn,j≤λj(k)},R2(j,k)={(Xn,Yn)|xn,j>λj(k)}記R1(j,k)和R2(j,k)中樣本數(shù)量分別為Q1和Q2,分別計(jì)算R1(j,k)和R2(j,k)中所有樣本的性能指標(biāo)平均值c1和c2,其計(jì)算公式為:那么節(jié)點(diǎn)樣本集合S中以特征xj和切分點(diǎn)λj(k)進(jìn)行切分時(shí)的加權(quán)方差M(j,k)的計(jì)算公式為:由于本發(fā)明中每個(gè)特征xj會采用K個(gè)切分點(diǎn)進(jìn)行切分,因此對于每個(gè)特征可以篩選得到一個(gè)最小加權(quán)方差,然后對于虛擬機(jī)性能特征集合P中的每個(gè)特征xj,可以篩選得到所有特征中的最小加權(quán)方差,即min{M(j,k)},采用該最小加權(quán)方差對應(yīng)的特征和切分點(diǎn)用于對本節(jié)點(diǎn)進(jìn)行切分。劃分得到的左、右子節(jié)點(diǎn)的性能指標(biāo)值表示節(jié)點(diǎn)樣本集合S中切分特征的取值小于等于的樣本集合,表示節(jié)點(diǎn)樣本集合S中切分特征的取值大于的樣本集合。S206:判斷是否第d層的每個(gè)節(jié)點(diǎn)均為葉子節(jié)點(diǎn),如果是,本決策樹訓(xùn)練完畢,進(jìn)入步驟S208,否則進(jìn)入步驟S207。S207:令d=d+1,返回步驟S204。S208:判斷是否t<Tt,Tt表示隨機(jī)森林回歸模型中決策樹的數(shù)量,根據(jù)實(shí)際需要確定,如果是,進(jìn)入步驟S209,否則隨機(jī)森林回歸模型構(gòu)建完畢。S209:令t=t+1,返回步驟S202。S104:虛擬機(jī)性能預(yù)測:根據(jù)步驟S103得到的隨機(jī)森林回歸模型,把各特征變量取值代入回歸模型就可以預(yù)測得到該配置下的虛擬機(jī)性能。對于待預(yù)測性能的虛擬機(jī)X′=(x′1,x′2,…,x′F),分別采用隨機(jī)森林回歸模型中的Tt個(gè)決策樹預(yù)測得到Tt個(gè)性能預(yù)測值,平均后得到該虛擬機(jī)的性能預(yù)測值,每個(gè)決策樹預(yù)測的方法為:將虛擬機(jī)X′性能特征矢量(x′1,x′2,…,x′F)輸入決策樹的根節(jié)點(diǎn),根據(jù)該節(jié)點(diǎn)的切分特征和切分點(diǎn)將虛擬機(jī)X′劃分入相應(yīng)子節(jié)點(diǎn),即虛擬機(jī)X′性能特征中切分特征取值小于等于切分點(diǎn)即劃分入左子樹,大于切分點(diǎn)即劃分入右子樹,以此類推直到到達(dá)某個(gè)葉子節(jié)點(diǎn),以該葉子節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值作為采用該決策樹得到的性能預(yù)測值。實(shí)施例為了更好地說明本發(fā)明的技術(shù)效果,采用一個(gè)具體的實(shí)施例對本發(fā)明進(jìn)行實(shí)驗(yàn)驗(yàn)證。某虛擬化環(huán)境中,有如下配置的2臺主機(jī),其上均運(yùn)行Xen:主機(jī)1:IntelCorei5-6600,DDR4213316GB內(nèi)存,西部數(shù)據(jù)SATA3500GB硬盤;主機(jī)2:AMDA10-7850K,DDR3186616GB內(nèi)存,金泰克SSD100GB硬盤。本實(shí)施例中可能影響虛擬機(jī)性能的特征包括:底層硬件特征:1.CPU微架構(gòu):取值為Skylake、Steamroller;2.主頻:取值為3.3GHz、3.6GHz;3.內(nèi)存主頻:取值為DDR42133MHz、DDR31866MHz;4.硬盤類型:取值為SATA3、SSD;虛擬機(jī)軟件特征:1.虛擬機(jī)調(diào)度算法:默認(rèn)的調(diào)度算法為credit,可變調(diào)度算法為credit2、sedf,依次可取值為1、2、3;虛擬機(jī)配置特征:1.虛擬VCPU數(shù)量:取值為1、2、……;2.虛擬機(jī)內(nèi)存容量:在主機(jī)可用內(nèi)存范圍之內(nèi);3.VCPU是否綁定到特定的CPU核心:若綁定取值為1,沒有綁定取值為0;虛擬機(jī)運(yùn)行時(shí)環(huán)境特征:1、同時(shí)運(yùn)行多個(gè)虛擬機(jī):若同時(shí)運(yùn)行多個(gè)虛擬機(jī)取值為1,單獨(dú)運(yùn)行一個(gè)虛擬機(jī)無其他虛擬機(jī)干擾取值為0;2、其他虛擬機(jī)的負(fù)載應(yīng)用類型:如計(jì)算密集型應(yīng)用取值為1,數(shù)據(jù)密集型應(yīng)用取值為2,I/O密集型應(yīng)用取值為3。在每臺主機(jī)上分別配置一組虛擬機(jī)。為了簡化描述,本實(shí)施例對于以上虛擬機(jī)性能特征進(jìn)行了篩選,并且每個(gè)虛擬機(jī)性能特征僅使用較小的值域,所選用的特征包括:特征變量x1表示VCPU的個(gè)數(shù),取值為1、2、3、4;特征變量x2表示內(nèi)存的大小,取值為450~700MB;特征變量x3表示CPU的主頻,主頻3.3GHZ取值為3.3,主頻3.6GHZ取值為3.6;特征變量x4表示虛擬機(jī)運(yùn)行環(huán)境,多虛擬機(jī)同時(shí)運(yùn)行取值為1,單個(gè)虛擬機(jī)運(yùn)行取值為0;特征變量x5表示VCPU和CPU核心綁定的情況,VCPU綁定到固定的CPU核心取值為1,未綁定取值為0。建立隨機(jī)森林回歸模型的訓(xùn)練數(shù)據(jù)集的虛擬機(jī)配置通過以下過程得到:在每個(gè)特征變量的值域范圍內(nèi)對該特征變量隨機(jī)選取一個(gè)值,組合在5個(gè)特征變量上的取值作為一個(gè)虛擬機(jī)配置,多次取值可以得到一組虛擬機(jī)配置。其中,內(nèi)存在其值域范圍內(nèi)等間距的取幾個(gè)點(diǎn),其他特征盡可能取到值域范圍中的所有取值。表1是本實(shí)施例中用于訓(xùn)練數(shù)據(jù)集的各臺虛擬機(jī)的虛擬機(jī)性能特征取值情況。配置編號x1x2x3x4x5T115003.310T216003.310T325003.311T427003.311T515503.600T634503.600T746003.600T825003.601T916503.311T1027003.310T1134503.311T1245003.301T1335503.601T1426003.610T1516503.600T1647003.310表1以前兩臺虛擬機(jī)為例,其虛擬機(jī)性能特征取值情況如下:虛擬機(jī)T1:1個(gè)VCPU,500MB內(nèi)存,CPU主頻為3.3GHZ,放置該虛擬機(jī)的物理主機(jī)上有其他虛擬機(jī)同時(shí)運(yùn)行,VCPU未綁定;虛擬機(jī)T2:1個(gè)VCPU,600MB內(nèi)存,CPU主頻為3.3GHZ,放置該虛擬機(jī)的物理主機(jī)上有其他虛擬機(jī)同時(shí)運(yùn)行,VCPU未綁定。依次在這一組虛擬機(jī)上運(yùn)行衡量計(jì)算性能的基準(zhǔn)測試程序,運(yùn)行SPEC2006的一個(gè)基準(zhǔn)測試程序,在本實(shí)施例中選取SPEC2006的429.mcf測試程序,以該測試程序的運(yùn)行時(shí)間作為衡量計(jì)算性能的指標(biāo),每臺虛擬機(jī)測試一次,得到該組虛擬機(jī)的性能測試數(shù)據(jù)。表2是本實(shí)施例中數(shù)據(jù)樣本集中部分?jǐn)?shù)據(jù)列表。x1x2x3x4x5YnT115003.3101T216003.3101.5T325003.3112T427003.3112T515503.6001T634503.6003T746003.6001T825003.6011表2接下來需要構(gòu)建虛擬機(jī)性能數(shù)據(jù)的本實(shí)施例中隨機(jī)森林回歸模型。本實(shí)施例中設(shè)置隨機(jī)森林回歸模型中決策樹的數(shù)量為10,決策樹深度為3,切分點(diǎn)數(shù)量為1,單棵決策樹訓(xùn)練集中的樣本數(shù)量為5。本實(shí)施例中虛擬機(jī)性能特征數(shù)量為5,那么令生成決策樹時(shí)虛擬機(jī)性能特征集合P中特征數(shù)量表示上取整。從數(shù)據(jù)樣本集中有放回地多次隨機(jī)采樣,抽取樣本數(shù)目大小為5的訓(xùn)練集。對于第一棵決策樹,先抽取樣本T1,抽取記錄完成后放回,接著抽到的樣本為T5,T4,T8,T3,得到第一棵決策樹的訓(xùn)練集S(1)={T1,T5,T4,T8,T3}。表3是訓(xùn)練集S(1)樣本列表。x1x2x3x4x5YnT115003.3101T515503.3001T427003.3112T825003.6011T325003.3112表3令第1棵決策樹的根節(jié)點(diǎn)為S(1),從5維虛擬機(jī)性能特征中無放回地隨機(jī)抽取2維特征,假設(shè)為特征x1和x2,計(jì)算這兩維特征對應(yīng)的加權(quán)方差。當(dāng)選擇特征x1作為切分特征,隨機(jī)選取1個(gè)切分點(diǎn)為1,將訓(xùn)練集S(1)中的樣本分為在特征x1上的值小于等于1和大于1兩個(gè)區(qū)域,計(jì)算特征x1取值小于等于1的樣本的性能指標(biāo)值Yn的平均值為(2×1)/2=1,方差為((1-1)2+(1-1)2)/2=0,計(jì)算特征x1取值大于1的樣本的性能指標(biāo)值Yn的平均值(1×1+2×2)/3=5/3,方差為((2-5/3)2+(2-5/3)2+(1-5/3)2)/3=2/9。那么將以特征x1和切分點(diǎn)1切分進(jìn)行切分時(shí)的加權(quán)方差(2/5)×0+(3/5)×(2/9)=0.133。同理,當(dāng)選擇特征x2作為切分特征,隨機(jī)選取1個(gè)切分點(diǎn)為550,計(jì)算得到加權(quán)方差(4/5)×(3/16)+(1/5)×0=0.15。比較特征x1和x2的加權(quán)方差,特征x1的加權(quán)方差最小,所以選取特征x1作為切分特征,切分點(diǎn)為1,之后將根節(jié)點(diǎn)樣本集合中第1維特征小于等于1的樣本劃分到左子節(jié)點(diǎn),大于1的樣本被劃分到右子節(jié)點(diǎn),再對左、右子節(jié)點(diǎn)繼續(xù)進(jìn)行切分,直到所有節(jié)點(diǎn)都訓(xùn)練過或者被標(biāo)記為葉子節(jié)點(diǎn)。圖3是本實(shí)施例中第1棵決策樹示意圖。如圖3所示,本實(shí)施例中第1棵決策樹有3層,存在3個(gè)葉子節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)上所標(biāo)注的值即為該節(jié)點(diǎn)對應(yīng)的性能指標(biāo)值。按照以上方法再生成9棵決策樹,從而完成隨機(jī)森林回歸模型的構(gòu)建。在本實(shí)施例中,給定兩個(gè)待預(yù)測性能的虛擬機(jī)配置特征:第一個(gè)虛擬機(jī)配置為VCPU個(gè)數(shù)為2,內(nèi)存為600MB,主頻為3.3GHZ,和該待預(yù)測性能虛擬機(jī)同時(shí)運(yùn)行的還有一個(gè)虛擬機(jī),即同時(shí)運(yùn)行兩個(gè)虛擬機(jī)待預(yù)測性能虛擬機(jī)的VCPU未綁定;第二個(gè)虛擬機(jī)配置為VCPU個(gè)數(shù)為1,內(nèi)存為700MB,主頻為3.6GHZ,主機(jī)上只有待預(yù)測性能的虛擬機(jī),無其他虛擬機(jī)同時(shí)運(yùn)行,VCPU綁定??梢缘玫降谝粋€(gè)虛擬機(jī)的性能特征矢量X′1=(2,600,3.3,1,0),第二個(gè)虛擬機(jī)的性能特征矢量為X′2=(1,700,3.6,0,1)。將待預(yù)測性能的虛擬機(jī)配置各特征上的特征值代入隨機(jī)森林回歸模型得到虛擬機(jī)性能預(yù)測值,虛擬機(jī)性能預(yù)測值由隨機(jī)森林回歸算法生成的10棵決策樹預(yù)測值取平均值得到。對于第一個(gè)虛擬機(jī),以第1棵決策樹的預(yù)測過程為例,將特征矢量代入決策樹,決策樹在根節(jié)點(diǎn)處的切分特征是x1,切分點(diǎn)為1,性能特征矢量X′1在特征x1處的取值為2,大于切分點(diǎn)的取值,進(jìn)入右子樹,右子樹不是葉子節(jié)點(diǎn),繼續(xù)決策樹判斷,當(dāng)前節(jié)點(diǎn)切分特征為x3,性能特征矢量X′1在特征x3上的取值為3.3,小于等于切分點(diǎn)的取值3.3,進(jìn)入左子樹,左子樹是葉子節(jié)點(diǎn),以該葉子節(jié)點(diǎn)的輸出值為預(yù)測值,即同理可得到第2棵決策樹的預(yù)測值為1.4,另外有3棵決策樹預(yù)測值為1.2,2棵決策樹預(yù)測值為1.5,3棵決策樹預(yù)測值為1.1,對所有的10棵決策樹得到的虛擬機(jī)性能預(yù)測值取平均值即為該配置下的虛擬機(jī)性能預(yù)測值(2+1.4+3×1.2+2×1.5+3×1.1)/10=1.33,即第一臺虛擬機(jī)的性能指標(biāo)值為1.33,同理可得第二臺虛擬機(jī)的性能指標(biāo)值為1.92。表4是在兩臺虛擬機(jī)上實(shí)際運(yùn)行基準(zhǔn)測試程序得到的性能指標(biāo)實(shí)測值與采用本發(fā)明得到的性能指標(biāo)預(yù)測值。x1x2x3x4x5實(shí)測值預(yù)測值誤差X′126003.3101.251.336.4%X′217003.6011.881.922.1%表4如表4所示,采用本發(fā)明得到的性能指標(biāo)預(yù)測值與實(shí)測值誤差很小,在可接受范圍內(nèi),可見本發(fā)明可以實(shí)現(xiàn)較為準(zhǔn)確的虛擬機(jī)性能預(yù)測。盡管上面對本發(fā)明說明性的具體實(shí)施方式進(jìn)行了描述,以便于本
      技術(shù)領(lǐng)域
      的技術(shù)人員理解本發(fā)明,但應(yīng)該清楚,本發(fā)明不限于具體實(shí)施方式的范圍,對本
      技術(shù)領(lǐng)域
      的普通技術(shù)人員來講,只要各種變化在所附的權(quán)利要求限定和確定的本發(fā)明的精神和范圍內(nèi),這些變化是顯而易見的,一切利用本發(fā)明構(gòu)思的發(fā)明創(chuàng)造均在保護(hù)之列。當(dāng)前第1頁1 2 3 
      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
      1