Microsoft が Itanium 向け開発終了を宣言 67
ストーリー by reo
結局 Itanium に触れたことがない 部門より
結局 Itanium に触れたことがない 部門より
gurt 曰く、
Microsoft が Intel の Itanium プロセッサ向けの製品の開発をやめることにしたそうです (ITpro no 記事より) 。
先日、富士通も基幹 IA サーバを Itanium から Xeon に切り替え、今後 Itanium は使わないという発表を行ったばかりですが (@IT の記事) 、このままじわじわと Itanium は消滅していくことになるんでしょうかね。
MicrosoftにとってItaniumは良い踏み台だった (スコア:2, 興味深い)
マイクロソフトにとってのItaniumの最大の価値は、スケールアップのアップグレードパスの存在を客に示せるということにあったと思う。
客は夢見がちで、すぐにx86 + SQL Serverでは処理しきれないほど急成長するリスクに備えたがる。そういうときに、Itanium + SQL Serverがあるから大丈夫と言えたことが大きい。
ほとんどの客はx86サーバの性能向上のスピードを上まわる急成長はしないし、急成長したらサーバのハードウェアのスケールアップだけでは対処できない。
AMD64が軌道に乗るまでのあいだ、Itaniumは見せ玉として本当によくタダ働きしてくれました。
Re:MicrosoftにとってItaniumは良い踏み台だった (スコア:2, おもしろおかしい)
>AMD64が軌道に乗るまでのあいだ、Itaniumは見せ玉として本当によくタダ働きしてくれました。
タダじゃないだろ。むしろ見せ球としては高くつきすぎたのでは。
Re:MicrosoftにとってItaniumは良い踏み台だった (スコア:2, 参考になる)
Re: (スコア:0)
本命が別にあるという意味では正しいかも。
Re: (スコア:0)
存在そのものが安心感となって保険として働き、
実際に顧客が買わないで済んだのだから結果的にコストダウンには貢献しているよ。
MSは自社製品の採用を増やせたんだから文句ないだろう。
Intelの用意したIA-64という豪華な階段は、いつのまにか吹き晒しの非常階段レベルの扱いになり、
次いで吹けば飛びそうな梯子がかけてあるだけの状態になって、今回はロープが結んであるだけになった。
きっとそのうちこのロープも切れるに違いない。
Re: (スコア:0)
>存在そのものが安心感となって保険として働き、
>実際に顧客が買わないで済んだのだから結果的にコストダウンには貢献しているよ。
その為に開発費が1ライン分必要だった訳ですが。
Re: (スコア:0)
Itanium版Windowsの採用事例からのフィードバックが得られたことや、サーバのメーカーと協力して色々やったことは、x86版やx64版にも何らかの形で役に立っていると思う。
Re: (スコア:0)
東証のことか。
64bit版Windowsのタコな仕様はItaniumのせい (スコア:2, 興味深い)
x64版Windowsで64bitコード←→32bitコード間の呼び出しができない(thunkがない)のは、Itanium版Windowsの仕様に合わせたから。
そのせいで64bitコードと32bitコードをシームレスに実行できるAMD64のメリットがWindowsにおいては全く生かされていない。
言わばItaniumの負の遺産。
後方互換性にこだわるMicrosoftのことだから、128bit版Windowsが出るまでこの仕様に悩まされそうorz
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:1, すばらしい洞察)
もう少し具体的に説明してくれませんか? あるいは、外部のソースを。
Re: (スコア:0)
なんで誰でも分かってる様な調べりゃすぐ出てくる既出なことを説明せにゃならんのだね
それをすることで我々にどんなメリットがありますか?
#しかも、あなたは多分説明しても分からないレベルでしょうに
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:1, 興味深い)
AMD64なら32bitと64bitのコードがシームレスに実行できるといっても、現実的には64bitModeとCompatibilityModeの切り換えは必要なので、同一OSインスタンス上で32bitのプロセスと64bitのプロセスが同居できるという意味です。
(64bitModeのまま従来の32bitのコードを実行できるといっても、CPUが命令をデコードして実行できるだけであって、プログラマが望むような動作をするわけではありません。)
64bitのEXEから32bitのDLLを呼び出せない、32bitのEXEから64bitのDLLを呼び出せないという仕様は当然です。Win32APIのDLLならExportしているプロシージャの引数の仕様が明らかですからthunkを作ることができてWOW64がそうしていますが、しかし、サードパーティのDLLのためのthunkはマイクロソフトには作れません。サードパーティがthunkを提供するなら64bit版のDLLをビルドして提供したほうがいいでしょう。
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:1)
このあたりずっと疑問に思っていたので。
32bitのEXEから64bitのDLLを呼び出せないのは分かる(気がする)のですが、64bit
のEXEから32bitのDLLを呼び出せないのが解せないです。64bitのコードを4GB未満
のアドレス空間を使わないように配置するだけではダメなんでしょうか?
プラグインなどの32bit資産が64bitから自由に使えれば64bitへの移行は少しは楽
になるので、この方向だけサポートしてくれれば良かったのにと思ってしまいます。
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:1)
十分に理解できていませんが、とりあえずスタックの問題は大変難しそうだと想像できました。
ポイントを教えていただけたのでもうちょっと勉強してみます。
Re: (スコア:0)
巷に出回る多くの説明が間違っていると言うことを認識出来ないかわいそうな人だな
ほとんどの人がわかっちゃいない
Re: (スコア:0)
Windows NTでセグメントが使えない(少なくともユーザーモードのCプログラムから隠蔽されている)のがRISCプロセッサの負の遺産だとは思わないけどなあ。
それは今だから言えることかもしれないけど、128bit版Windowsが出る頃になったらWOW64の仕様についてもやっぱり同じような感想を持つんじゃないかな。
Re: (スコア:0)
現在でもグーグルのNaClなどで活用されていますから、RISCプロセッサというよりもセグメントのないOSつまりUNIXの負の遺産ですね。
8086で、セグメントについての無知ゆえの勘違い思い込みからトラウマになった人が影響力を持ったからかもしれない。MSは一役買ってるな。DRとインテルは無罪。
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:3, 興味深い)
いや, UNIXはセグメントありますよ. 例えば初期のVAX-11 [roguelife.org]のころからセグメンテーション機構を利用していますし, セグメンテーションバイオレーションなんてエラーはセグメント機構を使ったメモリ保護が無ければ出ようがないでしょう.
それに, セグメントの評判を落としたことにインテルの責が無いとは言えないでしょう. 386登場以前は1セグメントで取り扱えるアドレス空間が64k(16bit)に限られていて, ちょっとプログラムの規模が大きくなるとプロセス内でセグメントを動的に設定しなおすというアクロバティックなことをしなければならなかったのですから. これが, セグメント単位がハード的なアドレス幅と同じ20bitとか, あるいはせめて18bit程度だったら評価は全く違っていたと思います. まあ, 当時のハードウェアの性能とかコストとかの兼ね合いで16bit幅のセグメントにしたんだろうことは理解はできますが. 言い方は悪いですが, こうしたハード側の手抜きをソフト側でカバーさせようとするのは, IA64でも同じだったのかと思います.
Re: (スコア:0)
VAXなどでページング機構が導入されるとそちらを使いセグメンテーションは捨てていますね。
8086は最初からミッドレンジのアプリケーションプロセッサでマニュアルにも明記されていました。ハイエンドではないですね。
あなたも軽トラに10t載せたがるタイプですか?やっぱりトラウマで目が曇っているとしか。
Re: (スコア:0)
80286は?
それこそ80286でせめてセグメントサイズ1MBにできればよかったんですが。
別にハイエンドでもない68000は16MBリニアアクセスできましたし。
Re: (スコア:0)
68000はハイエンドですね。6809がミッドレンジです。
Re: (スコア:0)
現在は「無理だった」と考えています。
まず、セグメント内のアドレッシングが16bitで足りなくなります。
となると、命令セットを作り直しですね。
分岐命令やデータアクセス関係のアドレス指定はビット数の拡張が必要。
インデックスレジスタの幅も拡張しないといけないし、その拡張した17bit以上の
幅を持つレジスタに一発で値をセットできる命令も必要でしょう。
(8086のMOV命令は16bitデータまでしか転送できない)
もともと286はリング保護のプロテクトモードを拡張するためだけに作られたような
CPUですから、基本の命令に手を入れるのはやっぱり386を待つ必要があったでしょう。
Re: (スコア:0)
少々極論が過ぎるんじゃないかな。Itaniumが企画された当時、ハードウェアによる
命令実行の並列性の向上はいずれ限界が来るだろうという予測はまあまあ妥当で、
それを打開するためにVLIW、その改良であるEPICの採用に踏み切ったのは技術的に
チャレンジだったと言えるでしょう。
コストや8ビットのハード&ソフト互換性などの制約から、やむなく64k/セグメントを
採用した8086とは質的にかなり違う。互換性をかなぐり捨てて、あまり例のない
アーキテクチャを採用したわけですしね。
残念ながら成功したとはいえないものの、それは結果論で、チャレンジがなければ
EPICやそれに類するアーキテクチャの限界も見えてこなかったわけだから
その点だけでも意味無しとは言えんと思いますが。
Re:64bit版Windowsのタコな仕様はItaniumのせい (スコア:2)
> i8086が作られた当時の64KBのセグメントの大きさは、いまの感覚でいえば4GBに相当します。
それは無いよ!!
Re: (スコア:0)
Intel IA64 と Intel x64(EM64) では根本的にアーキテクチャが違いますよね?
AMD64 と互換性がある(というか渋々真似した)のは Intel x64(EM64)な訳で、
今回のIA64のItaniumとは関係ない話の様な気がするのですが…。
IA64が駄目だからx64用も駄目で行くよー、という話だったんですか?
そもそもIA64(Itanium)用のWindowsってリリースされてたんですね。
まあ、何にしてもいいかげんWindowsには完全64bit環境に移行して欲しい…。
HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1, 参考になる)
ItaniumにおけるMSの存在感はすでにないですからね。
もはやItaniumはHPのものじゃないのかという気も。
エンタープライズ分野におけるHPのサーバの存在感はまだそこそこ
大きいんで、それが続く限りItaniumも続くんじゃないですかね。
いずれXeonなりに置き換わるかもしれないが、まだしばらくは大丈夫でしょう。
新しいXeonが出るたびにItaniumどうしたみたいなことを言い出す人は多いけど、
見る場所が違う気も。
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:2)
NECの汎用機ACOSとHP社のHP Integrity NonStop サーバーも思い出してあげてください.....
http://www.nec.co.jp/products/acos/acos-4/i-px9000_200/index.html [nec.co.jp]
http://h50146.www5.hp.com/products/servers/nonstop/ [hp.com]
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:2)
> OpenVMS?
OpenVMSもItaniumで動いているとは知らなかった....
「?」がNonStopとOpenVMSが同じなのか という意味でついているのなら、違いますよ。
NonStopはタンデム→コンパック→HPと買収されてきたアーキテクチャ。
OpenVMSはDEC→コンパック→HPと買収されています。
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1)
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1, 興味深い)
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1)
# i860の事もたまには思い出して下さい。
Re: (スコア:0)
WindowsNTは当初i860向けに作られていたとか、Alpha、MIPS、PowerPCなどをサポートしたけど鳴かず飛ばず。それらに比べてしまえばItaniumサポートは成功だと言ってよいでしょう。
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1)
OSも自社でもってるし、もともとMSのOSに依存したハードウェアでは無かったので、
これまでのPA-RISCと同じように生きていくんでしょうね。
答えはある。それを見つける能力が無いだけだ。
Re: (スコア:0)
PA-RISCの置き換えのために開発にHPが加わってますからね。
HPも最初はItaniumで思うようにパフォーマンスが出せずに
苦労したようですが最近のコンパイラはかなり良くなってるそうです。
高価な基幹サーバーというのはあまり遊んだことのない世界で詳しいわけ
じゃないですけど、CPUのホットスワップができたり、CPUのプリペイド
システム…金払った分だけのCPU時間が使えるという…があったり、
障害検出も非常に強力みたいですし、Xeonが使われてる分野とは
金額も含めてちょっと世界が違うかなという感じはありますね~
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:2)
富士通の汎用機GS21はCPUのホットスワップできないような。
私の触っていた奴はCPUボードに4個のCPUを載せていたけど、CPUボードを抜かないとCPUの装脱着ができなかった。
http://globalserver.fujitsu.com/jp/ [fujitsu.com]
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:1)
IA64の稼働環境が限定されたOSだとすると、IntelにとってItaniumを製造し続けるメリットを考えにくいのではないでしょうか?
性能を上げるには(x64からのフィードバックを含めても)それなりの研究費も必要でしょうし、ラインの確保も必要になります。
無駄に開発費が分散するより、x64に注力できるほうがIntel的にも進みたい方向なのではないかと想像します。
※Itanium環境、触ったことがないので実際どのくらい良いのかも見当がつきません。
Re: (スコア:0)
XeonにRASがついたら願ったり叶ったりなのだが
Re:HP-UXとHP Integrity Serverがある限り続くんじゃ (スコア:2, 興味深い)
アーキテクチャとしてのメリット (スコア:1)
ところで、今までこの手の話題が出てきた場合
「アーキテクチャ的には素晴らしかったが、商売としては失敗したね」
……と言った声が、多少は出るものなのですが。
Itaniumに関しては、アーキテクチャ的に惜しむ声を余り(と言うか全く)聞きませんね。
かなり今更な話になるのですが、純粋に技術面から見たItaniumってどうだったのでしょうか?
Re:アーキテクチャとしてのメリット (スコア:3, 参考になる)
他の人からはクソみそに言われるでしょうから、5年ぐらい IA-64 と付き合った者として餞別代りに Itanium を擁護してみます。
個人的な感想としては IA-64 は「はまったコードは非常に速いが、外れたコードは非常に遅い」アーキです。
ただ「はまったコード」」を生成するには icc のような最適化コンパイラが必須です。
また最適化コンパイラがあっても、「はまったコード」にコンパイルできないアプリも多いです。gcc とか perl のようなのが特に苦手。
命令アーキテクチャとしては、尖った機構がふんだんに存在しています。
SPARC の register-window に似ているがあちらは物理レジスタが不足した時にソフト割り込みが懸って OS が処理する必要がある。IA-64 は CPU 内の Register-Stack-Engine が stack-register をメモリに自動的にロード・ストアしてくれる。そのため関数呼び出しが非常に高速。
あと Itanium2 としての特徴ですが、
良いのか悪いのか分からない点としては、
CPU から見ると高速化が可能。プログラマーとしては非常に困った性質で、C 言語だと volatile を付けないと通常のロード・ストア命令が生成されるので、他のアーキ用に書かれたマルチプロセッサ用のソースコードが容赦なく異常動作する。
悪い点は、やっぱり Out-of-Order 実行がない点ですね。命令グループに命令をそんなに詰め込めないし、ロード命令がウェイトすると後続命令は実行できないので、結局性能が上がりません。OoO を導入するには論理レジスタ数が多すぎることがネックになると思います。
コンタミは発見の母
Re: (スコア:0)
Re:アーキテクチャとしてのメリット (スコア:1)
前まで研究室に2wayのItaniumマシンが置いてあったな。
何でもファンが五月蝿い割には遅いとか。
掃除の時捨てた。
Re: (スコア:0)
ItaniumはRISCの処理能力(クロック周波数)が頭打ちになるという想定で設計された。
VLIWとか豊富なページサイズのサポートとかいかに周波数以外のところで速度を稼ぐか
という思想で設計されてる。(クロックチックを縮められないなら1クロックでできる
ことを増やそうという発想)
けど、実際はそうはならず、プロセッサの周波数は4GHzにも達しようという勢いで、
8とか12とかのマルチコアなわけです。こんなもの一個のOSでは役不足なんですが、
計算能力の需要が頭打ちなら仮想化しよう。そのためにはメモリ積めるだけ積もう。
ページテーブルキャッシュすれば4Kページで128GBも夢じゃない。?!
てなシステムが現在の主流です。
どうみても不利なわけです。この上さらにIO仮想化とかつけてくれといわれる前に逃げ
出すのが企業としては正解だと思う。
アーキテクチャじゃなくて単なる歴史ですが (スコア:1)
いや,開発ロードマップ通りに行かずに出遅れたことに尽きるでしょう
当初の Intel+HP連合軍(1994~)による開発ロードマップ(取らぬ狸の計画)では,
計画された1990年代前半は PC用x86CPUと WS用CPU(AlphaAXP,Sparc,PA-RISC,POWER)軍団との 間には結構な性能差がありました(浮動小数点は圧倒的な差で,整数演算でも倍程度は違った気がする). Pentium投入時点でもまだRISC陣営とは結構差がありました. その時代に,Intel が将来のWS系の市場を制覇するためにHPと連合を組んだわけです. WS用CPUのパワーを持ってすれば,市場投入予定時点のPC用x86なんて楽勝で越えられるはずでした. またエミュレーションにしてもその圧倒的(以下略). 最後の点は微妙な推測かも知れませんが….
ただ,開発が難航しているうちに,x86がAMD(+NexGen Nx686) K6~K7との競争で, 整数演算ではWS用RISC系に追い付く状況になる(1GHz競争のころ)なかで, 初代 merced が登場したときには x86処理に弱いIA-64CPU はPC用としての芽がなくなってしまいました. 実際Mercedの開発が遅れまくった証しとして,Merced 登場(2001)後1年程度で 早くも IA-64 2世代目の McKinley が出ています(2002).
いざ生まれてみたら住むところがほとんどなくなっていたという, 今にしてみれば可哀想なCPUだと思ってます. (まあ,「予定された性能を叩き出せなかったCPU」とか「不幸な運命をしょったCPU」なんて 他にも籠から溢れるくらいありますけどね…)
Re: (スコア:0)
#ま、いちおう AC にします。
元凶はItaniumは32bitが遅いこと (スコア:1)
x86版バイナリが600K位なのに同じソースをIA64向けにコンパイルすると2M越えになってびびったのが懐かしいです。
2003年9月でした。
それから待てど暮らせど、一般に降りてこないし、Itaniumは速くならないし、.NET 1.1の64bit版もない。
そのうえでx86エミュレーションが遅いと。
その状況だと、.NET 1.1で書いたものをItaniumで走らすより、x86系CPUのほうが速いし安いということになりかねない。
(たぶん)その後、.NET2.0で64bitもできるようになったら、AMD64がでてきて安いし .NET1.1 32bit, .NET 2.0 32/64bit 全部普通の速度で走る。
WIN64ネイティブアプリは対応製品がない。64bitに対応したと思ったらAMD64版だけだったとかもありそう。
ItaniumはOracle専用マシンならHP-UXでいいきがするし、どっち向いてもWindowsの出番があんまりなさそう。
kb924449 [microsoft.com]の MSのコンパイラが吐くコードがおかしい問題だって、話題にならなかったみたいだから、ほとんど誰も使ってないということでしょう。
こんな感じに情報だけ拾い続け、結局クロスコンパイルするだけで、私は実行することが一度もないまま消えていくのですね。
#ハイエンドサーバー系は完全に外野なので突っ込み歓迎
百五銀行の担当者が真っ青 (スコア:0)
そうすると、数年前にWindowsで勘定系を稼働させた百五銀行は、
将来的にはハードウェア更改のパスが無くなることを意味する。
RAS装備とはいえ、Itaniumより信頼性が落ちる新生Xeonを使うか、それとも・・・・
やはり、Windowsなんかを勘定系に採用なんかしちゃうからこんなことになるんだよ。
メインフレームを捨てるとき、せめてUNIXにしておけば、いろいろ手段はあったのにね。
Re: (スコア:0)
問題をすり替えてWindowsを貶める流説ですか
「みたい」とか、ほどじゃない所挙げて言い切れよ
あとなんで将来に今現在のXeon使うんだよ
Re: (スコア:0)
??? Windowsを使っている限りにおいてハードウェア更改パスがなくなったことは事実ですよね。
「みたい」がついているのはRASのことであってWindowsを貶す文脈じゃないですね。
もうちょっと地に足のついた反論をしてくださいな。
Re: (スコア:0)
最後の一行が言いたくて頑張って枕詞を探したんだね。ご苦労様。
# ニュー速+にでも書いてろ、な!