IA-64 - IA-64

Intel Itanium-Architektur
Designer HP und Intel
Bits 64-Bit
Eingeführt 2001
Design EPOS
Typ Registrieren-Registrieren
Codierung Fest
Verzweigung Zustandsregister
Endianität Wählbar
Register
Allgemeiner Zweck 128 (64 Bits plus 1 Trap-Bit ; 32 sind statisch, 96 verwenden Registerfenster ); 64 1-Bit-Prädikatsregister
Gleitkomma 128
Die Intel Itanium-Architektur

IA-64 ( Intel Itanium-Architektur ) ist die Befehlssatzarchitektur (ISA) der Itanium- Familie von 64-Bit- Intel- Mikroprozessoren . Die grundlegende ISA-Spezifikation stammt von Hewlett-Packard (HP) und wurde von Intel mit der kontinuierlichen Partnerschaft und dem Fachwissen von HP zu den zugrunde liegenden EPIC-Designkonzepten weiterentwickelt und dann in eine neue Prozessor-Mikroarchitektur implementiert. Um das erste neue ISA seit 20 Jahren zu etablieren und eine völlig neue Produktlinie auf den Markt zu bringen, investierte Intel massiv in Produktdefinition, Design, Softwareentwicklungstools, Betriebssysteme, Partnerschaften mit der Softwareindustrie und Marketing. Um diese Bemühungen zu unterstützen, hat Intel das größte Designteam in seiner Geschichte und ein neues Marketing- und Industrieteam geschaffen, das vollständig von x86 getrennt ist. Der erste Itanium-Prozessor mit dem Codenamen Merced wurde 2001 veröffentlicht.

Die Itanium-Architektur basiert auf expliziter Parallelität auf Befehlsebene , bei der der Compiler entscheidet, welche Befehle parallel ausgeführt werden. Dies steht im Gegensatz zu superskalaren Architekturen, die vom Prozessor abhängig sind, um Befehlsabhängigkeiten zur Laufzeit zu verwalten. In allen Itanium-Modellen bis einschließlich Tukwila führen die Kerne bis zu sechs Befehle pro Taktzyklus aus .

Im Jahr 2008 war Itanium nach x86-64 , Power ISA und SPARC die am vierthäufigsten eingesetzte Mikroprozessorarchitektur für Systeme der Enterprise-Klasse .

Geschichte

Entwicklung: 1989–2000

1989 machte sich HP Sorgen, dass RISC-Architekturen ( Reduced Instruction Set Computing ) sich einem Verarbeitungslimit von einem Befehl pro Zyklus näherten . Sowohl Intel- als auch HP-Forscher hatten Computerarchitekturoptionen für zukünftige Designs untersucht und begannen separat mit der Untersuchung eines neuen Konzepts, das als sehr langes Instruktionswort (VLIW) bekannt ist und Anfang der 1980er Jahre aus der Forschung der Yale University hervorging. VLIW ist ein Computerarchitekturkonzept (wie RISC und CISC), bei dem ein einzelnes Befehlswort mehrere Befehle enthält, die in einem sehr langen Befehlswort codiert sind, um dem Prozessor die Ausführung mehrerer Befehle in jedem Taktzyklus zu erleichtern . Typische VLIW-Implementierungen verlassen sich stark auf ausgeklügelte Compiler, um zur Kompilierzeit zu bestimmen, welche Befehle gleichzeitig ausgeführt werden können, und die richtige Planung dieser Befehle für die Ausführung und auch um die Richtung von Verzweigungsoperationen vorherzusagen. Der Wert dieses Ansatzes besteht darin, in weniger Taktzyklen nützlichere Arbeit zu leisten und die Hardwareanforderungen für die Prozessorbefehlsplanung und Verzweigungsvorhersage zu vereinfachen, mit einem Nachteil in erhöhter Prozessorkomplexität, Kosten und Energieverbrauch im Austausch für eine schnellere Ausführung.

Produktion

