このページの本文へ

前へ 1 2 3 次へ

ロードマップでわかる!当世プロセッサー事情 第23回

大きな進化となったSSEと開発環境でつまづいた3DNow!

2009年10月19日 12時00分更新

文● 大原雄介(http://www.yusuke-ohara.com/)

  • この記事をはてなブックマークに追加
  • 本文印刷

ソフトウェア開発環境の貧弱さに
とどめを刺された3DNow!系列

現在の、インテルの開発用ソフトウェアのページ

こちらは現在の、インテルの開発用ソフトウェアのページ。当時からインテルは先手を打って、ソフトウェア開発環境の拡充に努めた

 だが、問題はソフトウェア開発の側にあった。インテルは自社でコンパイラーを提供しており、当然ながら自動でSSEやSSE2をサポートするコードを生成できた(その質にはいろいろ議論はあるのだが)。また当時、メジャーな開発ツール「GCC 2.9x」でSSE/SSE2のサポートが開始され、2001年にリリースされた「GCC 3」からは、正式にSSE/SSE2のスカラー命令が、2005年にリリースされた「GCC 4」ではSSE/SSE2のベクトル命令が、それぞれサポートされる。

 これに対し3DNow!はと言うと、SDKこそAMDから提供されたものの、明確な形でのコンパイラーのサポートはついに提供されずに終わる。実は1999年当時、開発ツールメーカーのMetroworks社(現在はFreescale社に買収された)の「CodeWarrier」が3DNow!に対応するという話があり、β版までリリースされたものの、結局製品はリリースされなかった。

 またマイクロソフトの「Visual Studio」が3DNow!対応になるという話もずっとあったが、こちらも最終的には形にならなかった。この当時、AMDの主催した開発者向けカンファレンスの資料の中には「Don't be afraid of looking at assembler output」(アセンブラ出力を見ることを恐れるな)なんて文字が平気で出てくるほどに、ソフトウェアのサポートが貧弱だった。

 もちろん、真剣に最適化を図るとなると、3DNow!やSSE/SSE2に限らずx86の命令であってもアセンブラ出力の確認は必須であろうが、最適化を極めてゆく中で見る必要があるのと、最初からにらめっこする必要があるのでは、だいぶ話が変わってくる。つまるところ、こうしたソフトウェアサポートの貧弱さが3DNow!系列にとどめを刺した、と言えるかも知れない。結局AMDはAthlon XPの世代で、「3DNow! Professional」という名称でSSEに対応。3DNow!はごく限られたケースで利用されたに留まることになってしまった。

 もっともこれに関しては、また別の見方もできる。AMDは2000年8月に開催された国際会議「Micro Processor Forum」で、x86の64bit拡張である「x86_64」を発表する。当然命令セットを拡張しただけでは誰も使ってくれないので、OSや開発ツールのサポートは当然必須だ。

 AMDはLinuxコミュニティ向けに、シミュレーターや開発キットの提供、あるいはカーネルやGCCのパッチのリリースなどによってLinux系OSのサポートを行なうが、メインターゲットは当然Windowsであり、マイクロソフトの協力は欠かせない。ただ、そこで3DNow!とx86_64両方のサポートを求めるのは、開発リソースの観点で当然難しい。重要な方を残すとなると、必然的に3DNow!のサポートは諦めざるをえない。この時期AMDはx86_64にある意味社運を掛けており、3DNow!はそのため見捨てられた、と考えてもいいのかもしれない。

今回のまとめ

・インテルは1999年にPentium IIIで「SSE」を導入。将来を見越して専用128bitレジスターを増設するなど、大きな改良を図った。

・続く「SSE2」では扱えるデータ形式と命令セットも増え、SSE系列の大きな進化を実現した。

・AMDはMMXの進化形にあたる「3DNow!」「Enhanced 3DNow!」で対抗する。SSEとは方向性は異なるが、性能面では互角に渡り合えた。

・3DNow!系列最大の問題点は、ソフトウェア開発サポートの貧弱さにあった。アセンブラベースでの開発が必須で、対応コンパイラーが揃っていたSSE系列に比べると、開発者の負担は大きく、最後までメジャーになれなかった。

前へ 1 2 3 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン