解説デュアルコアItanium 2は何かが違う? デジタルアドバンテージ 小林 章彦2006/08/05 |
|
|
2006年7月19日、当初の予定よりもほぼ1年遅れて、開発コード名「Montecito(モンテシト)」で呼ばれていた「デュアルコアItanium 2 9000番台」が正式発表となった。Montecitoは既存のItanium 2とのソケット互換性とソフトウェア互換性が維持されていることもあり、同日、富士通や日立製作所などのサーバ・ベンダからMontecito搭載のサーバが発表されている。
もちろん、当初の予定では2005年夏にリリース予定であったので、サーバ・ベンダの準備は万全というところだろう。すでに1年ほど前からインテルやサーバ・ベンダが開催する多くのイベントでMontecitoがデモされていたほどで、今回の正式発表は「待望」というよりも「やっと」といった印象の方が強いくらいだ。ここでは、Montecitoの新機能と、Itaniumプロセッサ・ファミリ(IPF)の今後について解説する。
Montecitoのリリースが遅れた理由
Montecitoが遅れた理由として、発表会の席上、Intelの副社長兼デジタル・エンタープライズ事業本部長のトーマス・キルロイ(Thomas M. Kilroy)氏は「Itaniumの市場は信頼性が重要であり、その信頼性を確保するために時間が必要であった」と述べた。どうも「解説:Itaniumプロセッサの行方は混とんかバラ色か?」で記したとおり、90nmプロセス製造による消費電力の大きさが問題だったようだ。
Montecitoでは単純に2個のItanium 2(Madison)を結合してデュアルコア化したわけではなく、キャッシュの構成を変更したり、新機能を追加したりした上で、ダイ上に2つのコアが効率よく並ぶように設計も変更している。特にキャッシュの構成は大幅に変更されており、従来のItanium 2では2次キャッシュが単一の256Kbytesであったのに対し、命令キャッシュとデータ・キャッシュを分離してそれぞれ1Mbytesずつという構成に変更されている。また3次キャッシュもItanium 2 9M(Madison 9M)の9Mbytesから12Mbytes(コアごと)となった。3次キャッシュもコアごとに独立しており、コア間を接続するアービター(Arbiter)によってキャッシュの整合性が保たれる仕組みとなっている。
このようなキャッシュ構成の変更とデュアルコア化によって、Montecitoは17億2000万個(かなりの分量がキャッシュ・メモリだが)ものトランジスタで実装されることになった。その結果、何らかの問題が発生した場合の設計変更と、その後の検証に時間がかかったことは容易に想像がつく。実際に当初の計画では、最高動作クロック2GHzと667MHz FSBがサポートされる予定だったが、2005年末から2006年初めにかけて、この計画はキャンセルされてしまった。その結果、Montecitoの最高動作クロックは1.6GHz/FSB 533MHzと、動作クロック1.66GHz/FSB 667MHzをラインアップ(2005年7月19日にモデル追加)する現行のItanium 2 9Mよりもスペック・ダウンとなってしまった。
プロセッサ・ナンバ | 価格(1000個ロット時) | 動作クロック | FSB | 3次キャッシュ容量 | 消費電力 | デュアルコア | HTテクノロジ | バーチャライゼーション・テクノロジ | キャッシュ・セーフ・テクノロジ |
9050 | 42万4580円 | 1.60GHz | 400MHz/533MHz | 24Mbytes | 104W | ○ | ○ | ○ | ○ |
9040 | 22万7700円 | 1.60GHz | 400MHz/533MHz | 18Mbytes | 104W | ○ | ○ | ○ | ○ |
9030 | 17万8480円 | 1.60GHz | 400MHz/533MHz | 8Mbytes | 104W | ○ | × | ○ | ○ |
9020 | 10万4650円 | 1.42GHz | 400MHz/533MHz | 12Mbytes | 104W | ○ | ○ | ○ | ○ |
9015 | 8万6130円 | 1.40GHz | 400MHz | 12Mbytes | 104W | ○ | ○ | ○ | ○ |
9010 | 8万40円 | 1.60GHz | 400MHz/533MHz | 6Mbytes | 75W | × | × | ○ | ○ |
Montecitoのラインアップ | |||||||||
デュアルコアItanium 2 9010は、シングルコアである点に注意 |
導入が見送られたFoxtonテクノロジ
消費電力(発熱)に余裕がある場合に動作クロックを一時的に引き上げる新機能「Foxton(フォックストン)テクノロジ」もまた、Montecitoでの有効化を断念している。Foxtonテクノロジは、Montecitoをベースに65nmプロセスで製造される「Montvale(モントベール)」で有効化されるのではないかと見られていたが、その次の「Tukwila(ツクウィラ)」まで見送られることも明らかになっている。
もともとFoxtonテクノロジは、出荷時に設定している動作クロックにおけるTDP(熱設計電力:設計上想定される熱量)に余裕があることを前提にしている。サーバ本体の設計では、プロセッサのTDPにマージンを加え、例えばTDP 130Wのプロセッサを搭載するサーバならば、TDP 150Wでも対応可能な冷却能力で設計するのが一般的で、通常では熱設計的には余裕がある。そして、プロセッサ自体もTDPの最大値に達することはほとんどなく、通常はもっと低い消費電力で動作している。つまり十分な冷却能力を持つサーバに搭載され、通常の利用範囲ならば発熱許容量は十分に余裕があることになる。余裕があるのならば、その分、動作クロックを引き上げ、熱量が多少増えても障害が発生しない、というのがFoxtonテクノロジのアイデアである。これによって、一時的にでも動作クロックが引き上げられれば、その分、性能を向上させことができる。
もちろん、冷却ファンの故障やそのほかの障害によって、冷却能力が落ちれば、TDP以上の熱量が発生してしまい、プロセッサがエラーを起こすことになる。その結果、信頼性が損なわれることになる。ある意味、非常に危険なテクノロジなわけだ。そこでFoxtonテクノロジでは、チップ上に熱センサーを配置し、TDPを超えない範囲で動作クロックを制御する。だが、熱を測る場所によっては、別の場所でエラーが起こってしまう可能性も考えられる。また、発熱量が一番大きくなりそうな部分に熱センサーを配置しても、熱センサー自体の発熱量が低いので、その部分の発熱量が下がり、一番熱い部分が移動してしまうことになる。
Montecitoでは、前述のような発熱量の検出という問題と、そもそもの発熱量の高さから動作クロックが引き上げにくいという問題があったようだ。65nmプロセスに移行するMontvaleならば、これらの改善も可能だと思われるが、やはりFoxtonテクノロジが有効化されない。Montecito/Montvale(両方ともチップ・デザインはほぼ共通)では、さらにほかの技術的な問題もあった可能性がある。
Pentium 4/Intel Xeonとは異なるHTテクノロジ
Foxtonテクノロジの導入は見送られてしまったが、Montecitoにはいくつかの新技術が導入されている。その1つが、ハイパースレッディング・テクノロジ(HTテクノロジ)である。HTテクノロジと聞くと、Pentium 4/Intel Xeonで導入されたものをイメージするかもしれない。しかしMontecitoで導入されたHTテクノロジは、同じHTテクノロジという名称ながら、若干異なる動作となる。
そもそもHTテクノロジは、1つの物理プロセッサ(コア)を2つの論理プロセッサ(コア)に見せ、2つのスレッドを並列に実行させるというものだ。この点は、Pentium 4/Intel XeonとMontecitoで違いがない。しかしPentium 4/Intel Xeonでは、片側のスレッドの命令実行において、実行ユニットに空きがあれば、もう片側のスレッドの命令を実行するというものだ。詳細は、「解説:Hyper-ThreadingテクノロジはPCに革命を起こすか?」を参照していただきたい。
一方のMontecitoは、Pentium 4/Intel Xeonなどと異なり、EPICアーキテクチャを採用する。EPICアーキテクチャは、コンパイラが事前に同時実行可能な命令の組み合わせを考慮した上で、3つの命令を組み合わせた「バンドル」を単位として処理が実行される。Itanium 2では、1つのコアで同時に2つのバンドルが実行可能となっている。そのため、実行ユニットの一部が空いていたとしても、そこで別のスレッドの命令を実行してしまうと、むしろコンパイラで行われた最適化が無意味なものとなってしまう。
そのためMontecitoのHTテクノロジでは、3次キャッシュに対するキャッシュ・ミスなどにより、時間のかかるメモリ・アクセスやディスク・アクセスが発生した場合にのみ、別のスレッドを実行する。キャッシュのヒット効率がそれほど高くないようなアプリケーションでは、HTテクノロジが有効に働く可能性がある。逆にキャッシュのヒット効率が高いようなアプリケーションでは、スレッド切り替えのオーバーヘッドによって、HTテクノロジを有効にしていると、性能が低下する場合がある。そこでMontecitoでは、ファームウェアによるHTテクノロジの有効/無効が可能になっているということだ。
信頼性向上も重要な機能
Montecitoが採用されるメインフレーム・クラスのハイエンド・サーバでは、性能とともに信頼性も重要な選択要件となる。Itanium 2では、キャッシュ・メモリやシステム・インターフェイスにエラー保護機能が実装されており、エラーが発生した場合、それが検知可能となっていた。Montecitoでは、さらに分岐予測ユニットや整数レジスタ/浮動小数点レジスタなどもエラー保護の対象となっている。これにより、さらなる信頼性の向上が実現しているという。
またMontecitoでは、プロセッサ・ソケット間のロックステップ(Lockstep)に対応している。ロックステップとは、2つのプロセッサでまったく同じ処理を実行し、その差を検出するというものだ。通常は、まったく同じ処理が実行されているため、2つのプロセッサの処理結果は同じものとなる。しかしどちらか一方のプロセッサでエラーが発生した場合は、処理結果が異なることから、その処理が不正であることが検出できる。当然、1つの処理に2つのプロセッサが使われてしまうため、性能的には不利になるが、信頼性を大幅に向上できる。Intelは、将来的にコア間でのロックステップに対応する予定もあるとしている。
さらにMontecito全体で24Mbytesもの大容量の3次キャッシュを搭載していることもあり、新たに3次キャッシュで発生するエラーに対する保護機能が導入されている。前述のようにキャッシュに対しては、エラー保護機能によって、エラーの発生の有無を検知することが可能になった。それだけではなく、開発コード名「Pellston(ペルストン)テクノロジ」で呼ばれていた「インテル キャッシュ・セーフ・テクノロジ」を導入し、3次キャッシュの信頼性を向上させている。キャッシュ・セーフ・テクノロジは、キャッシュ・エラーを検出するとともに、エラーの発生したキャッシュ・ラインに再書き込みテストを行うことで、そのエラーがハードウェア(メモリ・セルの障害など)によるものか否かを診断し、ハードウェア・エラーだった場合は、そのキャッシュ・ラインを無効にすることで、再びエラーが発生するのを防ぐというものだ。
このようにMontecitoでは、これまでのItanium 2に対して、さらに信頼性を向上させるための機能を追加している。過剰とも思えるエラー保護機能が実装されているが、ミッションクリティカル領域で利用されるサーバに搭載するプロセッサとしては、まだまだ足りないくらいなのかもしれない。
Itanium成功への必要条件
すでにIntel Core 2 DuoやデュアルコアIntel Xeonでは、仮想化支援機能である「インテル バーチャライゼーション・テクノロジ(VT)」が実装されているが、Itanium 2でもMontecitoからサポートされることになった。レガシー・マイグレーションやサーバ統合、システムの柔軟性向上など、仮想化技術に対する期待は高まっている。特にハイエンド・サーバでは、過去の資産を継承しながら、新たなOS/アプリケーション環境を構築したい、といったレガシー・マイグレーション、複数のOS環境を1つのサーバで運用したいといったサーバ統合の要求も多い。VTがサポートされることで、仮想化の効率とOSの互換性が向上し、こうした要求にも応えやすくなりそうだ。すでに日立製作所などは、MontecitoのVTに対応する仮想化ソフトウェアを発表している。
このようにMontecitoでは、さまざまな機能追加が行われ、Itanium 2 9M(Madison 9M)に対して2倍以上の性能向上を実現していながら、最大20%の省電力化も実現しているということだ。ただ性能という点でいうと、少々物足りなさを感じる。Itanium 2 9M比で2倍の性能向上を実現し、一時はこのクラスのサーバとしては最速の地位を得たものの、すぐにIBMのPOWER5+搭載サーバ「System p5 595」に抜かれているからだ。性能ではPOWER5+の後塵を拝す結果が続いているので、Montecitoでも動作クロックを高めたモデルの追加などが必要かもしれない。
ただそのような状態でも、日本国内では、すでにシステム売上金額ベースでSPARCとPOWERと肩を並べるまでに成長している。一方、米国ではSPARCとPOWERの半分以下に止まっている。これは、すでに8000種類以上のItanium対応アプリケーションがそろっており、搭載サーバのバリエーションが増えてきたこと、Itaniumをサポートするサーバ・ベンダの多くが、日本でメインフレームを扱っていたベンダであることが大きな理由と考えられる。米国では、メインフレームからRISC/UNIXサーバへの移行がかなり進んでいるのに対し、日本ではメインフレームからRISC/UNIXサーバへの移行が遅れ、その分一足飛びにメインフレームからItanium搭載サーバという流れが生まれつつある。もちろん、この背景には富士通やNEC、日立製作所といったメインフレーム・ベンダがメインフレームの後継の1つとして、Itanium搭載サーバを推しているということもあるだろう。
これに対して米国では、すでにRISC(POWER/SPARC/PA-RISC)/UNIXサーバへの移行が完了しており、ここからItaniumへ移行する大きなメリットが未だに見出せていないのではないかと思われる。この状態を改善するには、POWER/SPARCに対して性能面での圧倒的な優位性を確保しながら、さらなる信頼性の向上を実現することが重要である。また米国の一部のアナリストが、IntelがItaniumのプロジェクトを中止し、x86系プロセッサに資源を集中する、といった憶測を払拭する必要もある(XScaleのように事業売却される可能性がアナリストによって示唆されている)。つまり、Itaniumプロセッサ・ファミリに対する将来性を示すことが求められているわけだ。
これに対しIntelでは、5年間で5世代のItaniumをリリースし、今後リリースする予定の開発コード名「Montvale(モントベール)」「Tukwila(ツクウィラ)」「Poulson(ポウルソン)」の3製品が開発中であることを明らかにしている。Montvaleは前述のように、Montecitoをベースに65nmプロセス製造にし、667MHz FSBをサポートし、動作クロックを引き上げたものとなる。Tukwilaは、クワッドコア(4コア)となり、自己診断/自己修復機能といった信頼性向上機能が追加される。またプロセッサ・インターフェイスがNext Generation Interconnectに改められることが明らかになっている。Poulsonは、4個以上のコアが集積されることが明らかになっているものの、それ以外の情報は明らかにされていない。
このようにロードマップは提示されているものの、Itaniumプロジェクトに対する疑念が消えないのは、やはりIntel Xeon/Intel Xeon MPとの関係がどのようになるのかが明らかにされないからだろう。Itaniumを成功に導くためには、プロセッサ・ロードマップとともに、Intelのプロセッサ・ビジネス全体のロードマップを示すことが必要なのかもしれない。
Itaniumの性能 |
クワッドコア化などにより、Tukwilaの性能はMontecitoの2倍以上になる予定だ。なおMontecitoとTukwilaの間には、Montvaleがリリースされる予定だが、性能は明らかにされていない。 |
関連記事 | |
Itaniumプロセッサの行方は混とんかバラ色か? | |
Hyper-ThreadingテクノロジはPCに革命を起こすか? |
「System Insiderの解説」 |
- Intelと互換プロセッサとの戦いの歴史を振り返る (2017/6/28)
Intelのx86が誕生して約40年たつという。x86プロセッサは、互換プロセッサとの戦いでもあった。その歴史を簡単に振り返ってみよう - 第204回 人工知能がFPGAに恋する理由 (2017/5/25)
最近、人工知能(AI)のアクセラレータとしてFPGAを活用する動きがある。なぜCPUやGPUに加えて、FPGAが人工知能に活用されるのだろうか。その理由は? - IoT実用化への号砲は鳴った (2017/4/27)
スタートの号砲が鳴ったようだ。多くのベンダーからIoTを使った実証実験の発表が相次いでいる。あと半年もすれば、実用化へのゴールも見えてくるのだろうか? - スパコンの新しい潮流は人工知能にあり? (2017/3/29)
スパコン関連の発表が続いている。多くが「人工知能」をターゲットにしているようだ。人工知能向けのスパコンとはどのようなものなのか、最近の発表から見ていこう
|
|