Während dieser Zeit hatte HP begonnen zu glauben, dass es für einzelne Unternehmen von Unternehmenssystemen wie ihm selbst nicht mehr kosteneffektiv war, proprietäre Mikroprozessoren zu entwickeln. Intel hatte auch mehrere Architekturoptionen untersucht, um über die x86-ISA hinauszugehen, um die Anforderungen an High-End-Unternehmensserver und High Performance Computing (HPC) zu erfüllen. So arbeiteten Intel und HP 1994 zusammen, um den IA-64 ISA zu entwickeln, wobei eine Variation von VLIW-Designkonzepten verwendet wurde, die Intel explizit als Parallel Instruction Computing (EPIC) bezeichnete. Intels Ziel war es, das Know-how, das HP in seiner frühen VLIW-Arbeit erworben hatte, zusammen mit seiner eigenen zu nutzen, um eine Volumenproduktlinie zu entwickeln, die auf High-End-Server der Enterprise-Klasse und High Performance Computing (HPC)-Systeme ausgerichtet ist und an alle Originalgerätehersteller verkauft werden kann (OEMs), während HP in der Lage sein wollte, Standardprozessoren zu erwerben, die mit Intels Volumenfertigung und modernster Prozesstechnologie hergestellt wurden und eine höhere Leistung und Kosteneffizienz als ihre aktuellen PA-RISC-Prozessoren aufweisen. Da die resultierenden Produkte von Intel stammen (HP wäre einer von vielen Kunden) und um die für eine erfolgreiche Produktlinie erforderlichen Mengen zu erreichen, müssten die Itanium-Produkte den Anforderungen einer breiteren Kundenbasis entsprechen und Softwareanwendungen, Betriebssysteme, , und Entwicklungstools für diese Kunden verfügbar sein. Dies erforderte, dass Itanium-Produkte entworfen, dokumentiert und hergestellt wurden und über Qualität und Support verfügen, die mit den übrigen Produkten von Intel übereinstimmen. Daher übernahm Intel die Führung in den Bereichen Mikroarchitekturdesign, Produktisierung (Verpackung, Test und alle anderen Schritte), Industriesoftware und Betriebssystemunterstützung (Linux und Windows NT) und Marketing. Als Teil des Definitions- und Marketingprozesses von Intel haben sie eine Vielzahl von Enterprise-OEMs, Software- und Betriebssystemanbietern sowie Endkunden engagiert, um ihre Anforderungen zu verstehen und sicherzustellen, dass sie in der Produktfamilie berücksichtigt werden, um die Anforderungen von ein breites Spektrum an Kunden und Endverbrauchern. HP hat einen wesentlichen Beitrag zur ISA-Definition, zur Merced/Itanium-Mikroarchitektur und zu Itanium 2 geleistet, aber die Verantwortung für die Produktentwicklung lag bei Intel. Das ursprüngliche Ziel für die Auslieferung des ersten Produkts der Itanium-Familie (Codename Merced) war 1998.

Marketing

Intels Produktmarketing- und Industrieengagement-Bemühungen waren beträchtlich und erzielten Design-Wins mit der Mehrheit der OEMs von Enterprise-Servern, einschließlich jener, die damals auf RISC-Prozessoren basierten. und schließlich RISC- und Complex Instruction Set Computing (CISC)-Architekturen für alle Universalanwendungen ersetzen . Compaq und Silicon Graphics entschieden sich dafür, die Weiterentwicklung der Alpha- bzw. MIPS- Architekturen zugunsten einer Migration auf IA-64 aufzugeben .

1997 stellte sich heraus, dass die IA-64-Architektur und der Compiler viel schwieriger zu implementieren waren als ursprünglich angenommen, und die Lieferung von Itanium begann zu rutschen. Da Itanium der allererste EPIC-Prozessor war, stießen die Entwicklungsarbeiten auf mehr unerwartete Probleme, als das Team es gewohnt war. Darüber hinaus hängt das EPIC-Konzept von Compilerfähigkeiten ab, die noch nie zuvor implementiert wurden, sodass weitere Forschung erforderlich war.

