TWI261198B - Simultaneous multi-threading processor circuits and computer program products configured to operate at different performance levels based on a number of operating threads and methods of operating - Google Patents
Simultaneous multi-threading processor circuits and computer program products configured to operate at different performance levels based on a number of operating threads and methods of operating Download PDFInfo
- Publication number
- TWI261198B TWI261198B TW093103698A TW93103698A TWI261198B TW I261198 B TWI261198 B TW I261198B TW 093103698 A TW093103698 A TW 093103698A TW 93103698 A TW93103698 A TW 93103698A TW I261198 B TWI261198 B TW I261198B
- Authority
- TW
- Taiwan
- Prior art keywords
- processor
- synchronous
- level
- performance
- circuit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000004590 computer program Methods 0.000 title claims abstract description 12
- 238000007667 floating Methods 0.000 claims abstract description 27
- 230000009467 reduction Effects 0.000 claims abstract description 4
- 230000003247 decreasing effect Effects 0.000 claims abstract 2
- 230000001360 synchronised effect Effects 0.000 claims description 128
- 230000015654 memory Effects 0.000 claims description 70
- 238000003860 storage Methods 0.000 claims description 25
- 238000010586 diagram Methods 0.000 claims description 20
- 238000005189 flocculation Methods 0.000 claims description 16
- 230000016615 flocculation Effects 0.000 claims description 14
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical compound [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 claims description 10
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 claims description 10
- 230000009471 action Effects 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 6
- 229910052742 iron Inorganic materials 0.000 claims description 5
- 241000288673 Chiroptera Species 0.000 claims description 4
- 206010011469 Crying Diseases 0.000 claims description 4
- 239000000463 material Substances 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 3
- 239000012634 fragment Substances 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 241000238366 Cephalopoda Species 0.000 claims 2
- 239000000126 substance Substances 0.000 claims 2
- 241000251468 Actinopterygii Species 0.000 claims 1
- 241000282994 Cervidae Species 0.000 claims 1
- 101000616556 Homo sapiens SH3 domain-containing protein 19 Proteins 0.000 claims 1
- 102100021782 SH3 domain-containing protein 19 Human genes 0.000 claims 1
- 230000003467 diminishing effect Effects 0.000 claims 1
- 239000002957 persistent organic pollutant Substances 0.000 claims 1
- 238000004513 sizing Methods 0.000 claims 1
- 239000002023 wood Substances 0.000 claims 1
- 230000008901 benefit Effects 0.000 abstract description 7
- 240000004244 Cucurbita moschata Species 0.000 description 5
- 235000009854 Cucurbita moschata Nutrition 0.000 description 5
- 235000009852 Cucurbita pepo Nutrition 0.000 description 5
- 235000020354 squash Nutrition 0.000 description 5
- 238000005188 flotation Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 2
- 241000894007 species Species 0.000 description 2
- 102100035353 Cyclin-dependent kinase 2-associated protein 1 Human genes 0.000 description 1
- 240000000249 Morus alba Species 0.000 description 1
- 235000008708 Morus alba Nutrition 0.000 description 1
- 241000237536 Mytilus edulis Species 0.000 description 1
- 241000269908 Platichthys flesus Species 0.000 description 1
- 238000001467 acupuncture Methods 0.000 description 1
- 230000001174 ascending effect Effects 0.000 description 1
- 210000004556 brain Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000013312 flour Nutrition 0.000 description 1
- 239000011888 foil Substances 0.000 description 1
- 239000003517 fume Substances 0.000 description 1
- 238000011065 in-situ storage Methods 0.000 description 1
- 239000010985 leather Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000008267 milk Substances 0.000 description 1
- 210000004080 milk Anatomy 0.000 description 1
- 235000013336 milk Nutrition 0.000 description 1
- 235000020638 mussel Nutrition 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004793 poor memory Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 239000002893 slag Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
- G06F9/30189—Instruction operation extension or modification according to execution mode, e.g. mode flag
-
- A—HUMAN NECESSITIES
- A41—WEARING APPAREL
- A41D—OUTERWEAR; PROTECTIVE GARMENTS; ACCESSORIES
- A41D19/00—Gloves
- A41D19/015—Protective gloves
- A41D19/01547—Protective gloves with grip improving means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Textile Engineering (AREA)
- Multimedia (AREA)
- Power Sources (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
1261198 九、發明說明: 【發明所屬之技術領域】 本發明是有關於一種電腦處理器的一般架構,且較特 別的是,有關於一種同步多絮電腦處理器、相關電腦程式 產品、以及其操作方法。 【先前技術】 同步多絮(Simultaneous Multi-Threading,以下簡稱 SMT)係為一種使用硬體多絮(muitithreading)方式,允許在 每一週期期間,多數個絮(threads)可各自發出指令的處理 器架構。不像在任一給定週期中只有一單一硬體情境 (context)(也就是絮)可啟動的其他硬體多絮架構,同步多絮 架構可允許所有絮情境(thread contexts)同時競爭並且分享 處理器資源。 同步多絮處理器可善加利用原本被浪費掉的週期,來 執行可降低在同步多絮處理器中的長潛伏(latency)動作效 應的指令。此外,當絮個數增加時,整體效能也會增加, 因此多絮處理器的消耗功率也可能增加。 第1圖係緣示一個習知的同步多絮處理器的方塊圖。 第1圖的習知同步多絮處理器的動作,是在Dean Μ Tullsen; Susan J. Egger; Henry M. Levy; Jack L. Lo; Rebecca L· Stamm 等人;Exploiting Choice: Instruction Fetch and Issue on an Implementable Simultaneous Multithreading Processor, The 23rd Annual International Symposium on Computer Architecture,pp. 191-202, 1996 中 6 13145pif2.doc 1261198 所揭露,而且本發明在此將合併參考上述論文以做說明。 因為習知的同步多絮處理器的架構與動作,為熟習相關技 蟄者所熟知,因此其細節在此不再贅述。 【發明内容】 本發明實施例提供一種處理電路、一種電腦程式產 品、和/或一種依據多數個操作絮在不同效能水平下由—同 絮處理器操作之方法。舉例而言,在根據本發明的部 ^實,例中,與在同步多絮處理器中的一絮動作相關之二 浮點單元(floating point unit)或資料快取(data cache)的處理 ,路,可根據目前由同步多絮處理器所操作的絮個數,在 尚功率模式或低功率模式下操作。此外,當由同步多絮處 理态所彳呆作的絮個數增加時,可能會降低處理電 崎 _:因此在降低與絮相關之處理電路所消耗== 日寸,提供同步多絮處理器架構上之優勢。此外,同步多絮 ^理器亦可以相同功率但較高效能之方式,或是以消耗較 夕功率但較習知同步多絮處理器較高效能之方式操作。 1在根據本發明的部分實施例中,當同步多絮處理器 ^斤作的絮個數係小於或等於—臨界值時 -第-效能水平上操作,而且當同步多絮 則%作的絮她係大於該臨界值時,處理電路 成在一第二效能水平上操作。 /、 在根據本發明的部分實施例中 =電::::步多絮處理器目前所操作的= 冤路所用的一效能水平。在根據本發明的部分實 13145pif2.doc 7 1261198 ^日修(更11£替換^ 施例中,當同步多絮處理器目 ::::值;=:::-== 目前所操作的絮個數超過該心值時,== 在根據本發明的部分實施例中, 細作的絮個數超過大於第一臨界值的_1處= =能水:控,可將提供給處理電路二=值 牛低於第一效旎水平的一第三效能水平。 H明提供多種效能水平變化的實施例。舉例而言, 在根據本發明的部分實施例中,處理電路可為包括一 圮憶體(tag memory)與一資料記憶體咖 二 取記憶體電路(cache mem〇rycircuit)。其中,#快 二 電,是以第—效能水平操㈣,資料記賴可提供與標籤 。己體同時存取的快取資料(cached data)。當快取記憶體電 路=以低於第-效能水平的一第二效能水平操作時,資料 記憶體可提供對命巾(hit)賴記憶齡反應的快取資料。 在根據本發明的部分實施例中,快取記憶體可為由指 “呆作以儲存資料的-資料快取記憶體(data cache =em〇ry),以及用來儲存在相關資料上操作的指令的一指 々陕取5己H (instruction cache memory)的至少其中之 一 ^在根據本發明的部分實施例中,當以第二效能水平操 作日寸,貧料記憶體可更加係架構成不提供對非命中(miss) 8 13145pif2.doc 1261198 標戴s己憶體起反應的快取資料。 —在^康本發明的部分實施例中,處理電 早兀。在根據本發明的部分實施例中,-馮、子,’、、占 楚一 '.<v - "、早凡►可為 個 弟-〉予點早兀,而且當同步多絮處理器目 數係小於或等於一臨界值時,第—浮、、絮個 輦一对处★巫μ 4口| 早^係架構成在一 弟效此水千上刼作。此外,同步多絮處理器 -個第二洋點電路,而且當同步多絮處職目 口^ 絮個數係大於該臨界值時,該第二浮^ ^斤操作的 第二效能水平上操作。 U講錢構成在- 在根據本發明的部分實施例中,可架構—個效 控制電路,藉以響應在同步多絮處理器中已 — 作的絮個數,分別增加或減少同步多絮n成= 的絮健。 ~^目讀#作 在根據本發明的部分實施例中,可架構一 電路,響朗步多絮處理器目前所操麵 :的絮個數,在低於第一效能水平的一第二效能二操 在根據本發_部分實施例巾,效能水平控制電路係 賴成響應當增加-新絮以將同步多絮處理器目前所操作 的絮個數,從小於或等於臨界值,增加至大於臨界值數時, 減少提供至至少-處理電_效能轉。在雜本發明的 部分貫施例巾,魏水平控㈣路係_成當同步多 理器目前所操作的絮個數超過所有的遞增臨界值 (ascending threshold values)時,將處理電路的效能水平, 13145pif2.doc 9 1261198 降低至複數個遞減(desc⑶效能水平的其中之一。 芊構發明的部分實施例中’效能水平控制電路係 ^曰應虽同步多絮處理器目前所操作的絮個數,從小 j寺於臨界值,增加至大於臨界值時,保持在用於 的二里:路的—乐—效能水平’並且將低於第-效能水平 、乐—效能水平,提供至一第二處理電路。 架構Hit本發明的其他實施例中,效能水平控制電路係 效能t =步多絮處理器目前所操作的絮個數,提供— 尺千、,5在同步多絮處理器中的處理電路。 路在Situ其他實施财,可架構—個絮管理電 電路,扑時,將與同步多絮處理器相關之處理 絮個數與至少一臨界值 二=理:目爾作的 其中之―,提供給果,將稷數個效能水平的 在根據本發明的其他實施例中,與同步 :之f取記憶體可包括-個標籤記憶體與-個;料: :可多絮處理器目前所操作的絮個數,資= 才存取髓同步存取,或是在賴記憶體存取之後 才存取貧料記憶體。 交 顯易之上述和其他目的、频、和優點能更明 說明如下 佳實關,並配合_圖式,作詳細 【實施方式】 I3l45pif2.doc 10 1261198 ,以下將參考所附繪圖’詳細說明本發明的較佳實施 =。在下文中,相同的參考號碼代表相同的元件。經由本 發明之說明及f作,可充分了解及學料^ 及/或優點。 u特色 热習相關技藝者當知雖然在此所用的第— ,述各種元件,但該些元件並不受限於該特:二名 =所用:名詞係用來區分元件之用。因此,在此所討論 1弟一讀,在另—章節中亦可為—第二元件。同理,在 此=时論的第二元件,亦可為另—章節中的第—元件,只 要/、不偏離本發明之精神即可。 口 ,習相關技藝者當知本發明亦可以電路、電腦程式產 扣、和/或€腦程式產品的方式實現。因此,本發明的實現 包括完全用硬體實現、完全用軟體實現、或部分硬 f縣权體的方式實現。此外,本發明可以用在-電腦可 。貝=儲存舰上,具有儲存在該制巾的電腦程式碼的一 电腦程式產品的方式實現。包括硬碟、CD-ROMs、光學 儲存裝置、或雜儲存裝置在内的任何電腦可讀取 可應用於本發明。 、/' a 本發明用來執行運算的電腦程式碼或”程式碼,,可以 如 JAVA、Smalltalk 或 c++、JavaScdpt、visuai Basic、 TS^L'Ped的物件導向程式語言,或以各種其他程式語言 編寫。本發明的軟體實補並不纽於必須以某種特定^ 式語言實現。部分程式碼村完全在巾闕飼服哭 (mt_ediaryserver)所用的一或多個系統上執行。 时 13145pif2.doc 11 1261198 該程式碼可完全在一或多個電腦系統上執行 在一個飼服器(server)上執行,而另一部分在配置於二= = ’hent deviee)内的―個客戶端(diem)上執行,或甚 至可虽成位於通訊網路的中間點(mtermediate p 一個代理伺服H(piOxy server)使用。在後—個 =二置可能連接至區域網路(LAN)或廣域網: (X如、郷網路)上的-個伺服器,或是經由網際 (例如經由網際網路服務供應商)與外界連接。本發明可 不同類型的電腦網路上所運行的各觀定實現。 以下參考用來描述根據本發明實施例之方法 及電腦程式產品的錢_流_,詳細說 明 作相關技藝者當知其中所示的方塊圖與流程圖的ί -方塊,以及謂圖與流簡方塊的各馳合,皆可以* 腦程式指令實現。該些電難式指令可 = 電路、專門崎電腦、或其料程纽資贼理裝置 以產生2可由電腦的處理器或其他可程式化資料處理裝 置執行的機n指令,觀產生絲執行方塊圖和^程^ 方塊或方塊組合所指定的各種功能。 該些電腦程式指令可被左认 , 由ϋ + 儲存 電腦可讀取記憶體 中細或其他可程式化資料處理褒置以特定方式操 作’错此使得儲存在電腦可讀取記憶體中的指令,可產生 包括可執^^圖和/或流程圖方塊或方塊組合所指定的 各種功自㈤日ϋ生產物件㈣deQf_ufae_。 該些電腦程式指令可载入一個同步多絮處理器電路或 13145pif2.doc 12 1261198 可程式化資料處理裝置,勃 或其他可程式化裝置上執行在電腦 此在電腦或其他可程式 現的處理’藉 或流程圖方塊或方塊組合所指定的^重用來▲實。現方塊圖和/ 本發明實施例提供與在一同步夕口 此口口 相關之處理電路。其中,古亥产理卞夕絮处理器中的絮動作 絮處理器目前所操作的絮個%文,】=架構成根據同步多 作。熟習相關技藝者當知該些各種效能水平上操 種不同的電路運算速率種包括各 ㈣―)。在根據本發明的^種不同的精密度 處理電路可在不同時脈 ^ 據本發明的 :絮的=::的:分實施例中,與在同步 ㈣作相關之處理電路,例如浮點單元 根據同步/絮處理器目前所操作的絮個 率的低功桌;^脈料的〶功率模^ ’或在—個低時脈速 率f力率核式下操作。此外,當由同步多絮處理器所操 作的=個數增加時’可能會降低處理電路的效能水平,因 絮相關之處理電路所消耗的功率的同時,提供 同步多絮處理器架構上之優勢。 无、白相關技蟄者當知本發明的實施例可展現絮層次 _ad如d)之並行運算能力,也就是可用多數個絮,並 行,執行,、所内含的多個處理。在此所用的名詞” 絮”㈣㈣可為具有相關指令與資料之個別處理。-個絮 13145pif2.doc 13 1261198 H. Tr™ ---------- 年月曰蜂) u♦替換这 :弋表?有夕重處理的並行電腦裎式-部分的-個處理 ㈣可代表—個可與其他程式分離而獨自運 式:每個絮可具有-相關動態,例如針對 :曰7貝;、、程式計數器(Program Counter)、和/或暫 :二:gl::)所疋義之相關狀態。其中,絮的相關狀態可 包含由一赠判執行«㈣之足夠資訊。 發明的部分實施射,可架構—個效能水平 控制電路’將各種效能水平,提供至配置給 處理器中所建立的絮的處理電路。舉例而言,效能 二第-效能水平,以使得處理電路可 ΐ二亦可提供-第二效能水平給處理 每心/、“㈣畅式下操作。在根據本發明的其他 Ϊ二工能水平控制電路更加提供中級(in_ediate) ^千(也从介於高功率與低功率之_其他效能水 下#^^本务明的部分實施例中’在各種不同效能水平 體的二=:’I:包含-標鐵記憶體與-資料記憶 是在高功率㈣下“'日!^體=第—效能水平(也就 中,η 作寸,可不管存取標籤記憶體是否命 佾體的標籤記憶體與資料記憶體。因為標籤記 :較佳:能:、:=高’所以同時存取資料記憶體可提 (Ah ^ ^ , 万面,快取記憶體亦可在第二效能水平 命下操作’其中資料記憶體只能針對 不、°思_的反應而存取。因此,當標籤非命中(tag 13145pif2.doc 14 1261198 miss)的情形發生時,玎避免與存取資料記憶體相關之部分 功率消耗。此外,當標籤命中(tag hit)的情形發生時,存取 標籤記憶體與存取資料記憶體亦可能有些微時間偏差。 在根據本發明的其他實施例中,與由同步多絮處理器 所操作的絮相關之處理電路,可為一指令快取(instruction cache),或其他類型的處理電路,例如浮點電路或整數/載 入_儲存電路(integer/load_store circuits)。此外,每一處理電 都了在不同效此水平F操作。舉例而言,在根據本發明 ^部分實施财,快取記㈣、指令快取、及浮點電路與 正數/载入-儲存電路,都可以不同效能水平同時操作。 在根據本發明的其他實施例中,相同類型的處理電路 /予點電路與整數/載入-儲存電路)可分為不同的效能 使得部分電路可設計成專門用來在第—效能水平 其他處理電路可設計成專門絲在第二效能水 置給;步多據本發明的部分實施例中’配 他浮^下插作,而配置給同步多絮處理器中的絮的其 則係架構成在低功率模式下操作。 器的方塊㈡本發明實· 器200中建立—新t ,圖所二當在一個同步多絮處理 處理電路給新建立的^個^理電路205會配置一組 個程式計數器215、—也 配置的處理電路可包括一 存器250。其他處理電路^、日存器、祕、以及-組整數暫 电路亦可配置給新建立的絮使用。熟 13145pif2.doc 15 1261198 習相關技藝者當知當絮處理結束時,配置給該絮使用的處 理電路應該釋出,以使其可再被配置給後續建立的其他絮 使用。 在其操作中,首先一個擷取電路(fetchcircuit)21〇會根 據由所配置的程式計數器215所提供的一位置資訊,從一 指令快取220擷取一指令,並且將其輸出至一解碼器225。 解碼器225將一個解碼過的指令,輸出至一個暫存器更名 電路(register renaming drcuit)230。根據暫存器更名電路 23〇所輸出的指令類型,更名過的指令會被輸出至一浮點 4曰令仔列(floating point instruction queue)235 或一整數指 令佇列(integer instruction queue)24〇。舉例而言,如果暫存 器更新電路230所輸出的指令類型為一浮點指令,則該指 令會載入浮點指令佇列235 ,而如果暫存器更新電路23〇 所輸出的指令類型為-整數指令,則該指令會載入整數指 令符列240。 人攸子點♦日令仵列235或整數指令仵% 24〇所輸出的指 =會載人-個相關暫存器,以使其由— 简入-儲存電路260執行。較明確地說,; 站才曰々會從净點指令佇列235, 245中的指令可由二電路二t :’,:使二、亦可:取儲存在資料快取265中的浮點資 時,可灸電路255(從浮點暫存器245)執行指令 才J ,考储存在育料快取265中的資 整數指令會從整數指令符列24〇,傳送至整數暫存器 13145pif2.doc 16 1261198 250。整數/¾入·儲存冑路可存 中的整數指令以執行祕指令。:暫存益250 亦可存取資斜你嵌— 正數/載入-儲存電路260 、"、取265,以使得儲存在整數暫存哭250中 的正數指令,可參考儲存在資料快取265 ^ 265是在第二。Γ確地說,效能水平可控制資料快取 平或第二效能水平(也就是在高功率模 °舉例而言’絮管理電路2〇5可 =弟-效能水平,以使得資料快取撕在高功率模式下 ΐ是提供第二效能水平,以使得資料快取265可在 if έ=ί 了操作。熟f相關技藝者當知雖然資料快取 的動作疋以第-效能水平或第二效能水平在此做說 明丄在根據本發明的部分實施例中,亦可使用其他更多的 效能水平。 第3圖係顯示一個根據本發明實施例的絮管理電路的 方塊圖。請參考第3圖所示,絮管理電路3〇5從作業系統 (op⑽ting system),或從與在同步多絮處理器中所建立的 絮相關之-個絮產生電路接收資訊。絮管理電路3仍包 括一個絮配置電路(thread allocati〇n circuit)33〇,用來將根 據本發明的處理電路,配置給由同步多絮處理器所建立的 絮使用。 絮:理電路305更加包括一個效能水平控制電路34〇, 用來提供效能水平給與由同步多絮處理器所建立的絮相關 之處理電路。效能水平控制電路340可根據同步多絮處理 13145pif2.doc 17 1261198 確地說斤數’提供效能水平給處理電路。較明 效能水平^^I 器目前所操作的絮個數增加時, 絮产理講4G可提供遞減的效能水平給與同步多 步的絮相關之處理電路。藉由響應由同 路340、可^的f的建立與結束,效能水平控制電 處理C 内部記數值,藉此決定同步多絮 处里™目刖所刼作的絮個數。 …热習相關技藝者當知提供給根據本發_處理電路 ,此水平’可能具有如第—效能水平(或高功率模式)的— 個糸統預設值(default value)。因此,當絮加入時,提供^ 處理电路的效能水平可降低,以降低效能與處理電路的消 =卜_目關技藝者當知效能水平可經由一訊號線提 ^至處理電路,其中該訊號線可傳導至少具有第—效能水 平及第二效能水平兩狀態的一個訊號。舉例而言,丄=初 始化(initialize)同步多絮處理器之後,由同步多絮處理哭所 操作的絮個數為零,其中提供給處理電路的效能水平二系 統預設值為系統預設的第一效能水平(高功率模式卜者絮 加入而且其總數最後超過一臨界值時,藉由改變用來^示 哪一個效能水平將被使用的訊號的狀態,可將效能水 成第二效能水平。 又 第4圖係顯示一個根據本發明實施例的效能水平於制 電路的方塊圖。請參考第4圖所示,一個計數器電路=〇5 可從作業系統或參考第3圖所說明的絮產生電接收資 訊’藉以決定同步多絮處理器目前所操作的絮個數。如果 13145pif2.doc 18 1261198 收到的資訊是與建立新絮有關時,舉例而言,計數 接下電路秘會增加 , 理器目前所操作的絮個數為五個的事實。l夕絮處 計T電路405可將同步多絮處理器目前所操作的絮 計至—個比較器電路41G。—個臨界值也會連同 ΐ二ο ΐ器目前所操作的絮個數,-起提供給比較器 即合料·/ 值可為用來指示超過該絮健效能水平 可程式值。因此,當同步多絮處理器目前所 二?:文係小於或等於臨界值時,提供給處理電路的 =能模式可維持在如高功賴式的第—效能水平。铁而, =2處理器目前所操作的絮個數超過臨界值時效能 水千可降低’崎低同Μ絮處理H的消耗功率。 苐5圖係顯示-個用來說明根據本發明實施例的效能 问步多絮處理态時,同步冬絮# σ 500) ^ /、处里态目刖所操作的絮個數 ^令(方塊500)。A在同步多絮處理器中建 二目^t#作的絮個數或 減乂(方塊5G5)。舉例而言,當同步多理四 個的值為4。當新建立—個絮時值= 乍四 4而當接下來該些絮的其中一絮結束時,N的值料^回 同步多絮處理器目前所操作的絮個數 值相比較(方塊51〇)。如果同步多絮處理器目前所操:絮 13145pif2.doc 19 •<一
1261198 於或等於臨界值,則效能水平控制電路會提供第— ^水平給配置給㈣處理電路(方塊515)。舉例而言,如 目,丨:ΐ給絮的處理電路是參考第2圖說明的快取記憶體, 二二、取記憶體可同時存取標籤記憶體與資料記憶體(也 就疋在㈣率模式下操作)。另—方面, :目,桑作的絮個數係大於臨界值(方塊51〇),4^^^ 工1¾路會提供第二效能水平給與絮相關之處理電路(方 塊=0)。舉例而言’在上述參考第2圖的實關中,快取 體可在第二效能水平下操作,以使得只有在響應命中 標籤兄憶體的情況下,才會存取㈣記憶體(也就是在低功 率模式下操作)。 第6圖係頌示一個根據本發明實施例的快取記憶體的 方塊圖。請參考第6圖所示,一個標籤記憶體610係架構 成用來儲存在一個資料記憶體62〇中所儲存的資料的位 址。標籤記憶體610是用與即將由同步多絮處理器所處理 的資料相關之位址所存取。一個標籤比較電路63〇會將標 籤圯憶體610中的項目(entries)與該位址相比較,以決定同 步多絮處理器所需要的資料是否儲存在資料記憶體62〇 中。如果標籤比較電路630決定所需的資料確實儲存在資 料記憶體620中,即代表標籤命中。否則的話,代表標籤 非命中。如果標籤命中的情形發生,一個輸出啟動電路 (output enable circuit)650就會啟動(enable)將從資料記憶體 620輸出的資料。 根據本發明的實施例,由效能水平控制電路所提供的 20 13145pif2.doc 1261198 效能水平,是用來控制標籤記憶體61〇與 能3確地說t果提供給快取記憶”路是一 θ 則個資料记憶體啟動電路640合不管 標籤命中,都會啟動即將與標籤記憶體‘同時 體620。相反的,如果提供給快取記憶 电塔_不胃允树取資料記憶體620。 f 口 t在根據本發明的實施例中,在高功率模式下, 體,與f料記憶體620可同時被存取,藉此提 而ί在低功率模式時,只有在標鐵記憶體 低快^ 卩中¥’才會存取#料記鐘62G,因此可降 低决取圮憶體的消耗功率。 嫌^ i目ί顯示—個根據本發明實施例的指令快取的方 取lit: 7圖所示,絮管理電路將—個指令快 处… 新絮。包含在絮管理電路中的效 二入:制電路提供一個效能水平給指令快取722,以控 制才曰令快取722如何操作。 高功m地說,指令快取722可響應第—效能水平,在 ,亦係架構成響應第二效能水平,在低 多絮⑹芩考第5圖的上述說明’可根據同步 二=二目_處理的絮個數’提供第—效能水平或第 令快取722。此外,指令快取722亦可以 摔作=3_說_似的方式’在不同效能水平下 ”中在低功率模式下’資料記憶體62〇只有在響應 13145pif2.doc 21 1261198 命中的情況下才可被存取。舉例而言,當已經判定接下來 的記憶體存取為存取相同的快取線(cache une)時,可提供 不同效忐水平給指令快取,以允許其執行直接存取。這種 類型的限制可用一個可允許讀取標籤隨機存取記憶體 (Random Access Memory,RAM)的直接 _ 定址快取 (direct-addressed cache)而避免,此法亦可避免執行標籤比 較。此外’在直接·定址快取中,亦可避免虛擬位址 實際位址的運算。 吳马 第8圖係顯示根據本發明實施例具有不同效能 獨立處理電路的方塊圖。請參考第8圖所示,—個第—、、i 點電路805係架構成在第一效能水平下操作,而: =電路奶則_成在低於第—效能水平的—個第= J模:下。換言之,第-浮點電路805可適用於高功 革核式,而弟二浮點電路815則可適用於低 水平'下餘第^能 >丁 r執仃處理,而一個箆— 係举播士户—- 弟—正數/載入-儲存電路820則 _係^成= 二能水平下執行處理。一個絮管理電路 -效能水平係提供至=不问的效能水平。較明確地說,第 係提供至第二浮點V路二0!所提供的第二效能水平 82〇。因此,第舁弟—整數/載入-儲存電路 路8!5與第二整數 =的絮,而第二浮點電 诚仔电路820,可配置給在第二效 13I45pii2.doc 22 1261198 ,水平下操作的絮。熟f相關技藝者當 第一效能水平,可由絮管 田 效硓水平及 應當知當需要其他效能水平時=3、或同時提供。亦 載入-儲存電路的個數可大於:個戶作供的净點電路與整數/ 根據本發明實施例,當 絮個數係小於或等於第—臨界值『所操作的 805與第一整數/载入-儲存電路81〇提;;第!4":=電路 同步多絮處理器目前所操作的絮個 _^=平。當 :!第二浮點電路815與第二整數/載入儲;= k供弟二效能水平。因此,當 子二路820 :絮個數超過臨界值時,所有絮(包括先前存在:::::: ,藉此可降低同步多絮處理器健存電路 入::路關技可藝用者提當:::本發明的浮 储存4 了驗(、不同效能水平的不同時脈速率,和 /或^冋電路類型(例如不同類型的CM〇s裝置)操作。 而言,在根據本發明的部分實施例中,與同步多絮處理哭 中的絮動作相關之浮點電路,可根據同步多絮處理器目 所操作的絮個數’在高時脈速率的高功率模式或是在低 脈速率的低功率模式下操作。 一 第9圖係顯示一個包括複數個處理電路的同步多絮處 理器實施例的方塊圖,其中該些處理電路會響應由絮管理 電路900所提供的不同效能水平動作。較明確地說絮管 理電路900提供三種不同效能水平給一個指令快取93〇^ 13145pif2.doc 23 1261198 一個資料快取965、筮 R . ^ , 第—及第二整數/載入針Γ洋點電路905,915、以及 當知提m及Γ_路91(},92(}°熟習相關技藝者 笛一#及弟—洋點電路905, 915與提供給第—及 =數/載人_儲存電路9iq, _的效能水平,可以 ^圖的上述說明方式操作。此外,資料快取965與指八 可分別以參考第2圖與第7圖的上述說明方: 因^’可對不同處理電路提供不同效能水平,使處理 同效能水平下操作,藉此更能有效控制效能免 ^ f ^之f的權衡得綠ade_。舉例而言,指令快取 11在弟-效能水平下操作,而資料快取265 浮點電路905 915,w β馀 立斤 ” 禾— 910 92Π π 及弟一及第二整數/載入-儲存電路 ,〇,可在#二效能水平τ·。 他效能水平的組合。 其 第10圖係顯示-姻來說明包含在第9圖所示的 :里,_中的效能水平控制電路實施例動作的方塊圖。 較明碟地說,效能水倾制電路包括下顺件。— ::0,該計數器1000響應同步多絮處理器中新建立盥 、、、口束處理的絮的變化,增加或減少其計數。第新 存器1015, 1020, 1225,其中每一該些暫存 ^ 個比較器電路103(),削,1G4(),_f性連接至該^ 器戰腳,〗225的其中—對應暫存器。較明確ς說,子 儲存第-臨界值的第-暫存器⑻5,係電性連接至第一比 13145pi0.doc 24 1261198 =電路删。儲存第二臨界值的第二暫存器腳 ,接至第二比較器、電路1035。儲存第三臨界 $ 存為聰,係電性連接至第三比較器電路胸。、智 每-馳比較器電路麵,1035, 1〇4〇,會將同步 處理器目前所㈣的絮她,與儲存在其龍暫存= 臣品界值相比較。如果第-比較器電路_決㈣勺 理器目前所猶的絮純係大於儲存在第-暫存器^ 中的第一臨界值’則第一比較器電路1〇3〇 5 9圖所示,輸出至資料快取965的效能水平刚5。:如弟 當同步多絮處理ϋ目前所操作的絮個數超過儲 ’ =1015的臨界值時,資料快取965中的效能水平,^ 變為第二效能水平(也就是從高功率模= 如果第二比較器電路舰決定同步多絮處理器目 才木作的絮個數係大於儲存在第二暫存器麵中的 =’則第二比較器電路1〇35會產生一個輸出至指令 3〇的效能水平1050。目此,當同步多絮處理器目前所 作的絮個數超過儲存在第二暫存器腦中的臨界 = 如果第三比較器電路1〇4〇決定同步多絮處理器目 麵作的絮個數係大於儲存在第三暫存器應 ,,則第二比較器電路1〇4〇會產生一個輸出至第—及〜二 洋點電路905, 915,以及第—及第二整數/載入_儲存g 7决取930的效能水平,會從第一效能水平變為第二: 水平(也就是從高功率模式變為低功率模式)。 也 13145pif2.doc 25
910, 920的效能水平1〇55。因 ^ 1261198 所操麵f個數超存在第_ =时夕絮處理器目前 時,該些處理電路的效能水中的臨界值 二效能水平(也就是從高功率水平變為弟 相關技藝者當知輸出至浮點核式)。熟習 第11圖係顯示-個=來說述說明方式操作。
平控制電路實施例方法的流。所不的效能水 剛初始化同步多絮處理器時,二:ζ弟11圖所示’當 ΛΑ . y T W步多絮處理器目前所椏作 =個數為零(方塊胸)。當同步多絮處理器建立新絮或 力ΐίΐ成時=步多絮處理器目前所操作的絮個數會增 或減V,以此提供一個代表同步多 理哭 的絮個數的個數Ν(方塊1105)。 ”口口月,J斤插乍
μ如果同步多絮處理器目_操作的絮個數小於或等於 弟^ "值(方塊1110),則所有處理電路會持續保持在第 —(高)效能水平上操作(方塊1115)。3 一方面,如果同步 多絮處理器目前所操作的絮個數超過第—臨界值(方塊 UlO),則效能水平1045所輪人的處理電路會開始以第二 效能水平(也就是低功率模式)操作(方塊112〇)。 〜如果同纟多絮處理器目冑所操作的絮個數小於或等於 第二臨界值(方塊1125),則當則效能水平1〇45(如上所述) 所輸入的處理電路持續保持以第二效能水平操作時,效能 水平1050(與效能水平1〇55)所輸入的處理電路會開始(並 且持續保持)以第一效能水平操作(方塊113〇)。 26 13145pif2.doc 1261198 如果同步多絮處理器目前所操作的絮個數超過第二奸 ,值(方塊1125),則紗水平刪所輸人的處理電路連同 〜效=水平圓所輸人的處理電路,會—起開始(並且持 ^持)以$二效能水平操作(方塊1135),而效能水平1055 所輸入的處理電路,則會以第一效能水平操作。 如果同步多絮處理器目前所操作的絮個數小 的處理 曰貝保持以弟-效能水平操作,而效能水平ι〇45 tir1G5G所輸人的處理電路,則會持續保持以第二 11 塊1145)。如果同步多絮處理器目前所摔 所於過第三臨界值(方塊_),則效能水平1055 (也;^理電路,會開始(並且持續㈣)以第二效能水平 (也就疋在低功率模式下)操作(方塊115〇)。 處理本f明的實闕可提供與在同步多絮 電路:加li複數個處理電路。其中該些處理 數成可根據同步多絮處理器目前所操作的絮個 分Ί由起水平操作。舉例而言,在根據本發明的部 理哭中的^例如浮點單元或資料快取的與在同步多絮處 目ΐ所^ 相關之處理電路’可根據同步多絮處理器 此外*,Γ絮個數’在高功率模式或低功率模式下操作。 時,可卩久你I同步多絮處理器目前所操作的絮個數增加 理電路理電路的效能水平,藉此降低與絮相關之處 優勢。兴例ΐ率,並且藉此展現同步多絮處理器的架構 而U,在根據本發明的部分實施例中,根據本 13145pif2.doc 27 1261198 發明的處理電路可用可提供不同效能水平的不同 率,和/或使用不同電路類型(例如不同類型的⑽$ 操^舉例而言,在根據本發明的部分實施例中,例二置) 點早兀或貝料快取的與在同步多絮處理界子 之處理電路,可根據同步多絮處 、”動乍相關 數,在古日卑脈过至06丄丄方” 叩目刖所操作的絮個 L: "7功率模式或低時脈速率的低功率模 雖然本發明已以較佳實施例揭露如上,铁 此技藝者,在不脫離本發明= ,圍内,虽可作各種之更動與潤飾, 申 乾圍當 =4附之申請專利範圍所 之保& 【圖式簡單說明】 々平 圖 第1圖係顯示—個習知的同步多絮處理 器架構的方塊 器的方塊圖 第3圖係顯示 方塊圖。 Γ方2-不—個根據本發明實施例的同步多絮處理 個根據本發明實施例的絮管理電路的 電路的方^根據本發明實施例的效能水平控制 實施例的效 水平;顯示-個用來說明根據本發明 卞^制電路的流程圖。 取記憶體的 方塊圖。51係—個根據本發明實施例的快 13145pi0.doc 28 1261198 第7圖係顯示一個根據本發明實施例的同步多絮處理 器的方塊圖。 第8圖係顯示一個根據本發明實施例的同步多絮處理 器的方塊圖。 第9圖係顯示一個根據本發明實施例的同步多絮處理 器的方塊圖。 第10圖係顯示一個根據本發明實施例的效能水平控制 電路的方塊圖。 第11圖係顯示一個用來說明根據本發明實施例的效能 水平控制電路的流程圖。 【主要元件符號說明】 200 :同步多絮處理器 205 :絮管理電路 210 :擷取電路 215 :程式計數器 220 :指令快取 225 :解碼器 230 :暫存器更名電路 235 :浮點指令佇列 240 :整數指令佇列 245 :浮點暫存器 250 :整數暫存器 255 :浮點電路 260 :整數/載入-儲存電路 29 13145pif2.doc 1261198 265 :資料快取 300 ··絮管理電路 305 :絮管理電路 330 :絮配置電路 340 :效能水平控制電路 405 :計數器電路 410 :比較器電路 500〜520 ··流程步驟 610 :標籤記憶體 620 :資料記憶體 630 ··標籤比較電路 640 :資料記憶體啟動電路 650 :輸出啟動電路 700 ··絮管理電路 722 :指令快取 800 :絮管理電路 805 ··第一浮點電路 810:第一整數/載入-儲存電路 815 :第二浮點電路 820:第二整數/載入-儲存電路 900 :絮管理電路 905 :第一浮點電路 910:第一整數/載入-儲存電路 915 :第二浮點電路 30 13145pif2.doc 1261198 920:第二整數/載入-儲存電路 930 :指令快取 965 :資料快取 1000 :計數器 1015 :第一暫存器 1020 :第二暫存器 1025 :第三暫存器 1030 :第一比較器電路 1035 ··第二比較器電路 1040 :第三比較器電路 1100〜1150 ··流程步驟 31 13145pif2.doc
Claims (1)
1261198 十、申請專利範圍: 1· 一種包括至少一處理電 一 器,其特徵在於:該些處理電路同步多絮(SMT)處理 處理器中的一絮動作相關,】且構成與在該同步多絮 前所操作的該些絮的一個數,以妒$豕該同步多絮處理器目 2·如申請專利範圍第丨項所求文们不同效能水平操作。 中當該同步多絮處理器目_‘2步多絮處理器,其 或等於一臨界值時,該至少—广理/ μ些絮的該個數小於 效能水平操作;以及 電路係架構成以一第一 其中,當該同步多絮處理器目予 個數大於該臨界值時,該至少一剐斤知作的該些絮的該 二效能水平操作。 夕处理電路係架構成以一第 加包=申請專利範圍第1項所述之同步多絮處理器,更 一效能水平控制電路,係牟 ㈣所操作的該些絮的該個數,鮮該 步多絮處理 提供一效能水平。 "^至〉、一處理電路, 4.如申請專利範圍第3 中當該同步多絮處理器目前所摔作處理器,其 或等於合 』^木作的该些絮的該個數小於 -處理電能制!路將提供至該至少 苴φ〜欢此不十徒幵至一弟一效能水平;以及 個數超過二處理器目前所操作的該些絮的該 小一卢王二L界值岭,邊效能水平控制電路將提供至該至 ^地理電路的該效能水平,降低至低於該第一效能水平 32 13145pif2.doc 1261198 的一第二效能水平。 5·如申睛專利範圍第4項 中該臨界值包括一第一臨界值,多絮處理器,其 §前所操作的該些絮的該個數超過高二=器 一處理電路轉提供至該至少 -第三效能水平。+ ~低至低於該第4能水平的 中該至二述之同步多絮處理器,其 憶體電路包括一標籤記憶體鱼一而該快取記 該快取記憶體電路以一第欠伞故體’被架構來當 取該標藏記憶體同時的快取:二作時,可提供與存 低於ί::=:體快取記憶體電路是以 籤記憶體的-命中,提供該快取資料千知作時,響應該標 7.如申請專利範圍第6項所述 中該快取記憶體電路包括至少 ^夕各、處理器’其 來儲存由複數個指令所運曾的資料取6己憶體,係架構 體,係架構來儲存在該些^資…記憶 8·如申請專利範圍第6項所述 々二二才曰7。 中當在該第二效能水平下操作時,^二夕絮處理器,其 來響應在該標籤記憶體中的一非命貝^記憶體更加架構 9·如申請專利範圍第丨項所述=二】, 中該至少一處理電路包括一浮點單元。」^夕絮處理态,其 13145pif2.doc 33 1261198 上10.如申凊專利範圍第9項所述之同步多絮處理器,其 亥’予點單凡包括一第一浮點單元,係架構來當該同步多 广$理态目別所操作的該些絮的該個數小於或等於一臨界 值時,以一第一效能水平操作,該同步多絮處理器更加包 一第二浮點單元,係架構來當學大於該臨界值時,以 低於該效能水平的一第二效能水平操作。 11·如申明專利範圍第1項所述之同步多絮處理器,其 中該至少一處理電路包括一整數暫存器。 、 2·士申明專利範圍第3項所述之同步多絮處理器,其 中該效能水平控制電路係_來響應在制步多絮處理器 中新建立與結束的該些絮的變化,分別增加或減少該同步 多絮處理器目前所操作的該些絮的該個數。 上13·如申請專利範圍第丨項所述之同步多絮處理器,其 中β亥至> -處理電路包括―第—處理電路,係架構來塑鹿 當該同步多絮處理H目前賴作的該些㈣該個數下^ 低於或等於-臨界值時H —效能水平操作 多絮處理器更加包括: 7 。-弟7處理电路,係架構來當該同步多絮處理器目前 所#作的_絮_她增加至切該 該第一效能水平的—第二效能水平操作。 ^申請專利範圍第3項所述之同步多絮處理器,其 中5亥效此水平控制電路㈣構來響應—新 小於或等於-臨界__步多W目前所齡的^ 13l45pif2.doc 34 1261198 ==:=r界值’藉此降低提 中該=;===:絮處•其 前所操作的該些絮的該個數超過複二目 低至複數個遞減效能水平的其中之—。放此水千,降 乂如申請專利範㈣3項所述之同步多理哭 ^效能水平控制電路係架構來響應當該同步多絮處理^ 剛所麵作的該些絮的該個數從低於只二 =該臨界值時,保持對一第一處二路= 處理電路’提供低於該第-丄 17.—種同步多絮處理器,其特徵在於包括: 哭目平控制電路,係架構來根據該同步多絮處理 中的複數倾理電路,提供-效能水平處心 苴中今圍第17項所述之同步多絮處理器, 制電路更靖構成響應-新絮產生, “ ΐ此二夕1處理器目前所操作的該些絮的該個數,以 卜新個數,並且係架構成根 ===,絮的該新個數,對該些處理電 以如申請專利範圍第17項所述之同步多絮處理器, 13145pif2.doc 35 1261198 二~ν、^ Λ同步夕絮處理器目前所操作的讀此絮的 > 彳SI t 於或等於-臨界值時,今#水仲^ 4的仙數小 處理】,效能水平些 個數超過該多:處理器目前所操作的該些絮的該 J理,該效能水平,降低至低於該第==些 弟一攻能水平。 欢此水平的一 〇·如申凊專利範圍第19項所诚之n 咖控制電路係架構來響應當; 所操作的該些絮的該個數從 等:步夕絮處理 k升至大於該臨界值時,保持對=於-臨界值’ 一效能水平,及對—第二處 ς理電路提供該第 水平的一第二效能水平。 棱七、低於該第一效能 21·如申請專利範圍第 其U處理電路包括-浮點單元多絮處理器’ 少其中之一。 、、枓快取記憶體的至 22·如申睛專利範圍第 其中當該同步多絮處理器目前所操::步多絮處理器, 於或等於-臨界值時,該些處理電個數小 能水平操作;以及 糸采構成以一第一效 其中,當該同步多絮處哭义 個數大於該臨界值時,該理作的該些絮的該 能水平操作。 私糸架構成以一第二效 23·一種同步多絮處理器,包括: 13145pif2.doc 36 1261198 η牛,i Γ電路,係架構成當複數個絮建立時,將轉 同步多备、處理器相關之複數個處理電路,指定 ^ 多絮處理器中操作的該些絮;以及 、。在μ冋步 王里架構成根據將該同步多絮處 結果,對的—個數與至少—臨界值比較的 〜二處理电路挺供複數個效能水平的复中之— ,如中請專利範圍第23項所述之同步多絮一 絮界值包括該同步多絮處理器所操作的該些 其中處理器, 於或等於該ί;!;;:目Λ:操綱 至該此處理效能水平控制電路將提供 以及二處理电路的—效能水平,提昇至一第一效能水平; 個數=該理器目前所操作的該些絮的該 至該些處理電‘效:平該==!路,供 平的。 +低至低於•-效能水 其中該斤述之同步多絮處理器, 將小於或等於該至少構來響應一新絮產生,藉以 操作的該些絮的該個數:力界=:步f絮如 降低提供至該些處理至大㈣至少一臨界值,藉此 如申請專利範二f效能水平。 乐23項所述之同步多絮處理器, 13145pif2.doc 37 1261198 3、乂 "^水平控制電路係架構來在當制步多絮處理器 一=所I作的4些絮的該個數超過複數彳目遞增臨界值的每 匕:值:、’、將提供至該些處理電路的該效能水平,降低 至複數個遞減效能水平的其中之一。 一 專利範圍第23項所述之同步多絮處理器, Cinr制電路係架構來響應當該同步多絮處理 :值則=Γ士絮的該個數從低於或等於該至少-臨 電:提Γί,、—臨界值時,保持對-第-處理 平,及對—第二處理電路,提供低 於。玄弟一效此水平的—第二效能水平。 29Γ種與一同步多絮處理器相關之快取記憶體,其中 口〆决取§己{思體包括一標鐵記情 一次 ' 據該同步多絮處理器目前所操作:絮:數而= :!存取該標鐵記憶體與該資料記憶體 fe體,再存取該資料記憶體。 姑取綠戴兄 30·如申請專利範圍第29項 響應小於或等於—臨界值的該同步多絮^憶體,其中 的該些絮的該個數,可同時存二处态目刖所刼作 憶體。 ^‘戴圮憶體與該資料記 31 ·如申睛專利範圍第29項 器9前所操作的該些絮的 崎標鐵記憶體中的-命中,二 32 一種同步多絮處理器之操作方法,其特徵在於包括 13145pif2.doc 38 1261198 下列步驟: 根據該同步多絮處理器目前所操作的該些絮的一個 數,對至少一處理電路,提供/效能水平。 33·如申请專利範圍第32項所述之操作方法,其中在 該提供步驟之後更加包括: 將該同步多絮處理器目前所操作的該些絮的該個數, 與一臨界值相比較,以提供該效能水平給該至少一處理帝 路。 w 。 34·如申請專利範圍第33項所述之操作方法,其中 該比較方法之後更加包括: 響應在該同步多絮處理器中剛啟動的—新絮,辦加兮 同步多絮處理器目前所操作的該些絮的該個數·'以^ 口〜 響應在該同步多絮處理器中結束的—絮,減少 多絮處理器目前所操作的該些絮的該個數。 / 35. 如申請專利範圍第34項所述之操 提供步驟更加包括: 如果該同步多絮處理器目前所操 數係小於或等於該臨界值,則提供—第 ^ 少一處理電路丨以及 政肊水平給該至 如果該同步m理!!目前所操作❹ 數超過該臨界值,職供低賊第1^·二第= 能水平給該至少一處理電路。 十的一罘一效 法,更加包 括 36. 如申請專利範圍第35項所述之操作方 13145pif2.doc 39 1261198 將降低的效能水平,提供至與用來增加該同步多絮處 理器目前所操作的該些絮的該個數的該些新絮相關之處理 電路,藉以超過該些增加的額外臨界值。 37. —種同步多絮處理器,其特徵在於包括: 根據該同步多絮處理器目前所操作的該些絮的一個 數,提供一效能水平給至少一處理電路的一裝置。 38. 如申請專利範圍第37項所述之同步多絮處理器, 更加包括: 將該同步多絮處理器目前所操作的該些絮的該個 數,與一臨界值相比較,以將該效能水平提供至該至少一 處理電路的一裝置。 39. 如申請專利範圍第37項所述之同步多絮處理器, 更加包括: 響應在該同步多絮處理器中剛啟動的一新絮,增加該 同步多絮處理器目前所操作的該些絮的該個數的一裝置; 以及 響應在該同步多絮處理器中結束的一絮,減少該同步 多絮處理器目前所操作的該些絮的該個數的一裝置。 40. 如申請專利範圍第39項所述之同步多絮處理器, 其中該提供裝置包括: 當該同步多絮處理器目前所操作的該些絮的該個數 係小於或等於該臨界值時,提供一第一效能水平給該至少 一處理電路的一裝置;以及 當該同步多絮處理器目前所操作的該些絮的該個數 40 13145pif2.doc 1261198 超過該臨界值時,提供低於該第一效能水平 水平給該至少一處理電路的一裝置。 一夕月匕 41·如申請專利範圍第4〇 更加包括: 員所述之同步多絮處理器, 將降低的效能水平,提供i 理器目前所操作的該此絮 垂、用末日加垓同步多絮處 電路,藉以超過該些増新絮相關之處理 品,包括: 】步夕絮處理器之電腦程式產 電腦===讀的電腦可讀取媒體,而且該 一第一電腦可讀取程式碑 a* # 處理器目前所操作的該^來根據該同步多絮 给在該同步多絮處理器中 ^數’提供-效能水平 μ匕士 )一處理電路。 43·如申請專利範圍第42 力口包括: 、斤处之龟腦程式產品,更 一第二電腦可讀取程式螞 王里器目前所操作的該些絮的=木^來將該同步多絮處 Q提供該效能水平給該至少―處^電^臨界值相比較, 44.如申請專利範圍第42二、:,二 力口包括: $所迷之電腦程式產品,更 紫處二三二可:一取;;,=,來響—^ 所操作的該些絮的該個數;^加5亥同步多絮處理器目前 13145pif2.doc 41 % 1261198 絮處二。第ΓΙΓ可讀取程式碼,係架構來響應在該同步多 =:=數絮’降低崎多絮處理器目前所操 中根如I請專,圍第42項所述之電腦程式產品,其 乂豕^項所提供的該第—電腦可讀取程式碼包括: 理如a第五電&可魏程式碼,係架構來當該同步多絮處 ,目闕操作的該些絮的該個數係小於 時’提供—第-效能水平給該至少—處理電路;2界值 理μ 讀取程式碼,係架構來#該同步多絮處 :於該第一效能水平的一第二效能水平給該至2處= 加包γ糊軸43娜彻料產品,更 一第七電腦可讀取程式瑪,係架構來將降低的效能水 此聲提供至與絲增加該同Μ絮處理11目前所操作的該 Ρ絮的該個數的該蘭絮相關之處理電路,藉以超過該些 增加的額外臨界值。 13M5pif2.doc 42 1261198 七、指定代表圖: (一) 本案指定代表圖為:第(2)圖。 (二) 本代表圖之元件符號簡單說明: 200 :同步多絮處理器 205 :絮管理電路 210 :擷取電路 215 :程式計數器 220 :指令快取 225 :解碼器 230 :暫存器更名電路 235 :浮點指令佇列 240 :整數指令佇列 245 :浮點暫存器 250 :整數暫存器 255 :浮點電路 260 :整數/載入-儲存電路 265 :資料快取 八、本案若有化學式時’請揭不最能顯不發明特徵的 化學式: 5 13145pif2.doc 4
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20030010759 | 2003-02-20 | ||
US10/631,601 US7152170B2 (en) | 2003-02-20 | 2003-07-31 | Simultaneous multi-threading processor circuits and computer program products configured to operate at different performance levels based on a number of operating threads and methods of operating |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200421180A TW200421180A (en) | 2004-10-16 |
TWI261198B true TWI261198B (en) | 2006-09-01 |
Family
ID=32044744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW093103698A TWI261198B (en) | 2003-02-20 | 2004-02-17 | Simultaneous multi-threading processor circuits and computer program products configured to operate at different performance levels based on a number of operating threads and methods of operating |
Country Status (5)
Country | Link |
---|---|
JP (1) | JP4439288B2 (zh) |
KR (1) | KR100594256B1 (zh) |
CN (1) | CN100394381C (zh) |
GB (1) | GB2398660B (zh) |
TW (1) | TWI261198B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4574493B2 (ja) * | 2005-08-22 | 2010-11-04 | キヤノン株式会社 | プロセッサシステム及びマルチスレッドプロセッサ |
JP4687685B2 (ja) * | 2007-04-24 | 2011-05-25 | 株式会社デンソー | エンジン制御用電子制御装置およびマイクロコンピュータ |
EP2159700A4 (en) * | 2007-06-19 | 2011-07-20 | Fujitsu Ltd | CACHE CONTROL AND CONTROL PROCEDURES |
EP2423808B1 (en) * | 2007-06-20 | 2014-05-14 | Fujitsu Limited | Arithmetic device |
US9529727B2 (en) * | 2014-05-27 | 2016-12-27 | Qualcomm Incorporated | Reconfigurable fetch pipeline |
CN105808444B (zh) * | 2015-01-19 | 2019-01-01 | 东芝存储器株式会社 | 存储装置及非易失性存储器的控制方法 |
WO2018018492A1 (zh) * | 2016-07-28 | 2018-02-01 | 张升泽 | 电流在多核芯片内部的多区间分配方法及系统 |
WO2018018494A1 (zh) * | 2016-07-28 | 2018-02-01 | 张升泽 | 基于多区间分配的功率分配方法及系统 |
CN112631960B (zh) * | 2021-03-05 | 2021-06-04 | 四川科道芯国智能技术股份有限公司 | 高速缓冲存储器的扩展方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5218704A (en) * | 1989-10-30 | 1993-06-08 | Texas Instruments | Real-time power conservation for portable computers |
US5396635A (en) * | 1990-06-01 | 1995-03-07 | Vadem Corporation | Power conservation apparatus having multiple power reduction levels dependent upon the activity of the computer system |
JP3100241B2 (ja) * | 1992-10-09 | 2000-10-16 | ダイヤセミコンシステムズ株式会社 | マイクロプロセッサの駆動制御装置 |
JP3461535B2 (ja) * | 1993-06-30 | 2003-10-27 | 株式会社日立国際電気 | 無線端末装置及びその制御方法 |
US5630142A (en) * | 1994-09-07 | 1997-05-13 | International Business Machines Corporation | Multifunction power switch and feedback led for suspend systems |
US6073159A (en) | 1996-12-31 | 2000-06-06 | Compaq Computer Corporation | Thread properties attribute vector based thread selection in multithreading processor |
US5835705A (en) * | 1997-03-11 | 1998-11-10 | International Business Machines Corporation | Method and system for performance per-thread monitoring in a multithreaded processor |
US6272616B1 (en) * | 1998-06-17 | 2001-08-07 | Agere Systems Guardian Corp. | Method and apparatus for executing multiple instruction streams in a digital processor with multiple data paths |
US6493741B1 (en) * | 1999-10-01 | 2002-12-10 | Compaq Information Technologies Group, L.P. | Method and apparatus to quiesce a portion of a simultaneous multithreaded central processing unit |
US7051329B1 (en) * | 1999-12-28 | 2006-05-23 | Intel Corporation | Method and apparatus for managing resources in a multithreaded processor |
US7487505B2 (en) * | 2001-08-27 | 2009-02-03 | Intel Corporation | Multithreaded microprocessor with register allocation based on number of active threads |
US6711447B1 (en) * | 2003-01-22 | 2004-03-23 | Intel Corporation | Modulating CPU frequency and voltage in a multi-core CPU architecture |
-
2004
- 2004-02-17 TW TW093103698A patent/TWI261198B/zh active
- 2004-02-19 GB GB0403738A patent/GB2398660B/en not_active Expired - Lifetime
- 2004-02-20 JP JP2004043969A patent/JP4439288B2/ja not_active Expired - Lifetime
- 2004-02-20 CN CNB2004100430627A patent/CN100394381C/zh not_active Expired - Lifetime
- 2004-02-20 KR KR1020040011337A patent/KR100594256B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
JP2004252987A (ja) | 2004-09-09 |
CN100394381C (zh) | 2008-06-11 |
TW200421180A (en) | 2004-10-16 |
KR20040075287A (ko) | 2004-08-27 |
GB0403738D0 (en) | 2004-03-24 |
JP4439288B2 (ja) | 2010-03-24 |
GB2398660A (en) | 2004-08-25 |
KR100594256B1 (ko) | 2006-06-30 |
CN1534463A (zh) | 2004-10-06 |
GB2398660B (en) | 2005-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI261198B (en) | Simultaneous multi-threading processor circuits and computer program products configured to operate at different performance levels based on a number of operating threads and methods of operating | |
Clemente et al. | Efficient parallel methods for deep reinforcement learning | |
de Jonge et al. | Exercise performance in patients with end-stage heart failure after implantation of a left ventricular assist device and after heart transplantation: an outlook for permanent assisting? | |
US20110161495A1 (en) | Accelerating opencl applications by utilizing a virtual opencl device as interface to compute clouds | |
DE112011103216T5 (de) | Scheduling von Anwendungen in heterogenen Multiprozessorcomputerplattformen | |
TW201145172A (en) | Sharing resources between a CPU and GPU | |
US9722869B2 (en) | Sharing an application configuration among social networks | |
CN105373434B (zh) | 资源管理系统及方法 | |
DE102014003798A1 (de) | Verfahren zum Booten eines heterogenen Systems und Präsentieren einer symmetrischen Kernansicht | |
CN108230239A (zh) | 人脸表情图像合成装置 | |
CN103412961B (zh) | 一种实时导出海量数据报表的处理方法和系统 | |
CN106775699A (zh) | 在异步线程中更新ui的方法 | |
DE112017004361T5 (de) | Steuern eines leistungszustands eines prozessors unter verwendung einer kombination von package- und thread-hinweis-informationen | |
CN207460565U (zh) | 一种灯光调节装置及机器人 | |
TWI289255B (en) | System, method, and apparatus for reducing power consumption in a microprocessor with multiple decoding capabilities | |
DE102020130910A1 (de) | System, vorrichtung und verfahren für dynamische energiezustandsskalierung eines spannungsreglers für einen prozessor | |
Mishima et al. | Low-cost managed digital signage system with signage device using small-sized and low-cost information device | |
JP2006216027A5 (zh) | ||
CN104778085B (zh) | 一种手游的游戏对战处理方法及装置 | |
TW200532561A (en) | A system and method for adjusting the CPU frequency | |
MXPA02005310A (es) | Sistema de procesamiento de datos, programa de computadora y medio de registro. | |
EP2417737A1 (en) | Transmit-side scaler and method for processing outgoing information packets using thread-based queues | |
CN104679837B (zh) | 关键词调价请求的处理方法及装置 | |
JP2022113109A (ja) | 情報処理装置、情報処理方法及びプログラム | |
Himstedt | GridChess: combining optimistic pondering with the young brothers wait concept |