一種系統(tǒng)性能的優(yōu)化方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計算機技術(shù)領(lǐng)域,特別是涉及一種系統(tǒng)性能的優(yōu)化方法和裝置。
【背景技術(shù)】
[0002] 隨著計算機硬件的快速發(fā)展,計算機系統(tǒng)配置已經(jīng)從系統(tǒng)中的單個或多個集成電 路進化至各個集成電路上的多個硬件線程、多個核、多個設(shè)備和/或完整的系統(tǒng)。然而,硬 件的不斷進步也需要軟件系統(tǒng)的發(fā)展,進而推進整個計算系統(tǒng)的性能。
[0003] 目前,對于軟件系統(tǒng)的優(yōu)化大多是基于應(yīng)用層面的優(yōu)化。例如,可以采用多線程, 利用并行程序設(shè)計模型來設(shè)計應(yīng)用程序。通過將應(yīng)用程序劃分成多個獨立的任務(wù),并確定 這些任務(wù)之間的相互依賴關(guān)系,從而進行任務(wù)分解、數(shù)據(jù)分解和數(shù)據(jù)流分解。這樣,可以在 一個進程中創(chuàng)建幾個線程并行執(zhí)行多個獨立的任務(wù),以此來提高程序的執(zhí)行效率,進而提 尚系統(tǒng)的性能。
[0004] 然而,在多個線程同時運行的時候,如果多個線程同時對同一個內(nèi)存地址進行寫 入,由于CPU時間調(diào)度上的問題,寫入數(shù)據(jù)會被多次的覆蓋,所以就要使線程同步。即當(dāng)有 一個線程在對內(nèi)存進行操作時,其他線程都不可以對這個內(nèi)存地址進行操作,直到該線程 完成操作,此時,其他線程處于等待狀態(tài)。在系統(tǒng)中使用多線程是為了提高系統(tǒng)的性能,但 如果多線程使用不當(dāng),還可能會增加線程間上下文切換和消息交互的過程,線程的個數(shù)越 多,系統(tǒng)在線程之間的切換次數(shù)會增加,不但不會提升系統(tǒng)性能,反而會使得資源消耗更 大,產(chǎn)生更多的CPU負載。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明實施例所要解決的技術(shù)問題是提供一種系統(tǒng)性能的優(yōu)化方法和裝置,能夠 方便地合并多個線程,從而能夠減少線程間上下文切換和消息交互過程,降低由于頻繁進 行多線程的切換而產(chǎn)生的交互資源消耗。
[0006] 為了解決上述問題,本發(fā)明公開了一種系統(tǒng)性能的優(yōu)化方法,包括:
[0007] 通過配置第一功能模塊的第一消息處理接口,將所述第一功能模塊與第二功能模 塊的交互資源進彳丁關(guān)聯(lián);
[0008] 根據(jù)所述交互資源,將所述第一功能模塊合并到所述第二功能模塊對應(yīng)的當(dāng)前線 程,使得所述當(dāng)前線程從所述交互資源中獲取其他線程發(fā)送的消息時,依據(jù)所述消息中攜 帶的目的地址識別所述消息對應(yīng)的功能模塊,并運行識別出的功能模塊。
[0009] 依據(jù)本發(fā)明的另一個方面,提供了一種系統(tǒng)性能的優(yōu)化裝置,包括:
[0010] 關(guān)聯(lián)模塊,用于通過配置第一功能模塊的第一消息處理接口,將所述第一功能模 塊與第二功能模塊的交互資源進行關(guān)聯(lián);及
[0011] 合并模塊,用于根據(jù)所述交互資源,將所述第一功能模塊合并到所述第二功能模 塊對應(yīng)的當(dāng)前線程,使得所述當(dāng)前線程從所述交互資源中獲取其他線程發(fā)送的消息時,依 據(jù)所述消息中攜帶的目的地址識別所述消息對應(yīng)的功能模塊,并運行識別出的功能模塊。
[0012] 與現(xiàn)有技術(shù)相比,本發(fā)明實施例包括以下優(yōu)點:
[0013] 本發(fā)明實施例通過合并功能模塊來實現(xiàn)線程的合并,也即,通過將原本在多個線 程中運行的多個功能模塊合并為在一個線程中運行的第二功能模塊,使該多個功能模塊共 用一個線程的交互資源,因此,本發(fā)明實施例可以方便地合并多個線程,從而能夠減少線程 間上下文切換和消息交互過程,降低由于頻繁進行多線程的切換而產(chǎn)生的交互資源消耗。
【附圖說明】
[0014] 圖1是本發(fā)明的一種系統(tǒng)性能優(yōu)化的方法實施例一的步驟流程圖;
[0015] 圖2是本發(fā)明的一種功能模塊合并前的消息通信示意圖;
[0016] 圖3是本發(fā)明的一種功能模塊合并后的消息通信示意圖;
[0017] 圖4是本發(fā)明的一種創(chuàng)建第二功能模塊的方法的步驟流程圖;
[0018] 圖5是本發(fā)明的一種對第二功能模塊dpdcp和第一功能模塊drlc進行合并的方 法示例的步驟流程圖;
[0019] 圖6是本發(fā)明的一種系統(tǒng)性能優(yōu)化的方法實施例四的步驟流程圖;
[0020] 圖7是本發(fā)明的一種LTE Smallcell系統(tǒng)的模塊結(jié)構(gòu)示意圖;
[0021] 圖8是本發(fā)明的一種系統(tǒng)性能優(yōu)化的方法實施例五的步驟流程圖;以及
[0022] 圖9是本發(fā)明的一種系統(tǒng)性能優(yōu)化的裝置實施例的結(jié)構(gòu)框圖。
【具體實施方式】
[0023] 為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖和具體實 施方式對本發(fā)明作進一步詳細的說明。
[0024] 實施例一
[0025] 參見圖1,示出了本發(fā)明的一種系統(tǒng)性能優(yōu)化的方法實施例一的步驟流程圖,具體 可以包括如下步驟:
[0026] 步驟101、通過配置第一功能模塊的第一消息處理接口,將第一功能模塊與第二功 能模塊的交互資源進行關(guān)聯(lián);
[0027] 本發(fā)明實施例中,功能模塊可用于表示程序中用于實現(xiàn)獨立子功能的模塊。也即, 在每個功能模塊完成對應(yīng)子功能后,再把這些功能模塊總起來組成一個整體,以滿足所要 求的整個程序的功能。
[0028] 考慮到程序中的功能模塊可以作為一個獨立的線程運行,本發(fā)明實施例通過合并 功能模塊來實現(xiàn)線程的合并,也即,通過將原本在多個線程中運行的多個功能模塊合并為 在一個線程中運行的第二功能模塊,使該多個功能模塊共用一個線程的交互資源,因此,本 發(fā)明實施例可以方便地合并多個線程,從而能夠減少線程間上下文切換和消息交互過程, 降低由于頻繁進行多線程的切換而產(chǎn)生的交互資源消耗。
[0029] 在具體應(yīng)用中,功能模塊之間符合以下條件時合并功能模塊可以有利于系統(tǒng)性能 的優(yōu)化:
[0030] 第一、對于無關(guān)功能模塊的合并,其中,無關(guān)功能模塊具體可以包括各種對實時性 要求不高的功能模塊,比如處理用戶界面交互的功能模塊等等;
[0031] 第二、對于相關(guān)功能模塊的合并,其中,相關(guān)功能模塊具體可以包括各種對消 息數(shù)據(jù)處理是嚴格串行處理的功能模塊,比如上(下)行消息處理涉及的功能模塊,如 RRM(無線資源管理,Radio Resource Management)功能模塊和RRC(無線資源控制,Radio Resource Con