Mehrere Gruppen entwickelten Betriebssysteme für die Architektur, darunter Microsoft Windows und Unix sowie Unix-ähnliche Systeme wie Linux , HP-UX , FreeBSD , Solaris , Tru64, UNIX und Monterey/64 (die letzten drei wurden vor der Markteinführung eingestellt). Im Jahr 1999 leitete Intel die Bildung eines Open-Source-Industriekonsortiums, um Linux auf IA-64 zu portieren. Sie nannten es "Trillium" (und später aufgrund eines Markenproblems in "Trillian" umbenannt), das von Intel geleitet wurde und Caldera Systems , CERN , Cygnus Solutions , Hewlett-Packard, IBM, Red Hat , SGI , SuSE , TurboLinux und VA Linux Systems . Als Ergebnis wurde ein funktionierendes IA-64-Linux vorzeitig geliefert und war das erste Betriebssystem, das auf den neuen Itanium-Prozessoren lief.

Intel gab den offiziellen Namen des Prozessors, Itanium , am 4. Oktober 1999 bekannt. Innerhalb weniger Stunden wurde der Name Itanic in einer Usenet- Newsgroup als Wortspiel mit dem Namen Titanic geprägt , dem "unsinkbaren" Ozeandampfer , der auf seiner Jungfernfahrt sank im Jahr 1912.

Itanium (Merced): 2001

Itanium (Merced)
KL Intel Itanium ES.jpg
Itanium-Prozessor
Allgemeine Information
Gestartet Juni 2001
Abgesetzt Juni 2002
Gängige Hersteller
Leistung
max. CPU- Taktrate 733 MHz bis 800 MHz
FSB- Geschwindigkeiten 266 MT/s
Zwischenspeicher
L2-Cache 96 KB
L3-Cache 2 oder 4 MB
Architektur und Klassifizierung
Befehlssatz Itanium
Physikalische Spezifikationen
Kerne
Steckdosen)
Produkte, Modelle, Varianten
Kernname(n)

Als Itanium im Juni 2001 veröffentlicht wurde, war seine Leistung den konkurrierenden RISC- und CISC-Prozessoren nicht überlegen.

Intel erkannte, dass der Mangel an Software ein ernstes Problem für die Zukunft sein könnte, und stellte Tausende dieser frühen Systeme unabhängigen Softwareanbietern (ISVs) zur Verfügung, um die Entwicklung zu fördern. Ein Jahr später brachten HP und Intel den Itanium-2-Prozessor der nächsten Generation auf den Markt.

Itanium 2: 2002–2010

Itanium 2 (McKinley)
KL Intel Itanium2.jpg
Itanium-2-Prozessor
Allgemeine Information
Gestartet 2002
Abgesetzt Geschenk
Entworfen von Intel
Gängige Hersteller
Leistung
max. CPU- Taktrate 733 MHz bis 2,66 GHz
Zwischenspeicher
L2-Cache 256 KB auf Itanium2
256 KB (D) + 1 MB(I) oder 512 KB (I) auf (Itanium2 9x00-Serie)
L3-Cache 1,5–32 MB
Architektur und Klassifizierung
Befehlssatz Itanium
Physikalische Spezifikationen
Kerne
Steckdosen)
Produkte, Modelle, Varianten
Kernname(n)
Itanium 2 im Jahr 2003

Der Itanium 2- Prozessor wurde 2002 veröffentlicht. Er beseitigte viele der Leistungsprobleme des ursprünglichen Itanium-Prozessors, die hauptsächlich durch ein ineffizientes Speichersubsystem verursacht wurden.

Im Jahr 2003 veröffentlichte AMD den Opteron , der eine eigene 64-Bit-Architektur ( x86-64 ) implementierte . Opteron hat sich im Bereich der Enterprise-Server schnell durchgesetzt, da es ein einfaches Upgrade von x86 ermöglichte . Intel reagierte mit der Implementierung von x86-64 (als Em64t ) in seinen Xeon- Mikroprozessoren im Jahr 2004.

