Itanium

Itanium（アイテニアム）は、インテルが2001年にリリースした、64ビットマイクロプロセッサ。ヒューレット・パッカード (HP) と共同開発した高性能サーバ向けの命令セットアーキテクチャであるIA-64を初めて採用した。 Itanium 2（アイテニアムツー）は、翌2002年に発表されたItaniumの後継で、3次キャッシュを内蔵させるなど性能の向上を図った。2008年2月25日、インテルはItanium 2の表記を「Itanium 9000」などに変更した。これはプロセッサナンバーの採用によりItaniumとItanium 2を区別する必要性が薄れたこと、ブランド力の強化などがあげられる。 2019年1月、インテルは2021年のItaniumシリーズ製造終了を発表した。 16ビットおよび32ビットのx86命令セットアーキテクチャのマイクロプロセッサーによってパーソナルコンピュータ市場では事実上の標準となったインテルは、1994年に独自の64ビット命令セットアーキテクチャである「IA-64」を発表し、従来の32ビットx86アーキテクチャ (x86-32) を「IA-32」と呼ぶようになった。 IA-64は、従来のx86-32との命令セットレベルの互換性という制約を捨てる代わりに、ヒューレット・パッカード (HP) と共同開発したEPICアーキテクチャを採用し、コンパイラなど主にソフトウェアによる命令レベルの並列性を発揮することで性能と将来への拡張性を確保することを目的とした。 インテルはIA-64により、各社のRISCプロセッサが占めるハイエンドの64ビット市場に進出し、HPは従来からのPA-RISCからの移行を表明した。IA-64は同時に特許などで保護されたアーキテクチャであるため、AMD などの互換プロセッサメーカーの振り切りを狙う目的もあり、将来的にはIA-32 (x86) からの移行も掲げられていた。またインテルがメーカー各社に供給することで、幅広いハードウェアやソフトウェアでサポートと、大量生産による価格競争力の向上により、当時の32ビット市場におけるIA-32に続いて、次世代の64ビット市場で事実上の標準となることが提唱された。 しかしIA-64を採用した最初のマイクロプロセッサであるItanium（コードネームMerced）は開発が遅れ、当初予定の1999年から2年後の2001年にリリースされたが、当時の各社RISCプロセッサだけではなく、Xeonなど自社のx86プロセッサと比較しても価格性能比が低く、サポートするハードウェアやソフトウェアは広まらず、またx86エミュレーションの遅さもあり、広くは普及しなかった。 2002年には性能を改善したItanium 2がリリースされ、2008年の「Itanium 9000」番台への名称変更を経たが、同時期の各社プロセッサと比較しての価格性能比や、更に64ビット命令セットアーキテクチャとしては後発のx86-32を64ビット拡張したx64 (x86-64) が普及したこともあり、2010年の時点でも、IA-64 (Itanium) の普及は一部のメインフレームやミッドレンジコンピュータの移行先など、限定的な市場に留まった。 Itanium 2の位置付けは、RISCプロセッササーバやメインフレームの置き換えであるとされており、そのため信頼性の向上にプロセッサレベルで対応している。シリーズ共通の特徴は以下の通りである。 16KBの1次命令キャッシュと16KBの1次 (L1) データキャッシュ 2次 (L2) キャッシュは規定されていないが特筆していない場合は256KB（命令/データ共通） 3次 (L3) キャッシュは機種により異なり、1.5MB〜24MB MckinleyバスまたはScalability Portとも呼ばれるシステムバスは128ビット幅 200MHz（DDRなので実質400MHz）の場合、6.4GB/s 2004年には、266MHz（実質533MHz）、8.5GB/sとなった 2005年には、333MHz（実質667MHz）、10.6GB/sとなった ItaniumからItanium 2へのマイクロアーキテクチャ上の変更点は、整数演算&メモリのユニットが2個から4個に拡張（整数演算専用ユニットは別に2個ある）、命令発行の組み合わせを増大させた、パイプライン段数を10段から8段に変更、などがあげられる。 IA-64だけでなく、IA-32ベースのアプリケーションも実行可能である。 Montecitoより前のCPUでは、IA-32を処理するハードウェアデコーダが搭載されていた。この機能はWindows Itanium EditionにおけるWin32エミュレーションレイヤーでかつて使われていた（Itaniumに移植されなかったプログラム、OCX、DLLの実行に必須で、特にActiveXに対する後方互換性は重大な課題であった）。Montecitoからはハードウェアデコーダは削除され、EFIでIA-32エミュレータがロードされるようになった。 キャッシュ設計上の興味深い点としてL2キャッシュがALUを使わずにセマフォーを操作できるロジックを備えている点である。デュアルコアである2006年7月発売の製品Montecitoを皮切りに、以降のItaniumファミリはマルチコアチップとなる。 1994年 インテルとHPがIA-64の共同開発を発表 1999年 インテルとHPがIA-64の詳細を発表 2001年 Itanium (Merced) リリース 2002年 Itanium 2 (Mckinley) リリース 2003年 Itanium 2 (Madison) リリース 2004年 Itaniumの設計よりHPが撤退 2005年 Itanium Solutions Alliance (ISA) 発足 2006年 Itanium 2 9000 (Montecito) リリース（後にItanium 9000と改称） 2007年 Itanium 2 9100 (Montvale) リリース（後にItanium 9100と改称） 2008年 Itanium 2をItaniumと改称 2010年 Itanium 9300 (Tukwila) リリース 2012年 Itanium 9500 (Paulson) リリース 2017年 Itanium 9700 (Kittson) リリース 2020年1月30日 最終受注日 2021年7月29日 最終出荷日 2001年5月29日に発表。180 nmプロセスで製造され、動作周波数は最大 800 MHz。パッケージ内に外部3次キャッシュとして2MBか4MBを選択できる。価格は1,200 - 4,000USドル。しかし、その性能は業界を満足させるものではなかった。これは当初1999年のリリースを目指していたものの、度重なる延期により設計仕様が2年遅れとなってしまったことも大きい。IA-64モードでは同クロック周波数のx86と比較して若干性能がよい程度で、エミュレーションでIA-32のコードを実行すると非常に低い性能しか出なかった(同クロック周波数のx86の1/8)。激しい市場競争により同時期のx86プロセッサは倍以上の1.7GHzに達しており、プラットフォームも旧式化していた。 2002年7月8日に発表。0.18 μmプロセスで製造される第一世代のItanium 2。IA-64命令セットにbranchlong命令が追加され、実行ユニットを4から6へ増加、キャッシュ周りが再設計されるなどして性能が最大2倍向上しているが、その恩恵を受けるにはItanium2向けに再コンパイルする必要がある。なおIA-32性能も大幅に改善されたが、同時期のx86プロセッサの性能には遠く及ばず、Mckinleyでのx86コード実行速度はクロック周波数が2/3のPentium IIと同等である。開発初期段階ではFlagstaff (フラッグスタッフ) という名称で開発されていた。 2003年6月末に登場した0.13 μmプロセスで製造される第二世代のItanium 2。ダイサイズは374平方ミリメートル。消費電力はMckinleyと変わらず130ワット。発表当初は3次キャッシュを最大で6 MB搭載するものが出荷されていたが、後に最大で9 MB搭載するもの (Madison-9M) が発表された。2005年にはFSBが667 MHzのものが発表された。最新のものはSPECfpで2,801を記録した (日立製作所のComputing blade)。 2003年にリリースされた2CPUまでのSMPに対応したMadisonの派生版。低電圧版の位置付けで、Madisonよりも消費電力が大幅に抑えられている。消費電力は63ワットでブレードサーバや1Uサーバ向きである。 ラインナップ - 1 GHz (L3 1.5 MB) ヒューレット・パッカード (HP) がmx2デュアルプロセッサモジュールとして2003年に発表し、2004年から出荷した、Itanium 2を二次利用したプロセッサ。ふたつのMadisonコアと32 MBのL4キャッシュを通常のItanium 2と同じサイズにパッケージ化したもの。HPのみが販売しており、最近では1.1 GHzで各コアに4 MBのL3キャッシュを搭載したものを使っている。 2004年に登場した2CPUまでのSMPに対応したMadison (Deerfield) の派生版。通常電圧版ではFSBクロックが533 MHzに向上している。 ラインナップ 通常電圧版 - 1.6 GHz (L3 3 MB) 低電圧版 - 1.3 GHz (L3 3 MB) 2006年7月18日に発表、即日発売されたItanium 2シリーズの中の一つ。当初の名称はDual-Core Itanium 2 Processor 9000。この9000はプロセッサナンバで、広義では9xxxの総称とも言えるが、狭義として90xxの総称でもある。後のItanium 2の名称のItaniumとの統合により、このプロセッサの名称はItanium 2 9000からItanium 9000に改められた。 Intelの発表では、Itanium 9050は前世代にあたるMadisonとの比較で、性能が最大2倍、消費電力が最大2割減となり、消費電力当たり性能は最大2.5倍に達するとしている。 9000シリーズの基本共通は、製造プロセスルールは90 nm、L2キャッシュ容量は2.5 MB (デュアルコアのコア毎に1 MBのコードと0.25 MBのデータをキャッシュする)。L3キャッシュは最大容量の製品で24 MB。補助機能としてVirtualization Technology (VT)、Hyper-Threading Technology (HT、一部の製品で無効化されている)、Cache Safe Technology機能を搭載する。熱設計電力は9010のみ75 Wで、シングルコア。 Montecitoに用いられるHT技術は、NetBurstマイクロアーキテクチャでの同時マルチスレッディング (Simultaneous Multi-Threading; SMT) とは違い、CGMT (Coarse-Grain Multi-Threading) を使用している。 Montecito の機能強化版。2007年10月31日即日販売された。名称はDual-Core Itanium Processor 9100番台。 製造プロセスルールは90 nm、最高1.66 GHzの動作周波数、667 MHzのFSBを備え、104W以下の消費電力で動作。2つのプロセッサとチップセットが同じバスに搭載された3ロードバスによって、エンタープライズおよびハイパフォーマンスコンピューティング (HPC) での使用において、優れた能力を発揮する。 また、サーバの利用が低い時の消費電力を削減する新機能「デマンド・ベース・スイッチング」(DBS) により、エネルギーコストの低減にも寄与する。 さらに2008年第1四半期からコアレベルロックステップ機能付きモデルを出荷開始する。この機能はプロセッサーコア内で起こるエラーの検出を確実に行うことでデータの完全性とアプリケーションの信頼性を向上させる新技術である。 2010年2月9日発表。コアごとに6 MBのL3キャッシュを搭載し、QuickPath InterConnectと、2つのDDR3メモリコントローラを備える。QuickPathの合計帯域は96GB/secとなる。かつてFoxtonテクノロジと言われていた、インテル ターボ・ブースト・テクノロジーを備える。製造プロセスルールは65 nm 8層メタルである。従来のItaniumプロセッサに比べ、低電圧動作が可能となっているが、4コアになった分、TDPは最大185Wと大きい。トランジスタ数は20億5000万個、ダイサイズは約700平方mmと巨大なものになっている。また、ソフトエラー（英語版）対策を強化し、宇宙線の中性子によるエラーを1/80から1/100に抑えたとしている。プロセッサコアは90 nmのMontecitoコアを65 nmにシュリンクした以外は目立った改良はない（2008年1Q時点でインテルは、45 nm High-K 9層メタルのIA-32プロセッサを出荷している）。当初の発売予定は2007年であったが、2008年末に延期され 、2008年末には更に2009年半ばへ延期され、2009年2月にはデザイン修正のため2009年後半に延期された 。2009年5月にはリリースを再び延期し、出荷予定を2010年第1四半期に設定し直した。2010年2月9日、当初予定から3年遅れで「Itaniumプロセッサー 9300 番台」として発表された。 2012年11月9日発表。9500シリーズは、Tukwila の後継プロセッサとしてPoulsonとの開発コード名で開発された。製造プロセスルールは45 nmはスキップして32 nmを採用し、最大8コア、マルチスレッド処理を強化し、特に仮想化などの並列処理用の命令を追加した。Intel VT-x, VT-d, VT-i 対応。クロックは最大2.53 GHzとなった。2010年から実施しているXeonとの基盤要素共通化を反映させたとしている。対応メモリは DDR3-800 と DDR3-1067。 2017年5月発表。当初2013年リリースを目指し、22nmプロセスによるスループットの大幅な向上およびシングルレベルの向上にXeonとのソケット互換を実現させる計画だったが、定義の見直しにより32nmのまま Itanium 9500 と互換性を維持することになった。最終的に5年の歳月を経てステッピングチェンジが行われただけで、インテルのデータシートによると上位2モデルのクロック周波数向上以外に9500から機能面の変化なし。 インテルはXeonとのソケット互換について将来において再検討されるとしていたが、IDG Newsに対してKittsonが最後のItaniumであると明かした。 ヒューレット・パッカード・エンタープライズは搭載サーバーを少なくとも2025年12月31日までサポート予定。対応OSはHP-UX。 1994年のIA-64発表当時は、IA-32(x86)でパーソナルコンピュータ市場での事実上の標準となったインテルが、PA-RISCとHP-UXを持つHPとの共同開発により、64ビット市場でMIPS、Alpha、SPARC、POWERなどの各社のRISCプロセッサと正面から競合し、同時にAMDなどの互換プロセッサベンダーを振り切るものと広く報道された。 このためハイエンド市場への進出を狙うマイクロソフトはWindows、メインフレームやオフィスコンピュータなどの自社独自プロセッサの移行先とするBull GCOS、NEC ACOS-4などの他、競合プロセッサの開発を続けるIBMやサンもオペレーティングシステムであるAIXやSolarisではIA-64版の開発を並行して進めた。 しかし初代Itanium (Merced) のリリースは当初予定の1999年から遅れて2001年となり、各社はItanuim対応製品をリリースしたが、当時の各社RISCプロセッサと比較しての性能の低さ、対応アプリケーションの少なさ、IA-32互換モードの遅さもあり、広くは普及せず、AIXやSolarisのIA-64版はリリースされなかった。 その後も各社RISCと比較してItaniumの性能向上は進まず、一方でレジスタ数や信頼性などで各社独自プロセッサの移行は進んだ結果、IA-64 (Itanium) はニッチ市場化、特に日本市場への偏りが進んだ。一方で、2003年には従来のx86の64ビット対応であるAMD64が登場し、2004年から2006年にかけてインテルもIntel 64として追随したため、各社のローエンドサーバーはx64が主流となった。 1999年に設立されたスタートアップのPlatform Solutionsは、主にアムダールを退職したエンジニアを擁し、HP製のItanium 2プラットフォーム上でIBMメインフレームのバイナリコードをエミュレートして、IBMのオペレーティングシステムを含む既存のメインフレームのアプリケーションをそのまま動作させるという野心的なソフトウェアを開発した（最低2 CPUのSMPプラットフォームで、一つのCPUがLinuxで走るI/Oプロセッサとして動作し、残りのCPUはメインフレームの命令セットをエミュレートするSMPとして動作する）。IBM互換のコンピュータ会社が次々とメインフレームのビジネスから撤退して、IBMが再び独占することになったメインフレームのマーケットの内、主にローエンド機器のシェアを狙ったが、IBMはこれに対して特許侵害などを理由に訴訟を起こし、最終的にIBMがPlatform Solutionsを買収することで決着したことで、この「新しい互換機ビジネス」は幻のものとなった。 2004年にはItaniumの設計よりHPは撤退し、Itanium の開発に携わった HP の社員はインテルに移籍し、Itaniumはインテルからの販売のみとなった。また2005年9月にItanium Solutions Alliance (ISA) が設立された。 マイクロソフトは2005年にWindows XP Professional 64-bit Itanium Edition の販売を終了して、代わりに x64 Edition を販売開始し、さらに2010年4月には残るサーバー製品である Windows Server でも今後のItaniumサポート中止を表明した。レッドハットは2009年に次期RHEL 6ではItaniumはサポートしないことを表明した。オラクルは2011年3月にItanium向けの全ソフトウェア開発の終了を発表したが、直後にHPはオラクルを批判しItanium向けHP-UX開発継続を表明した。同年6月、HPはオラクルを契約違反で提訴、2012年8月に裁判所は契約に基づくサポート義務を認定、翌9月にオラクルはItanium向けソフトウェアの開発継続を発表した。 2011年現在、Itaniumの採用は主に、ユニシス OS2200やNEC ACOS-4やHP NonStopなどの独自仕様のメインフレームおよびオフィスコンピュータの代替市場と、HPやNECや日立の HP-UX 稼働サーバーの一部、SGIなどの Linux サーバーの一部に留まっている。スーパーコンピュータ市場 (TOP500) でのIA-64システムの比率は最大では1〜2割となったが、2009年には1.2%に低下し、2013年6月のリストでは1つも採用されていない。 Itaniumの主な設計上の問題は3次キャッシュの遅延時間（レイテンシ）が大きすぎる点にある。インテルの設計者は明らかに、バンド幅が大きければレイテンシの問題は相殺されると期待していた。しかし、レイテンシが大きすぎキャッシュが遅くなったため、主記憶のインターフェースと大差のないものになってしまった。1次および2次キャッシュはかなり小さく（32KBと96KB）、システムバスの負荷を増大させた。キャッシュバンド幅が小さいことに加えて、IA-64コードはx86に比較して大きくなる傾向があった。したがって、キャッシュに置いておける命令数はキャッシュサイズから想像される以上に小さい。 Itaniumはマルチプロセッサを前提に設計されたため、バスも低速だった。 Athlonが当時使っていたFSBのクロックは200MHzで、Pentium IIIはそれよりさらに低速な133MHzだった。 Itaniumのクロック周波数自体も、Athlonが1GHzのクロック周波数を実現していた当時としては低かった。 結論として、1998年〜1999年の出荷を想定して決められたと考えられている技術スペックに対し、開発の相次ぐ遅延により、出荷する前に時代遅れになってしまった。ただしItaniumの支持者は、シングルスレッドの実行に関してはItaniumがx86よりも高速であると主張している。