[發(fā)明專利]在多個(gè)指令定序器上基于指令集的線程執(zhí)行機(jī)制有效
| 申請(qǐng)?zhí)枺?/td> | 200580044896.2 | 申請(qǐng)日: | 2005-12-28 |
| 公開(公告)號(hào): | CN101116057A | 公開(公告)日: | 2008-01-30 |
| 發(fā)明(設(shè)計(jì))人: | H·王;J·沈;E·格羅喬夫斯基;J·P·赫爾德;B·比比;S·D·考施克;G·欽亞;X·鄒;P·哈馬倫德;X·田;A·阿加瓦爾;S·D·羅杰斯;B·V·帕特爾;R·漢金斯 | 申請(qǐng)(專利權(quán))人: | 英特爾公司 |
| 主分類號(hào): | G06F9/48 | 分類號(hào): | G06F9/48 |
| 代理公司: | 中國(guó)專利代理(香港)有限公司 | 代理人: | 曾祥夌;魏軍 |
| 地址: | 美國(guó)加利*** | 國(guó)省代碼: | 美國(guó);US |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 指令 定序器上 基于 線程 執(zhí)行 機(jī)制 | ||
技術(shù)領(lǐng)域
本發(fā)明的實(shí)施例涉及用于處理指令的方法和裝置。
背景技術(shù)
為提高信息處理系統(tǒng)(例如那些包括微處理器,既使用硬件技 術(shù)又使用軟件技術(shù)的系統(tǒng))的性能。在硬件方面,提高微處理器性 能的微處理器設(shè)計(jì)方法已包括:增加時(shí)鐘速度,流水線操作,分支 預(yù)測(cè),超標(biāo)量執(zhí)行,故障執(zhí)行以及高速緩存。許多這類方法導(dǎo)致了 晶體管數(shù)量的增加,甚至在有些情況下,導(dǎo)致了晶體管數(shù)量以高于 性能提高的速度來(lái)增加。
另一些性能提高方式嚴(yán)格地說(shuō)不是通過(guò)增加晶體管來(lái)尋求性能 的提高,而是利用軟件技術(shù)。一種用于提高處理器性能的軟件方法 被稱為“多線程方法”。在軟件多線程方法中,一個(gè)指令流可被分 成能并行執(zhí)行的多個(gè)指令流。作為可選的方案,多個(gè)獨(dú)立的軟件流 可并行執(zhí)行。
在稱為時(shí)間片多線程方法或時(shí)分復(fù)用(″TMUX″)多線程方法的 一個(gè)方法中,單個(gè)處理器在固定的時(shí)間段之后,在線程之間轉(zhuǎn)換。 在另一方法中,單個(gè)處理器在觸發(fā)事件(如長(zhǎng)等待時(shí)間高速緩存故 障)發(fā)生后,在線程之間轉(zhuǎn)換。在后一方法中,稱為基于事件切換 的多線程方法(″SoEMT″),最多只有一個(gè)線程在給定時(shí)間是活動(dòng) 的。
多線程方法越來(lái)越多地用硬件來(lái)支持。例如,在一方法中,多 處理器系統(tǒng)(例如芯片多處理器(″CMP″)系統(tǒng)(多個(gè)處理器在單個(gè) 芯片上封裝)和對(duì)稱多處理器(″SMP″)系統(tǒng)(多個(gè)處理器在多個(gè)芯 片上))中的處理器,均可同時(shí)作用于多個(gè)軟件線程。在稱為并行 多線程方法(″SMT″)的另一方法中,單個(gè)物理處理器核被制成對(duì)于 操作系統(tǒng)和用戶程序表現(xiàn)為多個(gè)邏輯處理器。對(duì)于SMT,多個(gè)軟件 線程可為活動(dòng)的并同時(shí)在單個(gè)處理器核上執(zhí)行。就是說(shuō),各邏輯處 理器保持一整套的架構(gòu)狀態(tài),但物理處理器的許多其它資源,如高 速緩存、執(zhí)行部件、分支預(yù)測(cè)器、控制邏輯部件和總線是共享的。 因此,對(duì)于SMT,來(lái)自多個(gè)軟件線程的指令在各邏輯處理器上并行 執(zhí)行。
對(duì)于支持軟件線程并行執(zhí)行的系統(tǒng),如SMT、SMP和/或CMP 系統(tǒng),操作系統(tǒng)可控制軟件線程的調(diào)度和執(zhí)行。
作為可選的方案,也可由一些應(yīng)用程序可直接管理和調(diào)度多個(gè) 線程來(lái)在處理系統(tǒng)中執(zhí)行。這種應(yīng)用程序-預(yù)定線程對(duì)操作系統(tǒng)(OS) 通常是不可見的,并被稱為用戶級(jí)線程。
一般,用戶級(jí)線程可只被調(diào)度供在由OS管理的處理資源上運(yùn)行 的應(yīng)用程序來(lái)執(zhí)行。因此,在具有多個(gè)處理器的典型處理系統(tǒng)中, 沒有調(diào)度用戶級(jí)線程在不直接由OS管理的處理器上運(yùn)行的機(jī)制。
附圖說(shuō)明
圖1A和1B是說(shuō)明本發(fā)明一實(shí)施例的多定序器系統(tǒng)的高級(jí)框圖;
圖1C是說(shuō)明支持由用戶級(jí)指令控制線程的多定序器系統(tǒng)的實(shí)施 例的選定特征的框圖;
圖2是說(shuō)明構(gòu)成圖1A-1C所示的多定序器系統(tǒng)的一部分的多定 序器硬件的邏輯圖;
圖3A是說(shuō)明圖1A-1C所示的系統(tǒng)的指令集架構(gòu)的視圖;
圖3B是說(shuō)明具有兩個(gè)或更多指令定序器的處理器的一實(shí)施例的 邏輯示意圖,所述指令定序器在其指令集中包括用戶級(jí)控制轉(zhuǎn)移指 令和用戶級(jí)監(jiān)視指令。
圖4A和4B分別說(shuō)明本發(fā)明一實(shí)施例的SXFR和SEMONITOR 指令的格式;
圖5說(shuō)明根據(jù)本發(fā)明一實(shí)施例,SXFR指令如何可被用于實(shí)現(xiàn)定 序器間控制轉(zhuǎn)移;
圖6A-6B是根據(jù)本發(fā)明一實(shí)施例可被用來(lái)對(duì)服務(wù)通道進(jìn)行編程 的表;
圖7是說(shuō)明根據(jù)本發(fā)明一實(shí)施例,構(gòu)成圖1A-1C所示的系統(tǒng)的 線程管理邏輯部件的部件的功能框圖;
圖8說(shuō)明根據(jù)本發(fā)明一實(shí)施例的代理執(zhí)行機(jī)制的運(yùn)行;
圖9和圖10說(shuō)明本發(fā)明一實(shí)施例的邏輯處理器的示例;
圖11說(shuō)明本發(fā)明的一實(shí)施例中,SXFR和SEMONITOR指令如 何在OS處理缺頁(yè)故障后就隨即被用來(lái)支持代理執(zhí)行;
圖12說(shuō)明本發(fā)明一實(shí)施例的處理系統(tǒng)。
圖13是說(shuō)明一示范性計(jì)算機(jī)系統(tǒng)的框圖,該系統(tǒng)可使用一處理 器部件的實(shí)施例,例如中央處理器(CPU)或芯片組,所述處理器部 件包括一個(gè)或多個(gè)指令定序器,它們配置成可執(zhí)行一個(gè)或多個(gè)包含 定序器所知的用戶級(jí)指令的用戶級(jí)線程。
具體實(shí)施方式
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于英特爾公司,未經(jīng)英特爾公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200580044896.2/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 在多線程處理器中用于高速線程間中斷的方法和設(shè)備
- 一種多線程系統(tǒng)中實(shí)現(xiàn)實(shí)時(shí)監(jiān)控各線程狀態(tài)的方法
- 移動(dòng)終端系統(tǒng)線程池實(shí)現(xiàn)方法及裝置
- 一種基于策略模式的信號(hào)發(fā)生器多線程管理方法
- 多線程并發(fā)處理方法和多線程并發(fā)處理系統(tǒng)
- 分布式系統(tǒng)的線程管理方法和裝置
- 線程執(zhí)行方法、裝置、終端及存儲(chǔ)介質(zhì)
- 線程監(jiān)控方法、裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 一種多核系統(tǒng)中多線程調(diào)度方法、裝置及設(shè)備
- 線程間通信方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)





