• 您現在的位置是:首頁 >動態 > 2020-12-09 09:00:09 來源:

    計算機科學家設計了一種工具來識別由軟件更新引起的錯誤源

    導讀 我們都共享了挫敗感-旨在使我們的應用程序無意間運行得更快的軟件更新最終卻恰恰相反。這些錯誤在計算機科學領域被稱為性能下降,由于定位

    我們都共享了挫敗感-旨在使我們的應用程序無意間運行得更快的軟件更新最終卻恰恰相反。這些錯誤在計算機科學領域被稱為性能下降,由于定位軟件錯誤通常需要大量的人工干預,因此修復起來非常耗時。

    為了克服這一障礙,德克薩斯農工大學的研究人員與英特爾實驗室的計算機科學家合作,現已開發出一種完全自動化的方法來識別由軟件更新引起的錯誤源。他們的算法基于一種稱為深度學習的特殊形式的機器學習,不僅是交鑰匙的,而且是快捷的,可以在幾小時而不是幾天內發現性能錯誤。

    計算機系助理教授阿卜杜拉·穆哈希德(Abdullah Muzahid)博士說:“當錯誤逐漸蔓延并導致速度下降時,更新軟件有時可能會打開您的大門。對于使用不斷發展的大型軟件系統的公司來說,這個問題甚至更加嚴重。”科學與工程。“我們設計了一種方便的工具來診斷性能下降,該工具可與所有軟件和編程語言兼容,從而極大地擴展了其用途。”

    研究人員在12月的神經信息處理系統會議記錄中,在第32版“神經信息處理系統進展”中描述了他們的發現。

    為了查明軟件中的錯誤源,調試器經常檢查中央處理單元內性能計數器的狀態。這些計數器是代碼行,例如,監視程序如何在內存中的計算機硬件上執行程序。因此,在軟件運行時,計數器會跟蹤其訪問某些內存位置的次數,其停留時間和退出時間等。因此,當軟件的行為出現問題時,計數器將再次用于診斷。

    Muzahid說:“性能計數器給出了程序執行狀況的概念。” “因此,如果某些程序未按預期運行,則這些計數器通常會顯示異常行為的跡象。”

    但是,較新的臺式機和服務器具有數百個性能計數器,因此幾乎不可能手動跟蹤其所有狀態,然后查找表示性能錯誤的異常模式。這就是Muzahid機器學習的用武之地。

    通過使用深度學習,研究人員能夠通過減小數據大小來同時監視來自大量計數器的數據,這類似于通過更改其格式將高分辨率圖像壓縮到其原始大小的一小部分。然后,在較低維度的數據中,他們的算法可以查找偏離正常的模式。

    當他們的算法準備就緒時,研究人員測試了它是否可以在公司使用的市售數據管理軟件中找到并診斷性能錯誤,以跟蹤其數字和數字。首先,他們通過運行較舊的無故障版本的數據管理軟件來訓練算法,以識別正常的計數器數據。接下來,他們使用性能回歸在軟件的更新版本上運行算法。他們發現自己的算法在數小時內找到并診斷了該錯誤。Muzahid說,如果手動進行,這種類型的分析可能會花費大量時間。

    除了診斷軟件中的性能退化之外,Muzahid還指出,他們的深度學習算法在其他研究領域也有潛在用途,例如開發自動駕駛所需的技術。

    穆扎希德說:“基本思想再次是相同的,那就是能夠檢測到異常模式。” “自動駕駛汽車必須能夠檢測出是汽車還是人在前面,然后采取相應的行動。因此,這又是異常檢測的一種形式,而且好消息是,我們的算法已經被設計為可以這樣做。 。”

  • 成人app