Im November 2005 schlossen sich die großen Itanium-Serverhersteller mit Intel und einer Reihe von Softwareanbietern zur Itanium Solutions Alliance zusammen, um die Architektur zu fördern und die Softwareportierung zu beschleunigen.

Im Jahr 2006 lieferte Intel Montecito (vermarktet als Itanium 2 9000- Serie), einen Dual-Core-Prozessor, der die Leistung in etwa verdoppelte und den Energieverbrauch um etwa 20 Prozent senkte.

Itanium 9300 (Tukwila): 2010

Der Prozessor der Itanium 9300- Serie mit dem Codenamen Tukwila wurde am 8. Februar 2010 mit größerer Leistung und Speicherkapazität veröffentlicht. Tukwila sollte ursprünglich 2007 veröffentlicht werden.

Das Gerät verwendet einen 65-nm-Prozess, beinhaltet zwei bis vier Kerne, bis zu 24  MB On-Die-Caches, Hyper-Threading-Technologie und integrierte Speichercontroller. Es implementiert eine Double-Device Data Correction (DDDC), die hilft, Speicherfehler zu beheben. Tukwila implementiert auch Intel QuickPath Interconnect (QPI), um die auf dem Itanium-Bus basierende Architektur zu ersetzen. Es hat eine Spitzenbandbreite zwischen Prozessoren von 96 GB/s und eine Spitzenspeicherbandbreite von 34 GB/s. Mit QuickPath verfügt der Prozessor über integrierte Speichercontroller und verbindet den Speicher direkt mit QPI-Schnittstellen, um eine direkte Verbindung zu anderen Prozessoren und E/A-Hubs herzustellen. QuickPath wird auch auf Intel-Prozessoren mit der Nehalem- Mikroarchitektur verwendet, was es wahrscheinlich macht, dass Tukwila und Nehalem die gleichen Chipsätze verwenden können. Tukwila enthält vier Speichercontroller, von denen jeder mehrere DDR3- DIMMs über einen separaten Speichercontroller unterstützt, ähnlich wie der auf Nehalem basierende Xeon-Prozessor mit dem Codenamen Beckton .

Itanium 9500 (Poulson): 2012

Der Prozessor der Itanium 9500-Serie mit dem Codenamen Poulson ist der Nachfolgeprozessor von Tukwila, verfügt über acht Kerne, eine 12-wide-Issue-Architektur, Multithreading-Verbesserungen und neue Anweisungen zur Nutzung der Parallelität, insbesondere in der Virtualisierung. Die Cachegröße von Poulson L3 beträgt 32 MB. Die L2-Cache-Größe beträgt 6 MB, 512 I  KB , 256 D KB pro Kern. Die Die-Größe beträgt 544 mm², weniger als beim Vorgänger Tukwila (698,75 mm²).

Auf der ISSCC 2011 präsentierte Intel ein Papier mit dem Titel "Ein 32nm 3.1 Billion Transistor 12-Wide-Issue Itanium Processor for Mission Critical Servers". Angesichts der Geschichte von Intel, Details über Itanium-Mikroprozessoren auf der ISSCC preiszugeben, bezieht sich dieses Papier höchstwahrscheinlich auf Poulson. Analyst David Kanter spekuliert, dass Poulson eine neue Mikroarchitektur mit einer fortschrittlicheren Form von Multi-Threading verwenden wird, die bis zu zwei Threads verwendet, um die Leistung für Single-Thread- und Multi-Thread-Workloads zu verbessern. Auf der Hotchips- Konferenz wurden einige neue Informationen veröffentlicht . Neue Informationen präsentieren Verbesserungen beim Multithreading, Verbesserungen der Ausfallsicherheit (Instruction Replay RAS) und einige neue Befehle (Thread-Priorität, Integer-Befehl, Cache-Prefetching, Datenzugriffshinweise).

