cpu含有多少條指令
CPU的指令有多少,CPU的各項(xiàng)指數(shù)是多少,讓我們帶著這些疑問,一起看下去吧。
cpu含有多少條指令:
Intel CPU的擴(kuò)展指令集 對(duì)于CPU來(lái)說(shuō),在基本功能方面,它們的差別并不太大,基本的指令集也都差不多,但是許多廠家為了提升某一方面性能,又開發(fā)了擴(kuò)展指令集,擴(kuò)展指令集定義了新的數(shù)據(jù)和指令,能夠大大提高某方面數(shù)據(jù)處理能力,但必需要有軟件支持,下面我們來(lái)i7處理器看一看歷代Intel指令集都有哪些:MMX指令集 MMX(Multi Media eXtension,多媒體擴(kuò)展指令集)指令集是Intel公司于1996年推出的一項(xiàng)多媒體指令增強(qiáng)技術(shù)。MMX指令集中包括有57條多媒體指令,通過這些指令可以一次處理多個(gè)數(shù)據(jù),在處理結(jié)果超過實(shí)際處理能力的時(shí)候也能進(jìn)行正常處理,這樣在軟件的配合下,就可以得到更高的性能。MMX的益處在于,當(dāng)時(shí)存在的操作系統(tǒng)不必為此而做出任何修改便可以輕松地執(zhí)行MMX程序。但是,問題也比較明顯,那就是MMX指令集與x87浮點(diǎn)運(yùn)算指令不能夠同時(shí)執(zhí)行,必須做密集式的交錯(cuò)切換才可以正常執(zhí)行,這種情況就勢(shì)必造成整個(gè)系統(tǒng)運(yùn)行質(zhì)量的下降。 MMX指令集Intel代表處理器:Pentium MMXSSE指令集 SSE(Streaming SIMD Extensions,單指令多數(shù)據(jù)流擴(kuò)展)指令集是Intel在Pentium III處理器中率先推出的。其實(shí),早在PIII正式推出之前,Intel公司就曾經(jīng)通過各種渠道公布過所謂的KNI(Katmai New Instruction)指令集,這個(gè)指令集也就是SSE指令集的前身,并一度被很多傳媒稱之為MMX指令集的下一個(gè)版本,即MMX2指令集。究其背景,原來(lái)"KNI"指令集是Intel公司最早為其下一代芯片命名的指令集名稱,而所謂的"MMX2"則完全是硬件評(píng)論家們和媒體憑感覺和印象對(duì)"KNI"的 評(píng)價(jià),Intel公司從未正式發(fā)布過關(guān)于MMX2的消息。而最終推出的SSE指令集也就是所謂勝出的"互聯(lián)網(wǎng)SSE"指令集。SSE指令集包括了70條指令,其中包含提高3D圖形運(yùn)算效率的50條SIMD(單指令多數(shù)據(jù)技術(shù))浮點(diǎn)運(yùn)算指令、12條MMX 整數(shù)運(yùn)算增強(qiáng)指令、8條優(yōu)化內(nèi)存中連續(xù)數(shù)據(jù)塊傳輸指令。理論上這些指令對(duì)目前流行的圖像處理、浮點(diǎn)運(yùn)算、3D運(yùn)算、視頻處理、音頻處理等諸多多媒體應(yīng)用起到全面強(qiáng)化的作用。SSE指令與3DNow!指令彼此互不兼容,但SSE包含了3DNow!技術(shù)的絕大部分功能,只是實(shí)現(xiàn)的方法不同。SSE兼容MMX指令,它可以通過SIMD和單時(shí)鐘周期并行處理多個(gè)浮點(diǎn)數(shù)據(jù)來(lái)有效地提高浮點(diǎn)運(yùn)算速度。 SSE指令集Intel代表處理器:Pentium IIISSE2指令集 SSE2(Streaming SIMD Extensions 2,Intel官方稱為SIMD流技術(shù)擴(kuò)展2或數(shù)據(jù)流單指令多數(shù)據(jù)擴(kuò)展指令集2)指令集是Intel公司在SSE指令集的基礎(chǔ)上發(fā)展起來(lái)的。相比于SSE,SSE2使用了144個(gè)新增指令,擴(kuò)展了MMX技術(shù)和SSE技術(shù),這些指令提高了廣大應(yīng)用程序的運(yùn)行性能。隨MMX技術(shù)引進(jìn)的SIMD整數(shù)指令從64位擴(kuò)展到了128 位,使SIMD整數(shù)類型操作的有效執(zhí)行率成倍提高。雙倍精度浮點(diǎn)SIMD指令允許以 SIMD格式同時(shí)執(zhí)行兩個(gè)浮點(diǎn)操作,提供雙倍精度操作支持有助于加速內(nèi)容創(chuàng)建、財(cái)務(wù)、工程和科學(xué)應(yīng)用。除SSE2指令之外,最初的SSE指令也得到增強(qiáng),通過支持多種數(shù)據(jù)類型(例如,雙字和四字)的算術(shù)運(yùn)算,支持靈活并且動(dòng)態(tài)范圍更廣的計(jì)算功能。SSE2指令可讓軟件開發(fā)員極其靈活的實(shí)施算法,并在運(yùn)行諸如MPEG-2、MP3、3D圖形等之類的軟件時(shí)增強(qiáng)性能。Intel是從Willamette核心的Pentium 4開始支持SSE2指令集的,而AMD則是從K8架構(gòu)的SledgeHammer核心的Opteron開始才支持SSE2指令集的。 SSE2指令集Intel代表處理器:老Pentium 4SSE3指令集 SSE3(Streaming SIMD Extensions 3,Intel官方稱為SIMD流技術(shù)擴(kuò)展3或數(shù)據(jù)流單指令多數(shù)據(jù)擴(kuò)展指令集3)指令集是Intel公司在SSE2指令集的基礎(chǔ)上發(fā)展起來(lái)的。相比于SSE2,SSE3在SSE2的基礎(chǔ)上又增加了13個(gè)額外的SIMD指令。SSE3中13個(gè)新指令的主要目的是改進(jìn)線程同步和特定應(yīng)用程序領(lǐng)域,例如媒體和游戲。這些新增指令強(qiáng)化了處理器在浮點(diǎn)轉(zhuǎn)換至整數(shù)、復(fù)雜算法、視頻編碼、SIMD浮點(diǎn)寄存器操作以及線程同步等五個(gè)方面的表現(xiàn),最終達(dá)到提升多媒體和游戲性能的目的。Intel是從Prescott核心的Pentium 4開始支持SSE3指令集的,而AMD則是從2005年下半年Troy核心的Opteron開始才支持SSE3的。但是需要注意的是,AMD所支持的SSE3與Intel的SSE3并不完全相同,主要是刪除了針對(duì)Intel超線程技術(shù)優(yōu)化的部分指令。 SSE3指令集Intel代表處理器:基于Prescott核心新Pentium 4SSSE3指令集 SSSE3(Supplemental Streaming SIMD Extensions 3)內(nèi)置于Intel公司微處理器中的多媒體關(guān)聯(lián)的擴(kuò)張指令集。是擴(kuò)張了SSE3的產(chǎn)品,于2006年7月首次裝載在Core 2 Duo處理器中SSE3裝載了用一個(gè)命令一口氣處理復(fù)數(shù)個(gè)數(shù)據(jù)的「SIMD」的處理方式,特別在處理語(yǔ)音和動(dòng)畫關(guān)聯(lián)上能夠高速地發(fā)揮力量。SSSE3是在 SSE3命令的基礎(chǔ)上又添加了32個(gè)新命令的產(chǎn)品,其原名為TNI,是SSE4指令集的子集,包含有13條命令。目前SSSE3也是最先進(jìn)的指令集,增強(qiáng)了CPU的多媒體、圖形圖象和Internet等的處理能力。 SSSE3指令集Intel代表處理器:65nm 酷睿2SSE4指令集的兩個(gè)分支:SSE4.1 + SSE4.2 SSE4指令集被認(rèn)為是2001年以來(lái)Intel最重要的指令集擴(kuò)展,包含54條指令。 Intel在Penryn處理器中加入了對(duì)SSE4.1的支持,共增加了47條新指令,提升了處理器在圖形、3D圖像與游戲、視頻編碼與影音處理等方面的性能表現(xiàn)。本次在Nehalem處理器中,進(jìn)一步支持了SSE4.2指令集。SSE4.2完整的實(shí)現(xiàn)了SSE4指令集,相對(duì)于SSE4.1加入了7條新指令。 SSE4.1指令集 45納米加入了SSE4.1指令集,令處理器的多媒體處理能力得到最大70%的提升。SSE4加入了6條浮點(diǎn)型點(diǎn)積運(yùn)算指令,支持單精度、雙精度浮點(diǎn)運(yùn)算及浮點(diǎn)產(chǎn)生操作,且IEEE 754指令 (Nearest, -Inf, +Inf, and Truncate) 可立即轉(zhuǎn)換其路徑模式,大大減少延誤,這些改變將對(duì)游戲及 3D 內(nèi)容制作應(yīng)用有重要意義。此外,SSE4加入串流式負(fù)載指令,可提高以圖形幀緩沖區(qū)的讀取數(shù)據(jù)頻寬,理論上可獲取完整的快取緩存行,即每次讀取64Bit而非8Bit,并可保持在臨時(shí)緩沖區(qū)內(nèi),讓指令最多可帶來(lái)8倍的讀取頻寬效能提升,對(duì)于視訊處理、成像以及圖形處理器與中央處理器之間的共享數(shù)據(jù)應(yīng)用,有著明顯的效能提升。SSE4指令集讓45nm Penryn處理器增加了2個(gè)不同的32Bit向量整數(shù)乘法運(yùn)算單元,并加入8位無(wú)符號(hào)(Unsigned)最小值及最大值運(yùn)算,以及16Bit及32Bit有符號(hào) (Signed) 運(yùn)算。在面對(duì)支持SSE4指令集的軟件時(shí),可以有效的改善編譯器效率及提高向量化整數(shù)及單精度代碼的運(yùn)算能力。同時(shí),SSE4改良插入、提取、尋找、離散、跨步負(fù)載及存儲(chǔ)等動(dòng)作,令向量運(yùn)算進(jìn)一步專門。 SSE4.1指令集Intel代表處理器:45nm 酷睿2SSE4.2指令集 在Nehalem架構(gòu)的Core i7處理器中,SSE4.2指令集被引入,加入了STTNI(字符串文本新指令)和ATA(面向應(yīng)用的加速器)兩大優(yōu)化指令?! SE4.2新加入的幾條新指令有兩類。第一類是字符串與文本新指令STTNI,STTNI包含了四條具體的指令。STTNI指令可以對(duì)兩個(gè)16位的數(shù)據(jù)進(jìn)行匹配操作,以加速在XML分析方面的性能。據(jù)Intel表示,新指令可以在XML分析方面取得3.8倍的性能提升。第二類指令是面向應(yīng)用的加速指令A(yù)TA。ATA包括冗余校驗(yàn)的CRC32指令、計(jì)算源操作數(shù)中非0位個(gè)數(shù)的POPCNT指令,以及對(duì)于打包的64位算術(shù)運(yùn)算的SIMD指令。CRC32指令可以取代上層數(shù)據(jù)協(xié)議中經(jīng)常用到的循環(huán)冗余校驗(yàn),據(jù)Intel表示其加速比可以達(dá)到6.5~18.6倍;POPCNT用于提高在DNA基因配對(duì)、聲音識(shí)別等包含大數(shù)據(jù)集中進(jìn)行模式識(shí)別和搜索等操作的應(yīng)用程序性能。 Intel也公布了支持新指令集的開發(fā)工具。這些工具涵蓋了主流的編譯開發(fā)環(huán)境。目前已明確支持SSE4.2的開發(fā)環(huán)境包括:Intel C++ Compiler 10.X、微軟的Visual Studio 2008 VC++、GCC 4.3.1、Sun Studio Express等。程序員可以直接使用高級(jí)編程語(yǔ)言編程,編譯器會(huì)自動(dòng)生成優(yōu)化結(jié)果。當(dāng)然程序員也可以用內(nèi)嵌匯編的方式來(lái)達(dá)到目的。 SSE4指令集Intel代表處理器:45nm i7