本發(fā)明涉及cxl,特別是涉及一種cxl單元的時延測試方法、裝置、系統(tǒng)、設(shè)備及介質(zhì)。
背景技術(shù):
1、計算機快速互聯(lián)(compute?express?link,cxl)是一種開放式互連新標準,用于主機和需要共享內(nèi)存資源的設(shè)備之間進行內(nèi)存訪問和一致性緩存。一個完整的計算機快速互聯(lián)系統(tǒng)中可能會包含一個或多個支持計算機快速互聯(lián)的主機(cxl?host)以及一個或多個計算機快速互聯(lián)設(shè)備(cxl?device),這些構(gòu)成了計算機快速互聯(lián)系統(tǒng)的計算機快速互聯(lián)單元各自的性能均直接影響到系統(tǒng)的整體性能。故在系統(tǒng)設(shè)計前期,必須充分了解其中每個計算機快速互聯(lián)單元的性能指標。
2、目前對計算機快速互聯(lián)單元的時延性能測試方法是在系統(tǒng)中使用軟件工具(如intel?mlc)來對計算機快速互聯(lián)設(shè)備(cxl?device)的時延進行測試,具體的方法是將計算機快速互聯(lián)設(shè)備(cxl?device)接入測試主機,通過運行在測試主機操作系統(tǒng)上的軟件工具對計算機快速互聯(lián)設(shè)備(cxl?device)進行多次讀寫然后取平均值作為最終的性能指標。
3、然而,這種系統(tǒng)測試的方法受限于測試主機本身的性能,例如主板布線參數(shù)、中央處理器(central?processing?unit,cpu)性能以及中央處理器插槽(cpu?socket)到計算機快速互聯(lián)根(cxl?rp)端口的物理路徑等(多個中央處理器插槽時),導致不同的測試主機測得的計算機快速互聯(lián)設(shè)備(cxl?device)的時延性能測試結(jié)果差異較大,不能嚴格體現(xiàn)計算機快速互聯(lián)設(shè)備(cxl?device)本身的性能,對于計算機快速互聯(lián)系統(tǒng)的設(shè)計參考意義不大。且這種系統(tǒng)測試方法也無法對計算機快速互聯(lián)設(shè)備(cxl?device)的性能進行測試。
4、提供一種更準確的計算機快速互聯(lián)單元時延性能測試方案,是本領(lǐng)域技術(shù)人員需要解決的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的是提供一種cxl單元的時延測試方法、裝置、系統(tǒng)、設(shè)備及介質(zhì),用于提高對計算機快速互聯(lián)單元時延性能測試結(jié)果的準確性。
2、為解決上述技術(shù)問題,本發(fā)明提供一種cxl單元的時延測試方法,應(yīng)用于消息管理器,包括:
3、通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,并記錄所述測試報文的發(fā)送時間戳;
4、通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,并記錄所述反饋報文的接收時間戳;
5、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括計算機快速互聯(lián)根端口模塊和/或計算機快速互聯(lián)終端接口模塊;所述發(fā)送時間戳和所述接收時間戳用于進行所述待測計算機快速互聯(lián)單元的時延測試結(jié)果的計算。
6、在一些實施中,所述待測計算機快速互聯(lián)單元為待測計算機快速互聯(lián)終端接口設(shè)備;
7、所述通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,包括:通過所述計算機快速互聯(lián)根端口模塊向所述待測計算機快速互聯(lián)終端接口設(shè)備發(fā)送所述測試報文;
8、所述通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,包括:通過所述計算機快速互聯(lián)根端口模塊接收所述待測計算機快速互聯(lián)終端接口設(shè)備對所述測試報文的所述反饋報文。
9、在一些實施中,所述待測計算機快速互聯(lián)單元為待測計算機快速互聯(lián)根端口設(shè)備;
10、所述通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,包括:通過所述計算機快速互聯(lián)終端接口模塊向所述待測計算機快速互聯(lián)根端口設(shè)備發(fā)送所述測試報文;
11、所述通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,包括:通過所述計算機快速互聯(lián)終端接口模塊接收所述待測計算機快速互聯(lián)根端口設(shè)備對所述測試報文的所述反饋報文。
12、在一些實施中,所述待測計算機快速互聯(lián)單元為待測計算機快速互聯(lián)交換機;
13、所述通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,包括:通過所述計算機快速互聯(lián)根端口模塊向所述待測計算機快速互聯(lián)交換機的上行端口發(fā)送所述測試報文,通過所述計算機快速互聯(lián)終端接口模塊向所述待測計算機快速互聯(lián)交換機的下行端口發(fā)送所述測試報文;
14、所述通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,包括:通過所述計算機快速互聯(lián)根端口模塊接收所述待測計算機快速互聯(lián)交換機的上行端口的所述反饋報文,通過所述計算機快速互聯(lián)終端接口模塊接收所述待測計算機快速互聯(lián)交換機的下行端口的所述反饋報文。
15、在一些實施中,還包括:
16、根據(jù)所述發(fā)送時間戳和所述接收時間戳之間的時間差計算得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果。
17、在一些實施中,所述根據(jù)所述發(fā)送時間戳和所述接收時間戳之間的時間差計算得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果,包括:
18、計算多組所述發(fā)送時間戳到所述接收時間戳之間的時間差的平均值,得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果。
19、在一些實施中,還包括:
20、經(jīng)由通信模塊將所述發(fā)送時間戳和所述接收時間戳發(fā)送至測試主機以在所述測試主機進行所述待測計算機快速互聯(lián)單元的時延測試結(jié)果的計算。
21、在一些實施中,所述通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,包括:
22、根據(jù)測試主機發(fā)送的時延測試參數(shù)確定消息類型和各所述消息類型對應(yīng)的發(fā)送次數(shù);
23、根據(jù)所述消息類型和各所述消息類型對應(yīng)的發(fā)送次數(shù)確定向所述待測計算機快速互聯(lián)單元的所述測試報文的配置信息;
24、根據(jù)所述待測報文的配置信息,通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送所述測試報文。
25、在一些實施中,所述通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,包括:
26、根據(jù)測試主機發(fā)送的消息參數(shù)數(shù)據(jù)流生成計算機快速互聯(lián)協(xié)議格式的報文,得到所述測試報文;
27、通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送所述測試報文。
28、在一些實施中,所述計算機快速互聯(lián)根端口模塊、所述計算機快速互聯(lián)終端接口模塊中的至少一個和所述消息管理器基于可編程控制器搭建。
29、在一些實施中,所述可編程控制器包括現(xiàn)場可編程邏輯門陣列、復(fù)雜可編程邏輯器件、系統(tǒng)級芯片、數(shù)字信號處理器或?qū)S眉呻娐贰?/p>
30、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試方法,應(yīng)用于測試主機,包括:
31、利用與消息管理器連接的通信模塊,讀取所述消息管理器通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送的測試報文的發(fā)送時間戳以及所述消息管理器通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文的接收時間戳;
32、根據(jù)所述發(fā)送時間戳和所述接收時間戳計算得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果;
33、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括計算機快速互聯(lián)根端口模塊和/或計算機快速互聯(lián)終端接口模塊。
34、在一些實施中,還包括:
35、利用所述通信模塊中的內(nèi)存映射總線向所述消息管理器發(fā)送所述時延測試參數(shù)以完成所述消息管理器的寄存器配置;
36、所述時延測試參數(shù)至少包括:消息類型和各所述消息類型對應(yīng)的發(fā)送次數(shù)。
37、在一些實施中,還包括:
38、向所述消息管理器發(fā)送消息參數(shù)數(shù)據(jù)流,以使所述消息管理器將所述消息參數(shù)數(shù)據(jù)流生成計算機快速互聯(lián)協(xié)議格式的報文,得到所述測試報文。
39、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試裝置,包括:消息管理器、計算機快速互聯(lián)根端口模塊和計算機快速互聯(lián)終端接口模塊;
40、其中,所述消息管理器用于通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,并記錄所述測試報文的發(fā)送時間戳;通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,并記錄所述反饋報文的接收時間戳;
41、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括所述計算機快速互聯(lián)根端口模塊和/或所述計算機快速互聯(lián)終端接口模塊;所述發(fā)送時間戳和所述接收時間戳用于進行所述待測計算機快速互聯(lián)單元的時延測試結(jié)果的計算。
42、在一些實施中,所述消息管理器包括:消息生成器、日志緩存器、時間模塊、發(fā)送模塊和接收模塊;
43、其中,所述消息生成器的第一端與所述發(fā)送模塊的第一端連接,所述發(fā)送模塊的第二端與所述日志緩存器的第一端連接,所述發(fā)送模塊的第三端為所述消息管理器的報文輸出接口,所述接收模塊的第一端與所述日志緩存器的第二端連接,所述接收模塊的第二端為所述消息管理器的報文輸入接口,所述時間模塊的輸出端與分別與所述發(fā)送模塊的第四端、所述接收模塊的第三端連接;
44、所述消息生成器用于將所述測試報文通過所述發(fā)送模塊發(fā)送至所述待測計算機快速互聯(lián)單元;
45、所述發(fā)送模塊用于將發(fā)出所述測試報文時自所述時間模塊獲取的所述發(fā)送時間戳緩存至所述日志緩存器;
46、所述接收模塊用于將接收到所述反饋報文時自所述時間模塊獲取的所述接收時間戳緩存至所述日志緩存器。
47、在一些實施中,還包括通信模塊;
48、所述通信模塊的第一端用于連接測試主機,所述通信模塊的第二端與所述消息管理器的寄存器配置接口連接,以供所述測試主機對所述消息管理器發(fā)送時延測試參數(shù)以完成所述消息管理器的寄存器配置;所述通信模塊的第三端與所述消息管理器的日志傳輸接口連接,以供所述測試主機讀取所述消息寄存器記錄的所述測試報文、所述反饋報文、所述發(fā)送時間戳和所述接收時間戳。
49、在一些實施中,所述計算機快速互聯(lián)根端口模塊的數(shù)量和所述計算機快速互聯(lián)終端接口模塊的數(shù)量均為多個,各所述計算機快速互聯(lián)根端口模塊分別與所述消息管理器的不同接口連接,各所述計算機快速互聯(lián)終端接口模塊分別與所述消息管理器的不同接口連接。
50、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試系統(tǒng),包括:計算機快速互聯(lián)單元的時延測試裝置以及與所述時延測試裝置連接的測試主機;
51、其中,所述時延測試裝置包括消息管理器、計算機快速互聯(lián)根端口模塊、計算機快速互聯(lián)終端接口模塊和通信模塊;所述消息管理器用于通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,并記錄所述測試報文的發(fā)送時間戳;通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,并記錄所述反饋報文的接收時間戳;
52、所述測試主機用于通過所述通信模塊讀取所述發(fā)送時間戳和所述接收時間戳,并根據(jù)所述發(fā)送時間戳和所述接收時間戳計算得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果;
53、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括所述計算機快速互聯(lián)根端口模塊和/或所述計算機快速互聯(lián)終端接口模塊。
54、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試裝置,應(yīng)用于消息管理器,包括:
55、發(fā)送單元,用于通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送測試報文,并記錄所述測試報文的發(fā)送時間戳;
56、接收單元,用于通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文,并記錄所述反饋報文的接收時間戳;
57、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括計算機快速互聯(lián)根端口模塊和/或計算機快速互聯(lián)終端接口模塊;所述發(fā)送時間戳和所述接收時間戳用于進行所述待測計算機快速互聯(lián)單元的時延測試結(jié)果的計算。
58、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試裝置,在一些實施中,應(yīng)用于測試主機,包括:
59、讀數(shù)據(jù)單元,用于利用與消息管理器連接的通信模塊,讀取所述消息管理器通過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向所述待測計算機快速互聯(lián)單元發(fā)送的測試報文的發(fā)送時間戳以及所述消息管理器通過與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收所述待測計算機快速互聯(lián)單元對所述測試報文的反饋報文的接收時間戳;
60、第二計算單元,用于根據(jù)所述發(fā)送時間戳和所述接收時間戳計算得到所述待測計算機快速互聯(lián)單元的時延測試結(jié)果;
61、其中,與所述待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括計算機快速互聯(lián)根端口模塊和/或計算機快速互聯(lián)終端接口模塊。
62、為解決上述技術(shù)問題,本發(fā)明還提供一種cxl單元的時延測試設(shè)備,包括:
63、存儲器,用于存儲計算機程序;
64、處理器,用于執(zhí)行所述計算機程序,所述計算機程序被所述處理器執(zhí)行時實現(xiàn)如上述任意一項所述cxl單元的時延測試方法的步驟。
65、為解決上述技術(shù)問題,本發(fā)明還提供一種介質(zhì),其上存儲有計算機程序,所述計算機程序被處理器執(zhí)行時實現(xiàn)如上述任意一項所述cxl單元的時延測試方法的步驟。
66、本發(fā)明所提供的cxl單元的時延測試方法,通過應(yīng)用消息管理器直接經(jīng)過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊向待測計算機快速互聯(lián)單元發(fā)送測試報文,并記錄測試報文的發(fā)送時間戳,再經(jīng)過與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊接收待測計算機快速互聯(lián)單元對測試報文的反饋報文,并記錄反饋報文的接收時間戳,與待測計算機快速互聯(lián)單元對應(yīng)的計算機快速互聯(lián)接口模塊包括計算機快速互聯(lián)根端口模塊和/或計算機快速互聯(lián)終端接口模塊,實現(xiàn)直接基于硬件獲取待測計算機快速互聯(lián)單元的報文收發(fā)時間戳,不經(jīng)過測試主機操作系統(tǒng)而是直接基于硬件搭建,避免了系統(tǒng)級測試中引入的鏈路誤差,實現(xiàn)了對計算機快速互聯(lián)單元時延性能的直接測量,從而實現(xiàn)了計算機快速互聯(lián)單元的對時延性能的準確測試。
67、本發(fā)明還提供一種cxl單元的時延測試方法、裝置、系統(tǒng)、設(shè)備及介質(zhì),具有上述有益效果,在此不再贅述。