基于多內(nèi)核處理器的一致性處理方法和裝置制造方法
【專利摘要】本發(fā)明實施例提供一種基于多內(nèi)核處理器的一致性處理方法和裝置,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對該目標共享數(shù)據(jù)進行一致性處理,從而能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
【專利說明】基于多內(nèi)核處理器的一致性處理方法和裝置
【技術領域】
[0001]本發(fā)明涉及數(shù)據(jù)存儲技術,尤其涉及一種基于多內(nèi)核處理器的一致性處理方法和
>J-U ρ?α裝直。
【背景技術】
[0002]多內(nèi)核處理器是指在一枚處理器中集成了多個內(nèi)核。多內(nèi)核處理器與用于存儲各個共享數(shù)據(jù)的片外內(nèi)存連接,片外內(nèi)存包括多個數(shù)據(jù)頁,每個數(shù)據(jù)頁包括多個數(shù)據(jù)塊。多內(nèi)核處理器的內(nèi)核通過網(wǎng)絡相互連接,該網(wǎng)絡用于在內(nèi)核間傳遞消息。多內(nèi)核處理器中的每個內(nèi)核包括處理器核、片內(nèi)緩存、旁路轉換緩沖(Translat1n lookaside buffer, TLB)和稀疏目錄。內(nèi)核在對片外內(nèi)存中的共享數(shù)據(jù)進行操作之前,需要將共享數(shù)據(jù)緩存到該內(nèi)核的片內(nèi)緩存中,若至少兩個內(nèi)核的片內(nèi)緩存中緩存有片外內(nèi)存中的同一共享數(shù)據(jù),其中一個內(nèi)核對所緩存的共享數(shù)據(jù)進行寫操作后,則會造成寫操作后的共享數(shù)據(jù)與其余內(nèi)核中所緩存的共享數(shù)據(jù)不一致,因此,需要多內(nèi)核處理器維護共享數(shù)據(jù)的一致性。
[0003]現(xiàn)有技術中,多內(nèi)核處理器采用目錄協(xié)議和偵聽協(xié)議中的一種維護共享數(shù)據(jù)的一致性。由于目錄協(xié)議需要在稀疏目錄中存儲目錄項,利用目錄項記錄緩存各個共享數(shù)據(jù)的內(nèi)核,從而根據(jù)該稀疏目錄中的目錄項對內(nèi)核中存儲的共享數(shù)據(jù)進行一致性處理,造成采用目錄協(xié)議的多內(nèi)核處理器存儲開銷較大,一致性處理效率較低;另外,盡管偵聽協(xié)議不必在稀疏目錄中存儲目錄項,但由于偵聽協(xié)議需要采用廣播消息的方式獲知緩存有共享數(shù)據(jù)的內(nèi)核,從而對共享數(shù)據(jù)進行一致性處理,造成采用偵聽協(xié)議的多內(nèi)核處理器信令開銷較大,同樣造成一致性處理效率較低。
【發(fā)明內(nèi)容】
[0004]本發(fā)明實施例提供一種基于多內(nèi)核處理器的一致性處理方法和裝置,用于提高一致性處理效率。
[0005]第一方面是提供一種基于多內(nèi)核處理器的一致性處理方法,包括:接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息;所述一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù);根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理;所述第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
[0006]在第一方面的第一種可能的實現(xiàn)方式中,所述目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù);所述片外內(nèi)存用于為所述多內(nèi)核處理器提供所述目標共享數(shù)據(jù)。
[0007]結合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理,包括:判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值;所述共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù);若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理;若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。
[0008]結合第一方面的第二種可能的實現(xiàn)方式,在第一方面的第三種可能的實現(xiàn)方式中,所述根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理之后,包括:根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率,更新所述共享閾值;所述網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;所述稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度;若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項;所述第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
[0009]結合第一方面的第三種可能的實現(xiàn)方式,在第一方面的第四種可能的實現(xiàn)方式中,所述根據(jù)所述網(wǎng)絡沖突率和所述稀疏目錄替換率,更新所述共享閾值,包括:若所述網(wǎng)絡沖突率高于第一閾值,并且所述稀疏目錄替換率低于第三閾值,則確定所述更新后的共享閾值為所述共享閾值的二倍;若所述網(wǎng)絡沖突率低于第二閾值,并且所述稀疏目錄替換率高于第四閾值,則確定所述更新后的共享閾值為所述共享閾值的一半。
[0010]結合第一方面的第三種可能的實現(xiàn)方式,在第一方面的第五種可能的實現(xiàn)方式中,所述網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值;所述理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;所述實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。
[0011]結合第一方面的第三種可能的實現(xiàn)方式,在第一方面的第六種可能的實現(xiàn)方式中,所述稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與所述指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
[0012]第二個方面是提供一種基于多內(nèi)核處理器的一致性處理裝置,包括:
[0013]接收模塊,用于接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息;所述一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù);
[0014]處理模塊,用于根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理;所述第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
[0015]在第二方面的第一種可能的實現(xiàn)方式中,所述目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù);所述片外內(nèi)存用于為所述多內(nèi)核處理器提供所述目標共享數(shù)據(jù)。
[0016]結合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述處理模塊,包括:
[0017]判斷單元,用于判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值;所述共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù);
[0018]第一處理單元,用于若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理;
[0019]第二處理單元,用于若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。
[0020]結合第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,所多內(nèi)核處理器的一致性處理裝置,還包括:
[0021]更新模塊,用于根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率,更新所述共享閾值;所述網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;所述稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度;
[0022]刪除模塊,用于若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項;所述第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
[0023]結合第二方面的第三種可能的實現(xiàn)方式,在第二方面的第四種可能的實現(xiàn)方式中,所述更新模塊,包括:
[0024]第一更新單元,用于若所述網(wǎng)絡沖突率高于第一閾值,并且所述稀疏目錄替換率低于第三閾值,則確定所述更新后的共享閾值為所述共享閾值的二倍;
[0025]第二更新單元,用于若所述網(wǎng)絡沖突率低于第二閾值,并且所述稀疏目錄替換率高于第四閾值,則確定所述更新后的共享閾值為所述共享閾值的一半。
[0026]結合第二方面的第三種可能的實現(xiàn)方式,在第二方面的第五種可能的實現(xiàn)方式中,所述網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值;所述理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;所述實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。
[0027]結合第二方面的第三種可能的實現(xiàn)方式,在第二方面的第六種可能的實現(xiàn)方式中,所述稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與所述指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
[0028]本發(fā)明實施例提供的基于多內(nèi)核處理器的一致性處理方法和裝置,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,從而能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
【專利附圖】
【附圖說明】
[0029]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0030]圖1為本發(fā)明一實施例提供的基于多內(nèi)核處理器的一致性處理方法的流程示意圖;
[0031]圖2為本發(fā)明另一實施例提供的基于多內(nèi)核處理器的一致性處理方法的流程示意圖;
[0032]圖3為本發(fā)明一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖;
[0033]圖4為本發(fā)明另一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖;
[0034]圖5為本發(fā)明又一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖。
【具體實施方式】
[0035]為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0036]圖1為本發(fā)明一實施例提供的基于多內(nèi)核處理器的一致性處理方法的流程示意圖,如圖1所示,本實施例可以包括以下步驟:
[0037]11、接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息。
[0038]其中,一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù)。
[0039]102、根據(jù)多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對目標共享數(shù)據(jù)進行一致性處理。
[0040]其中,第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核,具體可為對所述目標共享數(shù)據(jù)進行操作的內(nèi)核,操作包括讀操作和寫操作。
[0041]可選的,判斷第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值,若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理,若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。其中,共享閾值為大于零且小于多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù)。其中,所述共享閾值是根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率確定的。所述網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;所述稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度。
[0042]本實施例中,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
[0043]圖2為本發(fā)明另一實施例提供的基于多內(nèi)核處理器的一致性處理方法的流程示意圖,本實施例中的目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù),如圖2所示,本實施例可以包括以下步驟:
[0044]201、接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息。
[0045]其中,一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù)。
[0046]當?shù)谝粌?nèi)核需要對目標共享數(shù)據(jù)進行讀操作或寫操作之前,若第一內(nèi)核沒有緩存該目標共享數(shù)據(jù),則發(fā)送一致性請求消息,以獲取該目標共享數(shù)據(jù)以及獲知緩存有該目標共享數(shù)據(jù)的內(nèi)核。若第一內(nèi)核緩存有該目標共享數(shù)據(jù)或者第一內(nèi)核獲取到該目標共享數(shù)據(jù),第一內(nèi)核發(fā)送一致性請求消息,以獲知緩存有該目標共享數(shù)據(jù)的內(nèi)核,以使第一內(nèi)核對該目標共享數(shù)據(jù)進行寫操作之后,刪除所獲知的緩存有該目標共享數(shù)據(jù)的內(nèi)核中的目標共享數(shù)據(jù),完成一致性處理。
[0047]202、查詢第一內(nèi)核的TLB中存儲的共享列表,獲取多內(nèi)核處理器中第二內(nèi)核的數(shù)量。
[0048]其中,共享列表用于記錄對片外內(nèi)存的各個數(shù)據(jù)頁中數(shù)據(jù)進行共享的內(nèi)核的標識。第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
[0049]可選的,將多內(nèi)核處理器中對目標共享數(shù)據(jù)進行過讀操作或寫操作的內(nèi)核,作為對目標共享數(shù)據(jù)進行共享的第二內(nèi)核,根據(jù)目標共享數(shù)據(jù)在片外內(nèi)存中的存儲地址,查詢第一內(nèi)核的TLB中存儲的共享列表,獲取該存儲地址對應的內(nèi)核標識,進而獲取多內(nèi)核處理器中共享目標共享數(shù)據(jù)的第二內(nèi)核的數(shù)量。其中,共享列表可在TLB中的頁表項中增加頁共享列表獲得,共享列表包括:數(shù)據(jù)頁的虛擬地址、數(shù)據(jù)頁的有效位、數(shù)據(jù)頁的物理地址和數(shù)據(jù)頁的頁共享列表,頁共享列表用于記錄對數(shù)據(jù)頁中數(shù)據(jù)進行操作的內(nèi)核標識。
[0050]203、判斷第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值,若是執(zhí)行205,否則執(zhí)行204。
[0051]其中,共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù)??纱_定初始的共享閾值為1,即僅在目標數(shù)據(jù)頁的狀態(tài)為獨占時,也就是說,第二內(nèi)核數(shù)量為I時,采用偵聽協(xié)議,否則采用目錄協(xié)議。
[0052]204、若第二內(nèi)核的數(shù)量不大于共享閾值,則采用偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理。
[0053]可選的,若第二內(nèi)核的數(shù)量不大于共享閾值,則對各個第二內(nèi)核多播偵聽消息,以使各個第二內(nèi)核中緩存目標共享數(shù)據(jù)的第二內(nèi)核向所述第一內(nèi)核發(fā)送緩存的所述目標共享數(shù)據(jù),以及未緩存所述目標共享數(shù)據(jù)的第二內(nèi)核向所述第一內(nèi)核發(fā)送用于指示未緩存所述目標共享數(shù)據(jù)的響應消息,從而第一內(nèi)核獲取目標共享數(shù)據(jù)。若第一內(nèi)核對獲取的目標共享數(shù)據(jù)進行的操作為寫操作,則第一內(nèi)核對獲取的目標共享數(shù)據(jù)進行操作之后,刪除緩存目標共享數(shù)據(jù)的第二內(nèi)核中所緩存的目標共享數(shù)據(jù),對稀疏目錄中所記錄的緩存目標共享數(shù)據(jù)的第二內(nèi)核進行更新,以完成一致性處理。由于采用了偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,避免了該目標共享數(shù)據(jù)占用稀疏目錄的存儲容量。
[0054]205、若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對目標共享數(shù)據(jù)進行一致性處理。
[0055]可選的,若第二內(nèi)核的數(shù)量大于共享閾值,則根據(jù)稀疏目錄確定緩存目標共享數(shù)據(jù)的第二內(nèi)核,其中,稀疏目錄用于當?shù)诙?nèi)核的數(shù)量大于共享閾值時,記錄緩存目標共享數(shù)據(jù)的第二內(nèi)核。向緩存目標共享數(shù)據(jù)的第二內(nèi)核發(fā)送數(shù)據(jù)請求消息,以使緩存目標共享數(shù)據(jù)的第二內(nèi)核向第一內(nèi)核發(fā)送緩存的目標共享數(shù)據(jù),從而獲取目標共享數(shù)據(jù)。若第一內(nèi)核對獲取的目標共享數(shù)據(jù)進行的操作為寫操作,則第一內(nèi)核對獲取的目標共享數(shù)據(jù)進行操作之后,刪除緩存目標共享數(shù)據(jù)的第二內(nèi)核中所緩存的目標共享數(shù)據(jù),對稀疏目錄中所記錄的緩存目標共享數(shù)據(jù)的第二內(nèi)核進行更新,以完成一致性處理。
[0056]206、計算多內(nèi)核處理器的網(wǎng)絡沖突率和多內(nèi)核處理器的稀疏目錄替換率。
[0057]其中,網(wǎng)絡沖突率,指示用于在多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度。稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度。
[0058]可選的,執(zhí)行204或205之后,網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值。其中,理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
[0059]207、根據(jù)多內(nèi)核處理器的網(wǎng)絡沖突率和多內(nèi)核處理器的稀疏目錄替換率,更新共享閾值。
[0060]可選的,采用目錄協(xié)議或偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理之后,若網(wǎng)絡沖突率高于第一閾值,例如:80%,并且稀疏目錄替換率低于第三閾值,例如:1%,則確定更新后的共享閾值為所述共享閾值的二倍,若網(wǎng)絡沖突率低于第二閾值,例如:2%,并且所述稀疏目錄替換率高于第四閾值,例如:15%,則確定所述更新后的共享閾值為所述共享閾值的一半,否則,不進行更新。本實施例中的多內(nèi)核處理器通過根據(jù)網(wǎng)絡擁塞程度和稀疏目錄的空間占用程度確定共享閾值,進而動態(tài)調整采用目錄協(xié)議和偵聽協(xié)議的比例,使其達到最佳平衡點,從而使得網(wǎng)絡擁塞程度和稀疏目錄的空間占用程度達到動態(tài)平衡,提高一致性的效率,提高多內(nèi)核處理器性能。
[0061]需要說明的是,還可每隔指定的多內(nèi)核處理器的時鐘周期之后進行共享閾值的更新。
[0062]208、刪除所述多內(nèi)核處理器的內(nèi)核中緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù)。
[0063]其中,第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
[0064]可選的,若多內(nèi)核處理器的內(nèi)核中緩存有片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除多內(nèi)核處理器的內(nèi)核中存儲的第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄相應地刪除第一數(shù)據(jù)頁對應的目錄項,其中,第一數(shù)據(jù)頁對應的目錄項用于記錄緩存第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)的內(nèi)核。
[0065]本實施例中,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
[0066]圖3為本發(fā)明一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖,如圖3所示,包括:接收模塊31和處理模塊32。
[0067]接收模塊31,用于接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息。
[0068]其中,一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù)。
[0069]處理模塊32,與接收模塊31連接,用于根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理。
[0070]其中,第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
[0071]可選的,判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值,若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理,若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。其中,共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù)。
[0072]本實施例提供的基于多內(nèi)核處理器的一致性處理裝置的各功能模塊可用于執(zhí)行圖1所示的基于多內(nèi)核處理器的一致性處理裝置方法的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0073]本實施例中,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
[0074]圖4為本發(fā)明另一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖,如圖4所示,在上一實施例的基礎上,本實施例中的處理模塊32,包括:判斷單元321、第一處理單元322和第二處理單元323。
[0075]判斷單元321,用于判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值;所述共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù);
[0076]第一處理單元322,與判斷單元321連接,用于若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理;
[0077]第二處理單元323,與判斷單元321連接,用于若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。
[0078]進一步,目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù)。
[0079]其中,片外內(nèi)存與多內(nèi)核處理器連接,用于存儲目標共享數(shù)據(jù)。
[0080]基于此,基于多內(nèi)核處理器的一致性處理裝置還包括:更新模塊33和刪除模塊34。
[0081]更新模塊33,與處理模塊32連接,用于根據(jù)多內(nèi)核處理器的網(wǎng)絡沖突率和多內(nèi)核處理器的稀疏目錄替換率,更新共享閾值。
[0082]其中,網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度。
[0083]刪除模塊34,與更新模塊33連接,用于若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項。
[0084]其中,第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
[0085]進一步,更新模塊33包括:第一更新單元331和第二更新單元332。
[0086]第一更新單元331,用于若所述網(wǎng)絡沖突率高于第一閾值,并且所述稀疏目錄替換率低于第三閾值,則確定所述更新后的共享閾值為所述共享閾值的二倍。
[0087]其中,網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值。理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
[0088]第二更新單元332,用于若所述網(wǎng)絡沖突率低于第二閾值,并且所述稀疏目錄替換率高于第四閾值,則確定所述更新后的共享閾值為所述共享閾值的一半。
[0089]本實施例提供的基于多內(nèi)核處理器的一致性處理裝置的各功能模塊可用于執(zhí)行圖2所示的基于多內(nèi)核處理器的一致性處理裝置方法的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0090]本實施例中,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
[0091]圖5為本發(fā)明又一實施例提供的基于多內(nèi)核處理器的一致性處理裝置的結構示意圖,如圖5所示,包括:通信接口 51、處理器52和存儲器53。
[0092]通信接口 51,用于接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息。
[0093]其中,一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù)。
[0094]存儲器53,用于存放程序。具體地,程序可以包括程序代碼,所述程序代碼包括計算機操作指令。存儲器53可能包含高速RAM存儲器,也可能還包括非易失性存儲器(non-volatile memory),例如至少一個磁盤存儲器。
[0095]處理器52,用于執(zhí)行存儲器53存放的程序,以用于:根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理。
[0096]其中,第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
[0097]可選的,判斷第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值,若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理;若第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。其中,共享閾值為大于零且小于多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù)。
[0098]進一步,目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù)。
[0099]基于此,處理器52,還用于根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率,更新共享閾值;若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項。
[0100]其中,第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值;所述理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;所述實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與所述指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
[0101]本實施例提供的基于多內(nèi)核處理器的一致性處理裝置的各功能模塊可用于執(zhí)行圖2所示的基于多內(nèi)核處理器的一致性處理裝置方法的流程,其具體工作原理不再贅述,詳見方法實施例的描述。
[0102]本實施例中,根據(jù)多內(nèi)核處理器中對目標共享數(shù)據(jù)進行共享的第二內(nèi)核的數(shù)量,采用目錄協(xié)議或偵聽協(xié)議對目標共享數(shù)據(jù)進行一致性處理,能夠對該目標共享數(shù)據(jù)采用適合的協(xié)議進行一致性處理,并且由于避免了對多內(nèi)核處理器中的全部共享數(shù)據(jù)采用相同的協(xié)議進行一致性處理,對部分共享數(shù)據(jù)采用偵聽協(xié)議,另一部分共享數(shù)據(jù)采用目錄協(xié)議,從而相比較于現(xiàn)有技術不僅節(jié)省了采用偵聽協(xié)議的共享數(shù)據(jù)在稀疏目錄中所占用的目錄項,而且節(jié)省了采用目錄協(xié)議的共享數(shù)據(jù)進行一致性處理時所產(chǎn)生廣播消息,因而提高了一致性處理效率。
[0103]本領域普通技術人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關的硬件來完成。前述的程序可以存儲于一計算機可讀取存儲介質中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質包括:R0M、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。
[0104]最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分或者全部技術特征進行等同替換;而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的范圍。
【權利要求】
1.一種基于多內(nèi)核處理器的一致性處理方法,其特征在于,包括: 接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息;所述一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù); 根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理;所述第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
2.根據(jù)權利要求1所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù);所述片外內(nèi)存用于為所述多內(nèi)核處理器提供所述目標共享數(shù)據(jù)。
3.根據(jù)權利要求1或2所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理,包括: 判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值;所述共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù); 若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理; 若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。
4.根據(jù)權利要求3所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理之后,包括: 根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率,更新所述共享閾值;所述網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;所述稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度; 若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項;所述第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
5.根據(jù)權利要求4所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述根據(jù)所述網(wǎng)絡沖突率和所述稀疏目錄替換率,更新所述共享閾值,包括: 若所述網(wǎng)絡沖突率高于第一閾值,并且所述稀疏目錄替換率低于第三閾值,則確定所述更新后的共享閾值為所述共享閾值的二倍; 若所述網(wǎng)絡沖突率低于第二閾值,并且所述稀疏目錄替換率高于第四閾值,則確定所述更新后的共享閾值為所述共享閾值的一半。
6.根據(jù)權利要求4所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值;所述理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;所述實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。
7.根據(jù)權利要求4所述的基于多內(nèi)核處理器的一致性處理方法,其特征在于,所述稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與所述指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
8.一種基于多內(nèi)核處理器的一致性處理裝置,其特征在于,包括: 接收模塊,用于接收多內(nèi)核處理器中第一內(nèi)核發(fā)送的一致性請求消息;所述一致性請求消息用于指示待進行一致性處理的目標共享數(shù)據(jù); 處理模塊,用于根據(jù)所述多內(nèi)核處理器中第二內(nèi)核的數(shù)量,選擇采用目錄協(xié)議或偵聽協(xié)議中的一種對所述目標共享數(shù)據(jù)進行一致性處理;所述第二內(nèi)核為共享所述目標共享數(shù)據(jù)的內(nèi)核。
9.根據(jù)權利要求8所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述目標共享數(shù)據(jù)為片外內(nèi)存的目標數(shù)據(jù)頁中的數(shù)據(jù);所述片外內(nèi)存用于為所述多內(nèi)核處理器提供所述目標共享數(shù)據(jù)。
10.根據(jù)權利要求8或9所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述處理模塊,包括: 判斷單元,用于判斷所述第二內(nèi)核的數(shù)量是否大于預先確定的共享閾值;所述共享閾值為大于零且小于所述多內(nèi)核處理器的內(nèi)核數(shù)量的整數(shù); 第一處理單元,用于若所述第二內(nèi)核的數(shù)量不大于所述共享閾值,則采用偵聽協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理; 第二處理單元,用于若所述第二內(nèi)核的數(shù)量大于所述共享閾值,則采用目錄協(xié)議對所述目標共享數(shù)據(jù)進行一致性處理。
11.根據(jù)權利要求10所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述基于多內(nèi)核處理器的一致性處理裝置,還包括: 更新模塊,用于根據(jù)所述多內(nèi)核處理器的網(wǎng)絡沖突率和所述多內(nèi)核處理器的稀疏目錄替換率,更新所述共享閾值;所述網(wǎng)絡沖突率,指示用于在所述多內(nèi)核處理器的內(nèi)核之間傳遞消息的網(wǎng)絡的擁塞程度;所述稀疏目錄替換率,指示所述多內(nèi)核處理器中的稀疏目錄的存儲空間占用程度; 刪除模塊,用于若所述多內(nèi)核處理器的內(nèi)核中緩存有所述片外內(nèi)存的第一數(shù)據(jù)頁中的數(shù)據(jù),刪除所述多內(nèi)核處理器的內(nèi)核緩存的所述第一數(shù)據(jù)頁中的數(shù)據(jù),以使所述多內(nèi)核處理器中的稀疏目錄刪除所述第一數(shù)據(jù)頁對應的目錄項;所述第一數(shù)據(jù)頁對應的目錄項用于記錄對所述第一數(shù)據(jù)頁的各個數(shù)據(jù)塊中的數(shù)據(jù)進行緩存的內(nèi)核;所述第一數(shù)據(jù)頁滿足緩存所述第一數(shù)據(jù)頁中的數(shù)據(jù)的內(nèi)核數(shù)量大于更新后的共享閾值。
12.根據(jù)權利要求11所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述更新模塊,包括: 第一更新單元,用于若所述網(wǎng)絡沖突率高于第一閾值,并且所述稀疏目錄替換率低于第三閾值,則確定所述更新后的共享閾值為所述共享閾值的二倍; 第二更新單元,用于若所述網(wǎng)絡沖突率低于第二閾值,并且所述稀疏目錄替換率高于第四閾值,則確定所述更新后的共享閾值為所述共享閾值的一半。
13.根據(jù)權利要求11所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述網(wǎng)絡沖突率為實際傳遞時間和理論傳遞時間之差,與所述理論傳遞時間之間的比值;所述理論傳遞時間是計算獲得的當所述網(wǎng)絡的狀態(tài)為暢通時,至少一個測試消息在所述網(wǎng)絡中進行傳遞所需的總時間;所述實際傳遞時間是統(tǒng)計獲得的所述至少一個測試消息在所述網(wǎng)絡中進行傳遞所實際使用的總時間。
14.根據(jù)權利要求11所述的基于多內(nèi)核處理器的一致性處理裝置,其特征在于,所述稀疏目錄替換率為所述稀疏目錄在指定時間執(zhí)行讀操作的次數(shù),與所述指定時間內(nèi)所述稀疏目錄的空閑存儲空間大小為零的次數(shù)之間的比值。
【文檔編號】G06F12/08GK104252423SQ201310260830
【公開日】2014年12月31日 申請日期:2013年6月26日 優(yōu)先權日:2013年6月26日
【發(fā)明者】張輪凱, 范東睿, 葉笑春, 王達 申請人:華為技術有限公司, 中國科學院計算技術研究所