Itanium 9700 (Kittson): 2017

Der Kittson ist der gleiche wie der 9500 Poulson, aber etwas höher getaktet.

Lebensende: 2021

Im Januar 2019 gab Intel bekannt, dass Kittson mit einem letzten Bestelldatum im Januar 2020 und einem letzten Auslieferungsdatum im Juli 2021 eingestellt wird.

Ein Nachfolger ist nicht geplant.

Die Architektur

Intel hat den Itanium- Befehlssatz ausführlich dokumentiert und die Fachpresse hat Übersichten bereitgestellt. Die Architektur wurde im Laufe ihrer Geschichte mehrmals umbenannt. HP nannte es ursprünglich PA-WideWord . Intel nannte es später IA-64 , dann Itanium Processor Architecture (IPA), bevor es sich für Intel Itanium Architecture entschied , aber es wird immer noch allgemein als IA-64 bezeichnet .

Es handelt sich um eine 64-Bit-registerreiche explizit parallele Architektur. Das Basisdatenwort ist 64 Bit lang, byteadressierbar. Der logische Adressraum beträgt 2 64 Byte. Die Architektur implementiert Prädikation , Spekulation und Verzweigungsvorhersage . Es verwendet Registerfenster mit variabler Größe für die Parameterübergabe. Der gleiche Mechanismus wird auch verwendet, um die parallele Ausführung von Schleifen zu ermöglichen. Spekulation, Vorhersage, Prädikation und Umbenennung werden vom Compiler gesteuert: Jedes Befehlswort enthält dafür zusätzliche Bits. Dieser Ansatz ist das charakteristische Merkmal der Architektur.

Die Architektur implementiert eine große Anzahl von Registern:

  • 128 allgemeine Integer- Register , die 64-Bit plus ein Trap-Bit ("NaT", was für "kein Ding" steht) für die spekulative Ausführung verwendet werden . 32 davon sind statisch, die anderen 96 sind unter Verwendung von Registerfenstern mit variabler Größe gestapelt oder rotieren für Pipeline-Schleifen. liest immer 0.gr0
  • 128 Gleitkommaregister . Die Gleitkommaregister sind 82 Bit lang, um die Genauigkeit für Zwischenergebnisse zu bewahren. Anstelle eines dedizierten "NaT"-Trap-Bits wie die Integer-Register haben Gleitkommaregister einen Trap-Wert namens "NaTVal" ("Kein Ding-Wert"), ähnlich (aber verschieden von) NaN . Diese haben ebenfalls 32 statische Register und 96 gefensterte oder rotierende Register. liest immer +0.0 und liest immer +1.0 .fr0fr1
  • 64 Ein-Bit-Prädikatsregister. Diese haben auch 32 statische Register und 96 gefensterte oder rotierende Register. liest immer 1 (wahr).pr0
  • 8 Verzweigungsregister, für die Adressen indirekter Sprünge. wird auf die Rücksprungadresse gesetzt, wenn eine Funktion mit aufgerufen wird .br0br.call
  • 128 Register für spezielle Zwecke (oder "Anwendung"), die hauptsächlich für den Kernel und nicht für gewöhnliche Anwendungen von Interesse sind. Zum Beispiel zeigt ein Register namens bspauf den zweiten Stapel, wo die Hardware automatisch Register überläuft, wenn das Registerfenster umläuft.

