2012-08-30

IntelのGNU/Linuxにおけるグラフィック事情

[Phoronix] Intel Aims To Hit On Performance, Plans LLVM Compiler

IntelのMesaへの貢献により、実装がOpenGL規格にだいぶおいついてきた。まだようやくOpenGL 3.1に到達したばかりで、しかもテクスチャ圧縮が邪悪な特許のために使えないという状況ではあるが、確実に実装は進んでいる。Intelの開発者によれば、最近とある特許裁判で無効になったある特許があり、S3TCの特許は、それに関連して、ともに無効化しているのではないかということらしい。何にせよ、ASTCという新しい自由なテクスチャ圧縮も提唱されている現在では、速やかに移行したほうがいい。それから、浮動小数点数テクスチャも特許の問題で使えない。一体、テクスチャを浮動小数点数で表現することにどんな特許性があるのかわからないが、とにかく特許が取られているらしい。

Valveからの強い要請で、IntelはMesaにthreaded GL dispatchを実装した。AMDとnVidiaの不自由な制限ドライバーはすでにこれを実装していたので、ようやくMesaも追いついたというところだ。

さらに、Intelはシェーダーコンパイラーを、自前のコンパイラーからLLVMに置き換えようとしているらしい。去年の時点では、IntelはLLVMを使う可能性を訊ねられて、あくまで自前のコンパイラーで行うと言っていたのだが、面白い転身ぶりだ。まあ、餅は餅屋といったところだろう。一昔前は、自社でコンパイラーを開発するのは利点もあり技術力の宣伝にもなったのだろうが、今となっては、コンパイラーを一から自前実装する理由はそれほどない。特に、最近はどこもかしこもLLVMだ。LLVMはたしかに素晴らしいコンパイラーだ。

Mesaがいつ最新のOpenGL規格に追いつくのかという質問に対しては、「IntelはMesaの開発に力を入れており、Khronosの規格更新より速い速度で実装が進んでいるので、いずれ追いつくだろう」と答えている。

また、もはやGLXはdeprecatedとみなしてもよい状態になっており、かわりにEGLを使うべきだと言っている。たしかに、今や最先端はほとんどEGLを使っている。EGLは使わないとしても、やはりOpenGL ESを使っている。というのも、EGLはOpenGL ESをバックエンドにしており、デスクトップだけでなく、携帯電話や組み込み用途といった環境でも動くからだ。

RMSの言ったとおり、ValveがGNU/Linuxに進出することにより得られる善は大きいと言える。すくなくとも、Mesaの改良は、ゲームをしない者にとっても恩恵が大きい。

No comments: