新四季網

內存帶寬的測試方法和裝置的製作方法

2023-06-11 10:43:16

專利名稱:內存帶寬的測試方法和裝置的製作方法
技術領域:
本發明涉及計算機領域,並且特別地,涉及一種內存帶寬的測試方法和裝置。
背景技術:
目前比較通用的內存帶寬測試軟體大多基於Windows作業系統,其特點是採用圖形化界面,測試方便,並且可以測試內存帶寬和延遲等。但是,基於Linux作業系統的內存帶寬測試,尚無統一的標準軟體,大都是採用開源的源碼進行編譯和移植,以實現內存帶寬測試的目的,其公開性,兼容性,可維護性等都受到制約。目前,業界主要採用內存壓力測試(RAM Stress Test)的方式對內存進行全面的測試。其優點是測試比較全面、可靠,但缺點是耗時太長,而且需要對內存建立獨立的測試環境,不適宜於大批量的生產測試。針對相關技術中內存測試效率較低的問題,目前尚未提出有效的解決方案。

發明內容
針對相關技術中內存測試效率較低的問題,本發明提出一種內存帶寬的測試方法和裝置,能夠提高內存測試的效率。本發明的技術方案是這樣實現的根據本發明的一個方面,提供了一種內存帶寬的測試方法。該方法包括檢測內存的配置信息,確定內存的空間,並對用於進行內存帶寬測試的源碼進行編譯,得到可執行文件;並行執行可執行文件,以並行的方式對內存的空間進行帶寬測試。該方法可進一步包括預先申請內存的最大空間作為高速緩衝存儲器;並且,對內存的空間進行帶寬測試是指對申請為高速緩衝存儲器的空間進行帶寬測試。此外,在檢測內存的配置信息之前,該方法可進一步包括使用openmpi源碼構建編譯環境。此外,可選地,上述源碼為Mream源碼。其中,對源碼進行編譯包括利用mpicc和Mpif90編譯Mream源碼。此外,以並行的方式對內存的空間進行帶寬測試包括計算機的多個處理器並行執行可執行文件,其中,每個處理器對其需要測試的內存空間進行帶寬測試。並且,每個處理器對其需要測試的內存空間進行帶寬測試包括將測試數據寫入該處理器需要測試的內存空間中;將寫入的測試數據讀出,並與寫入前的測試數據進行比較。此外,在測試完成後,每個處理器清空對應的內存空間。此外,多個處理器通過mpirim命令來執行可執行文件。根據本發明的另一方面,提供了一種內存帶寬的測試裝置。該裝置包括檢測模塊,用於檢測內存的配置信息,確定內存的空間;編譯模塊,用於對源碼進行編譯,得到可執行文件,其中,源碼用於進行內存帶寬測試;執行模塊,用於以並行執行可執行文件,以並行的方式對內存的空間進行帶寬測試。本發明通過檢測內存的配置信息、編譯測試源碼,並且並行執行文件來進行內存測試,從而能夠以並行方式完成測試,提高測試的效率。