Jedes 128-Bit-Befehlswort wird als Bündel bezeichnet und enthält drei Slots, die jeweils einen 41-Bit- Befehl enthalten , plus eine 5-Bit- Schablone , die angibt, welcher Befehlstyp in jedem Slot vorhanden ist. Diese Typen sind M-Einheit (Speicherbefehle), I-Einheit (Ganzzahl-ALU, Nicht-ALU-Ganzzahl oder lange direkte erweiterte Befehle), F-Einheit (Gleitkommabefehle) oder B-Einheit (Verzweigung oder langer Zweig erweitert) Anweisungen). Die Vorlage codiert auch Stopps, die anzeigen, dass zwischen Daten vor und nach dem Stopp eine Datenabhängigkeit besteht. Alle Anweisungen zwischen einem Paar von Anschlägen bilden eine Befehlsgruppe , unabhängig von ihrer Bündelung und müssen frei von vielen Arten von Datenabhängigkeiten sein; Dieses Wissen ermöglicht es dem Prozessor, Befehle parallel auszuführen, ohne seine eigene komplizierte Datenanalyse durchführen zu müssen, da diese Analyse bereits durchgeführt wurde, als die Befehle geschrieben wurden.

Innerhalb jedes Slots werden alle Befehle bis auf wenige prädiziert, wobei ein Prädikatsregister spezifiziert wird, dessen Wert (wahr oder falsch) bestimmt, ob der Befehl ausgeführt wird. Prädizierte Anweisungen, die immer ausgeführt werden sollen, werden auf prädiziert , was immer als wahr gelesen wird. pr0

Die Assemblersprache und das Anweisungsformat IA-64 wurden bewusst so konzipiert, dass sie hauptsächlich von Compilern und nicht von Menschen geschrieben werden. Anweisungen müssen in Dreierpaketen gruppiert werden, um sicherzustellen, dass die drei Anweisungen einer zulässigen Vorlage entsprechen. Anweisungen müssen zwischen bestimmten Typen von Datenabhängigkeiten Stopps setzen, und Stopps können auch nur an begrenzten Stellen gemäß den zulässigen Vorlagen verwendet werden.

Befehlsausführung

Der Fetch-Mechanismus kann bis zu zwei Bundles pro Takt aus dem L1- Cache in die Pipeline einlesen . Wenn der Compiler dies maximal ausnutzen kann, kann der Prozessor sechs Befehle pro Taktzyklus ausführen. Der Prozessor hat dreißig funktionale Ausführungseinheiten in elf Gruppen. Jede Einheit kann eine bestimmte Teilmenge des Befehlssatzes ausführen , und jede Einheit wird mit einer Rate von einem Befehl pro Zyklus ausgeführt, es sei denn, die Ausführung hält beim Warten auf Daten an. Während nicht alle Einheiten in einer Gruppe identische Teilmengen des Befehlssatzes ausführen, können gemeinsame Befehle in mehreren Einheiten ausgeführt werden.

Die Gruppen der Ausführungseinheiten umfassen:

  • Sechs Allzweck-ALUs, zwei Integer-Einheiten, eine Shift-Einheit
  • Vier Daten-Cache-Einheiten
  • Sechs Multimedia-Einheiten, zwei parallele Verschiebungseinheiten, eine parallele Multiplikation, eine Bevölkerungszählung
  • Zwei 82-Bit-Gleitkomma- Multiplikations-Akkumulations- Einheiten, zwei SIMD- Gleitkomma-Multiplikations-Akkumulations-Einheiten (jeweils zwei 32-Bit-Operationen)
  • Drei Filialen

Im Idealfall kann der Compiler Anweisungen oft in Sätze von sechs gruppieren, die gleichzeitig ausgeführt werden können. Da die Gleitkommaeinheiten eine Multiplikation-Akkumulations-Operation implementieren , kann eine einzelne Gleitkomma-Anweisung die Arbeit von zwei Anweisungen ausführen, wenn die Anwendung eine Multiplikation gefolgt von einer Addition erfordert: Dies ist in der wissenschaftlichen Verarbeitung sehr üblich. Wenn es auftritt, kann der Prozessor vier FLOPs pro Zyklus ausführen . Zum Beispiel hatte das 800 MHz Itanium eine theoretische Bewertung von 3,2 G FLOPS und das schnellste Itanium 2 mit 1,67 GHz wurde mit 6,67 GFLOPS bewertet.

