サン・マイクロシステムズが
2005年11月14日に世に送り出したUltra
SPARC T1は、それまで開発
コードネーム「Niagara」として知られていた
マイクロプロセッサです。これは同社にとって初めての
マルチコアかつマルチスレッド対応プロセッサであり、
サーバシステムのエネルギー消費を抑制することを主眼に設計されました。実際に、1.4 GHzで動作する際の消費電力はわずか72
ワットでした。
技術的特徴
Ultra
SPARC T1は、従来のUltra
SPARC IVやUltra
SPARC IV+とは一線を画す、完全に新規に設計された
SPARCマイクロプロセッサの実装です。
SPARC V9命令セットを完全に実行し、Ultra
SPARC Architecture 2005仕様に準拠しています。
このプロセッサの最大の特徴は、そのユニークなコアとスレッド構成にあります。製品としては4コア、6コア、8コアのモデルが展開され、それぞれのコアが同時に4つのハードウェアスレッドを処理できます。このため、プロセッサ全体では最大で32個のスレッドを並行して実行する能力を持っていました。
設計思想としては、多数の軽い処理を並行して実行することに最適化されています。
Webサーバ、
Javaアプリケーション
サーバ、ERPやCRMの中間層、さらには高多重度の小規模データベースアプリケーションなど、多くのユーザーからの同時アクセスに応答する必要がある用途でその真価を発揮しました。たとえば、ある顧客は
MySQLアプリケーションをUltra
SPARC T1上で実行した際に、AMD Opteron
サーバと比較して13.5倍の高速化を達成したと報告しています。
しかし、設計上の制約も存在しました。特に、トランジスタ数の制限から、各コアには整数演算ユニットのみが搭載され、浮動小数点演算ユニット(
FPU)はプロセッサ全体でたった1つを共有するという構造でした。このため、科学技術計算やコンピュータグラフィックスのような、大量の浮動小数点演算を必要とする処理には根本的に不向きでした。
システム搭載と仮想化
Ultra
SPARC T1プロセッサは、
サン・マイクロシステムズおよび
富士通から提供された様々な
サーバ製品に搭載されました。具体的には、Sun
SPARC Enterprise T1000/T2000、
Sun Fire T1000/T2000、Netra T2000、Netra CP3060ブレード、Sun Blade T6300といったモデルが含まれます。
仮想化機能に関しては、Ultra
SPARC T1は
SPARCプロセッサとして初めてハイパーバイザ権限での実行モードをサポートしました。
SPARCハイパーバイザを活用することで、一つのT1システムを最大32個の論理ドメインに分割し、それぞれ独立したオペレーティングシステムインスタンス(
Solaris、
Linux、
NetBSD、FreeBSDなど)を実行させることが可能でした。
ソフトウェアライセンスへの影響
Oracle Databaseのような主要な商用ソフトウェアのライセンスは、伝統的にプロセッサ数に基づいて課金されることが一般的でした。T1の登場初期にはこの点が問題となりましたが、2006年初頭にオラクルがプロセッサ係数(Processor Factor)を導入し、T1に対して0.25という係数を適用しました。これにより、8コアのT2000
サーバでもわずか2
CPU分のライセンスで済むようになりました。
IBMも同様にValue Unit (VU) の概念を導入し、T1の各コアのPVUを標準の100ではなく30とする優遇措置を取りました。
課題と後継への進化
Ultra
SPARC T1にはいくつかの課題がありました。まず、シングルプロセッサ構成の
マザーボードのみをサポートし、大規模エンタープライズ環境での垂直方向の拡張性(SMP構成)が限定されていました。この点は、後継の「Victoria Falls」(Ultra
SPARC T2 Plus)で解決されました。また、前述の通り共有
FPUによる浮動小数点演算性能の弱点や、整数演算においても同世代の他の
CPUと比較してシングルスレッドあたりの性能があまり高くないという側面もありました。
T1の設計思想は後継プロセッサに引き継がれ、進化を遂げました。「Niagara 2」(Ultra
SPARC T2)はコアあたり8スレッドをサポートし、各コアに専用
FPUを搭載。最大64スレッド同時実行能力を持ちました。「Victoria Falls」(Ultra
SPARC T2 Plus)はマルチソケットに対応し、システム全体で数百スレッドの実行を可能にしました。さらに
SPARC T3、T4、T5と世代を重ねるごとに、コア数やスレッド数の増加、クロック周波数の向上、
アウト・オブ・オーダー実行の実装によるシングルスレッド性能改善、暗号化ユニットやネットワーク機能の統合など、包括的な性能強化が図られました。
2006年3月21日、
サン・マイクロシステムズはUltra
SPARC T1プロセッサの設計情報を、
OpenSPARCプロジェクトを通じて
GNU General Public Licenseのもとで公開しました。これには、Verilogソースコード、検証ツール、シミュレーションモデル、ISA仕様などが含まれ、プロセッサ設計のオープン化という点で注目を集めました。