圖1是根據本發明實施例的內存帶寬的測試方法的流程圖;圖2是根據本發明實施例的內存帶寬的測試方案中所應用的文件目錄結構示意圖;圖3是根據本發明實施例的內存帶寬的測試方法的具體處理實例的流程圖;圖4是根據本發明實施例的內存帶寬的測試裝置的框圖。
具體實施例方式根據本發明的實施例,提供了一種內存帶寬的測試方法。如圖1所示,根據本發明實施例的內存帶寬的測試方法包括步驟S101,檢測內存的配置信息,確定內存的空間,並對用於進行內存帶寬測試的源碼進行編譯,得到可執行文件;步驟S103,並行執行可執行文件,以並行的方式對內存的空間進行帶寬測試。此外,該方法可以進一步包括預先申請內存的最大空間作為高速緩衝存儲器; 並且,對內存的空間進行帶寬測試是指對申請為高速緩衝存儲器的空間進行帶寬測試。這樣,就能夠使得整個內存的最大空間被分配給作業系統,由作業系統中的程序或進程完成內存測試。此外,在檢測內存的配置信息之前,可以使用openmpi源碼構建編譯環境。此外,上述源碼可以為Mream源碼。並且,在對源碼進行編譯時,可以利用mpicc和Mpif90編譯Mream源碼。在以並行的方式對內存的空間進行帶寬測試時,計算機的多個處理器並行執行可執行文件,其中,每個處理器對其需要測試的內存空間進行帶寬測試。具體地,每個處理器對其需要測試的內存空間進行帶寬測試的具體過程如下將測試數據寫入該處理器需要測試的內存空間中;將寫入的測試數據讀出,並與寫入前的測試數據進行比較。在測試完成後,每個處理器清空對應的內存空間。可選地,為了保證多個處理器能夠互不衝突地對各自的內存空間進行測試,多個處理器可通過mpirim命令來執行可執行文件。在實際應用中,進行內存測試的方式可以包括以下兩種方式(方式一)測試內存在帶CACHE大面積寫入後讀取的穩定性,具體步驟如下Al、用帶Cache的方式申請最大的內存空間;Bi、向申請到的所有內存空間一次性寫入測試數據;Cl、逐個讀出各地址內的數據,與寫入的相應測試數據進行比較,如果不一致則中止測試並報告故障信息;D1、重複步驟Bl-Cl的操作直至達到設定的重複測試次數;
E1、測試完後釋放所申請的內存空間。(方式二)測試內存在帶CACHE隨機地址大跨度跳躍讀寫時的穩定性,具體步驟如下A2、用帶Cache的方式申請最大的內存空間;B2、定義一個指針數組;C2、依次給指針數組中的各指針賦值,使得各指針隨機指向步驟A2中申請到的地址空間內的任意地址值,直至數組中的所有指針地址均賦值完畢;D2、依次向各指針所指向的內存地址中寫入隨機的測試數據;E2、依次讀出各指針所指向的內存地址中的實際數據,與寫入的測試數據進行比較,如果不一致則中止測試並報告故障信息;F2,重複步驟C2-+E2的操作直至達到設定的重複測試次數;G2、測試完後釋放所申請的內存空間。優選地,本發明的方案形式上可以採用shell腳本實現,技術上採用openmpi工具構建最優的並行環境,對stream源碼編譯,生成可執行文件,達到Linux帶寬測試目的。其中,shell是用於為作業系統的用戶提供訪問內核的接口的軟體代碼。Openmpi是用於高性能計算領域的消息傳遞庫工程,用於構建最優的並行編譯環境。為了實現本發明的方案,在Linux系統下對伺服器內存帶寬進行自動加壓測試並輸出結果,需要解決伺服器Linux作業系統下的並行編譯環境設置、Stream源碼的編譯、 rshell環境的配置,以及可執行代碼的生成和自動執行,並將測試結果輸出到終端和日誌文件中。在藉助軟體程序實現本發明的方案時,可以採用Linux下Shell腳本實現,並行編譯器採用openmpi,使用gfortum和gcc完成對stream源碼的編譯。如圖2所示,該軟體程序可以採用2級目錄結構,根目錄下存放3個主腳本和6個文件夾,在3個主腳本中clean, sh,用於清除編譯後的文件或上一次運行得到的結果和日誌信息,以便於進行全新的一次編譯和運行。stream_install. sh,用於完成編譯器的配置,stream源碼的安裝等。stream_run. sh,用於運行生成的可執行文件並輸出結果。在6個文件目錄中Scripts用於存放軟體運行過程中需要調用的子程序。tools用於存放openmpi安裝源文件。src用於存放stream源碼壓縮包。include內含2個二級目錄,rhel和suse,用於存放rshell配置過程中需要的配置文件,例如機器名定義,安全授權。rhel存放Redhat作業系統配置文件。suse存放Suse Linux作業系統下的配置文件。log存放日誌文件。openmpi安裝、rshell配置過程中的執行記錄都存放在相應的日誌文件中。test目錄存放臨時數據。
5
1級目錄下存放頂級作為程序入口,調用其他腳本協同工作。此外,跟目錄下還有相應的系統所需的源文件和測試調用的測試程序文件。圖3是根據本發明的內存帶寬測試方法的具體執行過程的流程圖。如圖3所示, 具體包括以下幾個步驟首先,清除上次運行測試過程後的遺留數據;之後,安裝gcc、g++和gfortran編譯器,編譯openmpi源碼,構建並行程序編譯運行環境;運行內存檢測腳本,確定伺服器內存的條數、總容量以及在主板上的DMM槽位置;使用openmpi生成的mpicc和mpif90編譯stream源碼,根據內存的總容量和內存條數生成stream的並行可執行文件;使用mpirun命令執行stream可執行文件,並將結果導出到stream日誌中,同時, 輸出到當前終端。通過上述處理,能夠使用shell腳本自動化完成openmpi編譯環境的構建,使用 shell腳本自動化完成內存的條數、總容量以及在主板上的DMM槽位置等信息的採集, 自動化使用openmpi生成的mpicc和mpif90編譯stream源碼,並生成可執行文件,使用 mpirun命令stream可執行文件,並自動輸出結果和日誌,從而完成對於多通道情況下伺服器整機內存帶寬的性能測試,並且能夠測試內存訪問延遲時間。根據本發明的實施例,還提供了一種內存帶寬的測試裝置。如圖4所示,根據本發明實施例的內存帶寬的測試裝置包括檢測模塊41,用於檢測內存的配置信息,確定內存的空間;編譯模塊42,用於對源碼進行編譯,得到可執行文件,其中,源碼用於進行內存帶寬測試;執行模塊43,連接至檢測模塊41和編譯模塊42,用於以並行執行可執行文件,以並行的方式對內存的空間進行帶寬測試。此外,該裝置可以包括用於進行環境編譯的模塊,可以單獨設置該模塊,也可以由編譯模塊來實現環境編譯的功能,具體方式已經在之前進行了描述。並且,執行模塊可以對內存空間完成數據的讀寫以及比較,從而實現測試,具體過程之前已經描述,這裡不再重複。綜上所述,藉助於本發明的上述技術方案,能夠使用shell腳本自動化完成 openmpi編譯環境的構建,使用shell腳本自動化完成內存的條數、總容量以及在主板上的 DMM槽位置等信息的採集,自動化使用openmpi生成的mpicc和mpif90編譯stream源碼, 並生成可執行文件,使用mpirun命令stream可執行文件,並自動輸出結果和日誌,從而完成對於多通道情況下伺服器整機內存帶寬的性能測試,提高測試的效率,並且能夠保證測試的穩定性。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種內存帶寬的測試方法,其特徵在於,包括檢測內存的配置信息,確定所述內存的空間,並對用於進行內存帶寬測試的源碼進行編譯,得到可執行文件;並行執行所述可執行文件,以並行的方式對所述內存的空間進行帶寬測試。
2.根據權利要求1所述的測試方法,其特徵在於,進一步包括預先申請所述內存的最大空間作為高速緩衝存儲器;並且,對所述內存的空間進行帶寬測試是指對申請為所述高速緩衝存儲器的空間進行帶寬測試。
3.根據權利要求1所述的測試方法,其特徵在於,在檢測所述內存的配置信息之前,所述進一步包括使用openmpi源碼構建編譯環境。
4.根據權利要求1所述的測試方法,其特徵在於,所述源碼為Mream源碼。
5.根據權利要求4所述的測試方法,其特徵在於,對所述源碼進行編譯包括利用mpicc和Mpif90編譯所述Mream源碼。
6.根據權利要求1所述的測試方法,其特徵在於,以並行的方式對所述內存的空間進行帶寬測試包括計算機的多個處理器並行執行所述可執行文件,其中,每個處理器對其需要測試的內存空間進行帶寬測試。
7.根據權利要求6所述的測試方法,其特徵在於,每個處理器對其需要測試的內存空間進行帶寬測試包括將測試數據寫入該處理器需要測試的內存空間中;將寫入的測試數據讀出,並與寫入前的測試數據進行比較。
8.根據權利要求6所述的測試方法,其特徵在於,在測試完成後,每個處理器清空對應的內存空間。
9.根據權利要求6所述的測試方法,其特徵在於,所述多個處理器通過mpirim命令來執行所述可執行文件。
10.一種內存帶寬的測試裝置,其特徵在於,包括檢測模塊,用於檢測內存的配置信息,確定所述內存的空間;編譯模塊,用於對源碼進行編譯,得到可執行文件,其中,所述源碼用於進行內存帶寬測試;執行模塊,用於以並行執行所述可執行文件,以並行的方式對所述內存的空間進行帶寬測試。
全文摘要
本發明公開了一種內存帶寬的測試方法和裝置,其中,該方法包括檢測內存的配置信息,確定內存的空間,並對用於進行內存帶寬測試的源碼進行編譯,得到可執行文件;並行執行可執行文件,以並行的方式對內存的空間進行帶寬測試。本發明通過檢測內存的配置信息、編譯測試源碼,並且並行執行文件來進行內存測試,從而能夠以並行方式完成測試,提高測試的效率。
文檔編號G06F11/22GK102567158SQ20111045600
公開日2012年7月11日 申請日期2011年12月31日 優先權日2011年12月31日
發明者劉建鋒, 張迎華, 趙雷 申請人:曙光信息產業股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