In der Praxis kann der Prozessor oft nicht ausgelastet sein, da nicht alle Slots mit nützlichen Anweisungen gefüllt sind, z. B. aufgrund von Datenabhängigkeiten oder Einschränkungen in den verfügbaren Bundle-Vorlagen. Der dichteste mögliche Code erfordert 42,6 Bits pro Befehl, verglichen mit 32 Bits pro Befehl bei herkömmlichen RISC-Prozessoren der Zeit, und No-Ops aufgrund verschwendeter Slots verringern die Codedichte weiter. Zusätzliche Anweisungen für spekulatives Laden und Hinweise für Branches und Cache sind selbst mit modernen Compilern nur schwer optimal zu generieren.

Speicherarchitektur

Von 2002 bis 2006 teilten sich Itanium 2-Prozessoren eine gemeinsame Cache-Hierarchie. Sie verfügten über 16 KB Level-1-Befehlscache und 16 KB Level-1-Datencache. Der L2-Cache wurde vereinheitlicht (sowohl Befehle als auch Daten) und ist 256 KB groß. Der Level-3-Cache wurde ebenfalls vereinheitlicht und in der Größe von 1,5 MB bis 24 MB variiert. Der 256-KB-L2-Cache enthält ausreichend Logik, um Semaphor- Operationen zu handhaben, ohne die arithmetisch-logische Haupteinheit (ALU) zu stören .

Auf den Hauptspeicher wird über einen Bus zu einem Chipsatz außerhalb des Chips zugegriffen . Der Itanium 2-Bus wurde ursprünglich McKinley-Bus genannt, wird aber heute normalerweise als Itanium-Bus bezeichnet. Die Geschwindigkeit des Busses hat sich mit neuen Prozessor-Releases stetig erhöht. Der Bus überträgt 2×128 Bit pro Taktzyklus, so dass der 200-MHz-McKinley-Bus 6,4 GB/s und der 533-MHz-Montecito-Bus 17,056 GB/ s überträgt

Architektonische Änderungen

Itanium-Prozessoren, die vor 2006 veröffentlicht wurden, verfügten über Hardwareunterstützung für die IA-32- Architektur, um die Unterstützung von Legacy-Serveranwendungen zu ermöglichen, aber die Leistung für IA-32-Code war viel schlechter als für nativen Code und auch schlechter als die Leistung zeitgenössischer x86-Prozessoren. 2005 entwickelte Intel den IA-32 Execution Layer (IA-32 EL), einen Software-Emulator, der eine bessere Leistung bietet. Mit Montecito hat Intel daher die Hardwareunterstützung für IA-32-Code eliminiert.

Im Jahr 2006 hat Intel mit der Veröffentlichung von Montecito eine Reihe von Verbesserungen an der grundlegenden Prozessorarchitektur vorgenommen, darunter:

  • Hardware-Multithreading: Jeder Prozessorkern verwaltet den Kontext für zwei Ausführungsthreads. Wenn ein Thread während des Speicherzugriffs anhält, kann der andere Thread ausgeführt werden. Intel nennt dies "grobes Multithreading", um es von der " Hyper-Threading- Technologie " zu unterscheiden, die Intel in einigen x86- und x86-64- Mikroprozessoren integriert hat.
  • Hardwareunterstützung für Virtualisierung : Intel hat die Intel Virtualization Technology (Intel VT-i) hinzugefügt, die Hardwareunterstützung für Kernvirtualisierungsfunktionen bietet. Die Virtualisierung ermöglicht es einem Software-„ Hypervisor “, mehrere Betriebssysteminstanzen gleichzeitig auf dem Prozessor auszuführen.
  • Cache-Verbesserungen: Montecito fügte einen geteilten L2-Cache hinzu, der einen dedizierten 1 MB L2-Cache für Anweisungen enthielt. Der ursprüngliche 256 KB L2-Cache wurde in einen dedizierten Datencache umgewandelt. Montecito enthielt auch bis zu 12 MB L3-Cache auf dem Chip.

Siehe Chipsätze...Andere Märkte .

Siehe auch

Verweise

Externe Links