專利名稱:實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法和設備的制作方法
技術領域:
本發(fā)明主要涉及數據處理領域,以及更具體地,涉及一種方法和設備用于實施目錄結構以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性。
背景技術:
多處理計算機系統(tǒng)包括多個處理器,每個處理器用于執(zhí)行計算任務。一個特定的計算任務可以在一個處理器上執(zhí)行,同時其他的處理器執(zhí)行其他的與其無關的計算任務。作為選擇,在多個處理器之間分布特定計算任務的組件,以降低執(zhí)行整個計算任務所需的時間。
一個在商業(yè)上可用的多處理計算機系統(tǒng)是對稱多處理器(SMP)系統(tǒng)。一個SMP計算機系統(tǒng)通常包括通過高速緩存層連接到共享總線的多個處理器。連接到共享總線的存儲器被系統(tǒng)中多個處理器所共享。
很多計算機系統(tǒng)在主存儲器上有兩層高速緩存,分別稱為L1和L2高速緩存。在L1和L2高速緩存之間以及在L2高速緩存和主存儲器之間的傳輸單元稱為高速緩存線。當前,典型的計算機系統(tǒng)具有固定的線尺寸,通常對于L1及L2高速緩存的線尺寸相同。用于跟蹤高速緩存線的目錄包括高速緩存目錄、探聽過濾器以及遠程目錄。
目錄有多種結合方式,該結合典型地具有保留標簽信息或部分高速緩存線地址;狀態(tài)域,例如變更的、專有的、共享的、無效的(MESI)狀態(tài),典型地用于高速緩存管理;以及ECC域,用于提供錯誤校正和/或錯誤檢測信息。因為一個結合的所有類被并行訪問,所以錯誤校正/檢測位通常包括所有在單次目錄訪問中檢索到的結合的類。這樣做是為了效率以便分配用于錯誤校正/檢測的位數目最小。
錯誤校正/檢測能在每個目錄條目中分開地完成,代價是一個額外的存儲單元用于保留額外的錯誤校正/檢測位。
在有些計算機應用中,性能比可靠性更重要。如果錯誤發(fā)生,應用可以重啟。這樣的例子是工程和科學計算。通過從之前的已知狀態(tài)重啟可以在錯誤發(fā)生后恢復結果。
在其他的計算機應用中,可靠性比性能更重要。如果錯誤發(fā)生,就會對業(yè)務產生重大的影響。這樣的例子是業(yè)務交易計算。如果在交易過程中發(fā)生錯誤,將無法再恢復這個交易。
在獲得最好的性能或以最佳的穩(wěn)定性運行間存在折衷。例如,用于提供高可靠性的錯誤檢測和校正邏輯會消耗寶貴的集成電路裸片面積(silicon real estate),而集成電路裸片面積也可替代用于提升性能。錯誤檢測和校正在計算機邏輯中也增加了到關鍵路徑的延時。
需要有一種能夠有效地優(yōu)化計算機系統(tǒng)性能或可靠性的機制。理想情況下,用戶能夠根據特定的應用選擇為性能或可靠性配置同一塊硅。
發(fā)明內容
本發(fā)明的主要方面是提供一種方法和設備,用于實施目錄組織以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性。本發(fā)明的另一個重要方面是提供這種方法和設備,用于實施目錄組織以選擇性地充分優(yōu)化計算機系統(tǒng)中的性能或可靠性而不會帶來負面影響,并克服現有技術安排中的許多缺點。
簡而言之,提供了一種方法和設備,用于實施目錄組織以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性。目錄包括用戶選擇操作模式,其中用戶選擇操作模式包括性能模式和可靠性模式。在可靠性模式中,具有預定義的目錄位數目的目錄行用于錯誤校正和檢測。在性能模式中,不用于錯誤校正和檢測的回收(reclaim)目錄位用于更多的結合。
根據本發(fā)明的特征,一個或多個目錄位在性能模式中用于奇偶校驗檢查。在初始程序載入(IPL)時或在運行時間期間選擇性能模式或可靠性模式。當用戶選擇的操作模式在運行時間期間被改變時,在模式發(fā)生變化前提供一個目錄刷新。
根據本發(fā)明的特征,可選地,性能模式或可靠性模式被選擇用于特定的應用,并且目錄包括用于性能模式和可靠性模式的并發(fā)條目。每個目錄行在目錄的每一行包括一個位,用于指定該行當前使用的目錄格式,允許兩種格式在同一目錄陣列中共存。當用戶選擇的操作模式在運行時間期間變化時,不需要針對變化的模式的目錄刷新。
本發(fā)明和上述及其他目標和優(yōu)點可以從對附圖中示出的本發(fā)明優(yōu)選實施例的下面的詳細描述中得到最好的理解圖1是用于表示示例性計算機系統(tǒng)的框圖,其根據優(yōu)選的實施例用于實施選擇性的目錄組織以實現性能或可靠性;圖2A、2B和2C是示出根據優(yōu)選實施例的各個示例性的選擇性目錄組織的框圖表示,該選擇性目錄組織用于實現性能或可靠性;以及圖3是示出根據優(yōu)選的實施例的示例性用于選擇性地實施性能或可靠性的寫和讀目錄的邏輯實施的框圖。
具體實施例方式
根據本發(fā)明的特征,提供一個控制寄存器,其配置目錄行的排列。如果給定的應用需要高可靠性,則將更多的目錄位用于錯誤校正/檢測。如果高性能最關鍵而錯誤可以容忍,則將較少位或者零位會用于錯誤校正,并且可將這些錯誤校正位用于結合的更多方式。結合的更多方式可以使目錄跟蹤更多的高速緩存線,帶來更高的性能。
根據本發(fā)明的特征,目錄中的預定義的陣列存儲位例如被用于在高可靠性模式操作中支持完整的單錯校正雙錯檢測(SECDED)。在高性能模式中,這些在目錄中的存儲位被取代用于額外的目錄條目(標簽/MESI)。任何備用位可選地被用為簡單奇偶檢查以提供單位錯誤檢測。
現在參照附圖,在圖1中,所示的高速緩存相關的對稱多處理器(SMP)計算機系統(tǒng)整體上標識為標號100,用于實施根據優(yōu)選實施例的選擇性目錄組織以實現性能或可靠性。計算機系統(tǒng)100包括多個處理器0-N 102,每個包含各自的第一高速緩存L1存儲器0-N 104和第二更高層L2高速緩存0-N 106,它們通過互連或共享系統(tǒng)總線108連接到共享存儲器110和耦合到共享存儲器110的存儲器控制器112。
在簡化形式中所示的計算機系統(tǒng)100足以用于理解本發(fā)明。應當理解本發(fā)明并不局限于與圖1所示的高速緩存相關的對稱多處理器(SMP)計算機系統(tǒng)100一起使用。例如,計算機系統(tǒng)100并不局限于所示的兩層高速緩存104、106,也能夠使用多個附加分布式高速緩存。
根據本發(fā)明的特征,用戶可以針對根據優(yōu)選實施例的用于實現高性能或高可靠性的選擇性目錄組織,選擇可靠性模式或性能模式。用戶也能選擇例如在白天以高可靠性模式運行,然后用戶在晚上運行那些容易恢復但需要優(yōu)化的性能的程序,所以用戶為夜間運行選擇高性能模式。
根據本發(fā)明的特征,用戶可以在初始程序載入(IPL)時選擇可靠性模式或性能模式。這種模式可以在運行時間中改變,但是必須在模式變化前進行目錄刷新。
根據本發(fā)明的特征,目錄中的每一行的位可以指定當前用于這一行的目錄格式,允許兩種格式在同一陣列中共存。這種方法允許用戶在運行時間中切換模式而不需實施目錄刷新。
圖2A、2B和2C示出一個例子的實施,其使用一個128位寬1024深的陣列的目錄,用于實施根據優(yōu)選實施例的選擇性目錄組織以實現性能和可靠性。應當理解,圖示的實施支持也可以由用戶改變的高性能和高可靠性模式,以便在初識程序載入(IPL)和運行時間期間進行模式切換。
參照圖2A,每個目錄行包括整體上由標號200標識的多個域,包含標簽域202,如10位標簽;和狀態(tài)域204,如用于變更、專有、共享、無效(MESI)狀態(tài)的4個位。根據優(yōu)選實施例,標簽域202以及狀態(tài)域204包含在目錄條目中,用于實現性能和可靠性。
參照圖2B,圖示一個示例性目錄行,整體上由標號210標識,用于實施根據優(yōu)選實施例的性能模式。對于示例性的128位寬的陣列格式,性能模式目錄行210包括目錄位0-69上的奇偶校驗位127和目錄位70-126上的奇偶校驗位128。
參照圖2C,圖示一個示例性目錄行,整體上由標號250標識,用于實施根據優(yōu)選實施例的可靠性模式。。對于示例性的128位寬的陣列格式,可靠性模式目錄行250包括ECC域,所述多個ECC域包括提供錯誤檢測和錯誤校正信息的ECC位112-128。
參照圖3,圖示一個示例性讀和寫目錄的邏輯實施,整體上由標號300標識,用于根據優(yōu)選實施例選擇性地實施性能或可靠性??刂萍拇嫫?02接收針對性能模式或可靠性模式用戶選擇的操作模式的輸入。一對多路復用器304、306分別接收輸入8和ECC以及ECC和奇偶校驗位,并且響應于由控制寄存器302施加的用于所選性能模式或可靠性模式的選擇控制性號,將各個結合輸入耦合到目錄陣列310。在性能模式中,由14位/路+1個奇偶校驗位結合的9路使用127位寬的目錄陣列310。在可靠性模式中,由14位/路+16ECC位結合的8路使用128位寬的目錄陣列310。在可靠性模式中,8以外的結合類沒有被使用。
應當理解本發(fā)明可以應用于任何支持對于存儲內容進行錯誤校正和/或檢測的存儲應用,例如,包括圖1的計算機系統(tǒng)100中所示的數據高速緩存104、106和主存儲器110。
本發(fā)明參考在附圖中所示的本發(fā)明實施例的細節(jié)進行了描述,這些細節(jié)并不意在限制附加的權利要求中要求保護的本發(fā)明的范圍。
權利要求
1.一種用于實施目錄組織以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性的方法,包含接收性能模式和可靠性模式的用戶選擇操作模式;響應于可靠性模式的用戶選擇操作模式,提供具有預定義數量的用于錯誤校正和檢測的目錄位的目錄行;以及響應于性能模式的用戶選擇操作模式,提供具有少于所述預定義數量的用于錯誤校正和檢測的目錄位的目錄行。
2.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括響應于所述性能模式的用戶選擇操作模式,提供預定義目錄位用于奇偶校驗。
3.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括提供所述目錄行的每一行都具有格式位,所述格式位識別所述目錄行的可靠性模式或性能模式的目錄格式。
4.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括提供用于性能模式和可靠性模式的并發(fā)目錄行。
5.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,其中接收用戶選擇操作模式還包括接收在初始程序載入(IPL)過程中用戶選擇的性能模式或用戶選擇的可靠性模式。
6.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,其中接收用戶選擇操作模式還包括接收在運行時間過程中用戶選擇的性能模式或用戶選擇的可靠性模式。
7.如權利要求6所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括響應于在運行時間過程中用戶選擇操作模式的變化,在所述模式變化前提供目錄刷新。
8.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,包括響應于性能模式的用戶選擇操作模式,比可靠性模式提供更多的目錄條目。
9.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括提供每個目錄行都具有包含預定義位的標簽域和包含預定義位的狀態(tài)域。
10.如權利要求1所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的方法,還包括響應于性能模式的用戶選擇操作模式,比可靠性模式提供更多的結合方式。
11.一種用于實施目錄組織以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性的設備,包括控制寄存器,用于接收性能模式和可靠性模式的用戶選擇操作模式;預定義數量的目錄位,用于錯誤校正和檢測,具有針對可靠性模式的用戶選擇操作模式的目錄行;以及數量少于所述預定義數量的目錄位,用于錯誤校正和檢測,具有用于性能模式的用戶選擇操作模式的目錄行。
12.如權利要求11中所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的設備,其中每個目錄行包括包含預定義位的標簽域和包含預定義位的狀態(tài)域。
13.如權利要求11中所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的設備,其中所述控制寄存器接收在初始程序載入(IPL)過程中用戶選擇的性能模式或用戶選擇的可靠性模式。
14.如權利要求11中所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的設備,其中所述控制寄存器接收在運行時間過程中用戶選擇的性能模式或用戶選擇的可靠性模式。
15.如權利要求11中所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的設備,其中響應于在運行時間過程中用戶選擇操作模式的變化,在所述模式變化前提供目錄刷新。
16.如權利要求11中所述的用于實施目錄組織以選擇性地優(yōu)化性能或可靠性的設備,其中每個目錄行包括一個格式位,所述格式位識別所述目錄行的可靠性模式或性能模式的目錄格式。
全文摘要
提供了一種用于實施目錄組織以選擇性地優(yōu)化計算機系統(tǒng)中的性能或可靠性的方法和設備。目錄包括用戶選擇操作模式,包括性能模式和可靠性模式。在可靠性模式中,更多的目錄位用于錯誤校正和檢測。在性能模式中,不用于錯誤校正和檢測的回收目錄位用于更多的結合。
文檔編號G06F11/10GK1975682SQ200610147029
公開日2007年6月6日 申請日期2006年11月13日 優(yōu)先權日2005年11月30日
發(fā)明者杰拉爾德·基思·巴特利, 約翰·邁克爾·博肯哈根, 丹尼爾·保羅·科爾茨, 威廉·保羅·霍維斯 申請人:國際商業(yè)機器公司