劉偉峰
(陜西工商職業(yè)學院,陜西 西安 710119 )
大規(guī)模并行計算機系統(tǒng)簡稱MPP系統(tǒng),屬于巨型計算機系統(tǒng),主要由大量處理器構(gòu)成,通過采用大量的處理器與服務器來提高計算機系統(tǒng)運行速度和質(zhì)量,該系統(tǒng)最早是在20世紀60年代研發(fā)的,最初大規(guī)模并行計算機系統(tǒng)主要應用在氣象領(lǐng)域、人類學領(lǐng)域、醫(yī)學領(lǐng)域以及軍事領(lǐng)域。大規(guī)模并行計算機系統(tǒng)主要利用有效的并行算法實現(xiàn)對計算機數(shù)據(jù)的運算,其具有規(guī)模大、運行速度快、傳輸速度快以及響應時間短等特點,目前已經(jīng)被廣泛應用到多個領(lǐng)域。
雖然大規(guī)模并行計算機系統(tǒng)的應用為計算機用戶帶來了更多的便利,并且也取得了良好的應用效果,但是由于大規(guī)模并行計算機系統(tǒng)硬件結(jié)構(gòu)比較復雜,所涉及的硬件數(shù)量比較多,長時間處于高速運轉(zhuǎn)狀態(tài)下,大規(guī)模并行計算機系統(tǒng)硬件設(shè)備非常容易出現(xiàn)故障,當其中任意一個硬件設(shè)備出現(xiàn)故障,就會影響到大規(guī)模并行計算機系統(tǒng)的操作和使用,甚至出現(xiàn)系統(tǒng)癱瘓。
為了解決該問題,相關(guān)研究人員提出了大規(guī)模并行計算機系統(tǒng)硬件故障檢測方法,現(xiàn)有的檢測方法主要為基于人工智能的系統(tǒng)硬件故障檢測方法,該方法在實際應用中運算量比較大,并且所使用的故障檢測算法不夠合理,對不同類型的系統(tǒng)硬件故障檢測準確率較低,已經(jīng)無法滿足大規(guī)模并行計算機系統(tǒng)硬件故障檢測需求,為此本文提出基于機器學習的大規(guī)模并行計算機系統(tǒng)硬件故障檢測方法。
首先對大規(guī)模并行計算機系統(tǒng)硬件運行狀態(tài)數(shù)據(jù)進行采集,此次采用了NSFGS/2SF6A型號無線傳感器對系統(tǒng)硬件運行數(shù)據(jù)進行采集:將NSFGS/2SF6A無線傳感器安裝在系統(tǒng)硬件環(huán)境中,大規(guī)模并行計算機系統(tǒng)的硬件主要為服務器和處理器,因此對每一類硬件設(shè)備安裝一個相應的無線傳感器,通過并聯(lián)將NSFGS/2SF6A無線傳感器與系統(tǒng)硬件設(shè)備電源電路連接在一起,根據(jù)實際情況對NSFGS/2SF6A無線傳感器的掃描周期、頻率、讀取模式等技術(shù)參數(shù)進行設(shè)置,通過I/S通信協(xié)議將大規(guī)模并行計算機系統(tǒng)硬件運行數(shù)據(jù)上傳到NSFGS/2SF6A無線傳感器數(shù)據(jù)庫中,以此實現(xiàn)系統(tǒng)硬件數(shù)據(jù)采集。
在實際中,大規(guī)模并行計算機系統(tǒng)硬件故障表現(xiàn)為硬件溫度升高、硬件電源短路或者斷路、硬件設(shè)備運轉(zhuǎn)速度下降等,因此選取大規(guī)模并行計算機系統(tǒng)硬件溫度、運行速度、電源電流作為故障特征量樣本,對采集到的數(shù)據(jù)中3種特征量不對稱數(shù)據(jù)進行處理和分析,其過程如下。
1)將采集到的硬件運行數(shù)據(jù)中的無效數(shù)據(jù)、殘缺數(shù)據(jù)以及重復數(shù)據(jù)進行剔除,并按照溫度、電流、運行參數(shù)等類別將剩余數(shù)據(jù)進行分類處理,從中提取到除時間類以外的3個特征量數(shù)據(jù),將3個特征量的數(shù)據(jù)區(qū)間進行歸一化處理,最終為-1-1區(qū)間[1]。
2)劃分系統(tǒng)硬件溫度變化區(qū)間、運行速度變化區(qū)間以及電源電流變化區(qū)間,區(qū)間范圍為大規(guī)模并行計算機系統(tǒng)硬件設(shè)備初始溫度、運行速度、電源電流到最大運行溫度、速度以及電源電流量,并且根據(jù)實際情況設(shè)定溫度閾值、速度閾值以及電源電流閾值[2]。
3)按照上述區(qū)間設(shè)定將符合要求的數(shù)據(jù)進行提取,并且將特征量數(shù)據(jù)樣本按照時間進行排序,以此完成故障樣本提取。
在上述基礎(chǔ)上,利用機器學習技術(shù)對提取到的系統(tǒng)硬件故障樣本進行綜合分析,對大規(guī)模并行計算機系統(tǒng)硬件故障進行診斷識別。由于大規(guī)模并行計算機系統(tǒng)硬件故障數(shù)據(jù)在初始空間中是非線性不可分的,因此首先利用機器學習技術(shù)將故障數(shù)據(jù)進行空間映射,將輸入到機器學習模型中的數(shù)據(jù)映射到高維特征向量空間中,將系統(tǒng)硬件無故障時的運行數(shù)據(jù)一并輸入到機器學習模型中,進行學習和訓練,提取到大規(guī)模并行計算機系統(tǒng)硬件最大溫度誤差、運行速度誤差以及電源電流誤差,將3種誤差進行數(shù)字量處理,轉(zhuǎn)化為大規(guī)模并行計算機系統(tǒng)硬件最大允許誤差,該過程用公式表示如下:
(1)
公式(1)中,Wn表示大規(guī)模并行計算機系統(tǒng)中第n個硬件設(shè)備的最大允許誤差;n表示大規(guī)模并行計算機系統(tǒng)中硬件設(shè)備數(shù)量;w1表示系統(tǒng)硬件設(shè)備最高運行溫度;w2表示系統(tǒng)硬件設(shè)備常規(guī)溫度;r1表示系統(tǒng)硬件設(shè)備最高運行速度;r2表示系統(tǒng)硬件設(shè)備常規(guī)運行速度;q1表示系統(tǒng)硬件設(shè)備最大電源電流;q2表示系統(tǒng)硬件設(shè)備常規(guī)電源電流[3]。
利用上述公式計算出硬件設(shè)備的最大允許誤差,然后將待分析的系統(tǒng)硬件故障特征量樣本輸入到機器學習模型中,計算到當前大規(guī)模并行計算機系統(tǒng)硬件的溫度誤差、運行速度誤差以及電源電流誤差[4]。將其與公式(1)計算結(jié)果進行對比,判斷系統(tǒng)硬件是否出現(xiàn)故障,其公式如下:
(2)
公式(2)中,w表示提取到的溫度特征量數(shù)據(jù)中最高溫度值;w*表示提取到的溫度特征量數(shù)據(jù)平均值;r表示提取到的運行速度特征量數(shù)據(jù)中最大運行速度值;r*表示提取到的運行速度特征量數(shù)據(jù)平均值;q表示提取到的電流特征量數(shù)據(jù)中最大電流值;q*表示提取到的電流特征量數(shù)據(jù)平均值[5]。
利用上述公式對提取到的故障特征樣本進行分析,如果上述公式成立,則說明大規(guī)模并行計算機系統(tǒng)硬件設(shè)備存在故障;如果上述公式不成立,則說明大規(guī)模并行計算機系統(tǒng)硬件設(shè)備不存在故障,以此實現(xiàn)基于機器學習的大規(guī)模并行計算機系統(tǒng)硬件故障檢測。
以某大規(guī)模并行計算機系統(tǒng)為實驗對象,該計算機系統(tǒng)包括50個硬件設(shè)備,其中有35個服務器和25個處理器,該大規(guī)模并行計算機系統(tǒng)使用時間比較長,部分硬件已經(jīng)出現(xiàn)老化現(xiàn)象,利用此次設(shè)計方法與傳統(tǒng)方法對該大規(guī)模并行計算機系統(tǒng)硬件設(shè)備故障進行檢測。
實驗共在該系統(tǒng)硬件環(huán)境中安裝了4個無線傳感器,其中2個無線傳感器負責系統(tǒng)處理器運行數(shù)據(jù)采集,另外2個無線傳感器負責系統(tǒng)服務器硬件運行數(shù)據(jù)采集,無線傳感器的掃描周期設(shè)定為2.36 ns,掃描頻率設(shè)定為3.66 Hz,共采集到500份數(shù)據(jù)樣本,按照上文,對采集到的系統(tǒng)硬件運行數(shù)據(jù)樣本進行處理和分析,提取到系統(tǒng)硬件故障特征量樣本區(qū)間,如表1所示。
表1 大規(guī)模并行計算機系統(tǒng)硬件故障檢測情況
實驗共對大規(guī)模并行計算機系統(tǒng)硬件檢測3次,檢測的硬件設(shè)備數(shù)量為150個,隨機抽取6個系統(tǒng)硬件設(shè)備檢測結(jié)果作為實驗數(shù)據(jù),記錄該6個系統(tǒng)硬件設(shè)備在3次檢測中的故障誤差數(shù)量,計算大規(guī)模并行計算機系統(tǒng)故障檢測準確率,利用電子表格對2種方法故障檢測準確率進行記錄,如表2所示。
表2 兩種方法不同故障檢測準確率對比
從表2數(shù)據(jù)可以看出,此次設(shè)計方法對于大規(guī)模并行計算機系統(tǒng)硬件故障檢測的準確率比較高,最高為100%,說明檢測結(jié)果與大規(guī)模并行計算機系統(tǒng)硬件故障完全一致;而傳統(tǒng)方法對于大規(guī)模并行計算機系統(tǒng)硬件故障檢測的準確率最大僅為78.69%,遠遠小于設(shè)計方法,這是因為此次設(shè)計方法采用了機器學習技術(shù),通過機器學習技術(shù)對系統(tǒng)硬件故障特征進行迭代計算分析,可以將誤差降到最低。實驗證明:此次設(shè)計方法在檢測精度方面優(yōu)于傳統(tǒng)方法,具有較高的有效性和可靠性。
此次結(jié)合大規(guī)模并行計算機系統(tǒng)硬件結(jié)構(gòu)特征,以及傳統(tǒng)故障檢測方法存在的弊端,采用機器學習計算設(shè)計了一種新的故障檢測方法,用于大規(guī)模并行計算機系統(tǒng)硬件故障檢測,有效提高了大規(guī)模并行計算機系統(tǒng)硬件故障檢測精度,能夠為大規(guī)模并行計算機系統(tǒng)硬件故障檢修以及運維提供準確的數(shù)據(jù)依據(jù),為大規(guī)模并行計算機系統(tǒng)穩(wěn)定運行提供了技術(shù)保障。