ページ

2012年8月5日日曜日

オープンソースGPUドライバーの問題点?

ValveのLinux参戦で(一部で)盛り上がって来ているゲーム環境としてLinuxデスクトップですが、残念ながら問題も山積みなんですよね。先日行われた恒例の「QuakeCon 2012」の中でジョン・カーマック氏がValveのLinux対応について幾分否定的な言及をしたようです。

このブログで何回か書きましたが、ジョン・カーマック氏率いる「iD Software」はゲーム企業の中でも、かなりLinuxフレンドリーな企業で、Linux対応のオープンソースなFPSの大半が、彼らのゲームエンジン「iD Tech」の流れを汲むエンジンを使用している事からも判ると思います。

そのカーマック氏曰く、Linuxはゲームのプラットホームとしては未成熟であり、新規参入しても利益が出る段階ではないとの考え方みたいです。
"Valve announcing Steam Linux support changes things a bit but we have made two forays into Linux commercial market, most recently with Quake Live client but that platform just hasn't carried its weight compared to Mac."

"Its great that people are enthusiastic about Linux as a gaming platform but there are not many people who are interested in paying for a game and that seems to be the reality."
カーマック氏としては、以前に発売したLinux向けのゲームの売れ行きの悪さが気になっているようですね。特にかなり力を入れて開発した「Quake Live」のLinuxユーザーの食い付きの悪さが相当気に入らないみたいです:-( この話は以前もチラッと書いたんですが、正直言って現状のFPSユーザーからしたら、Quake3タイプのゲームは初心者が入り込みにくいんですよね。かくいう私も苦手ですし。

本質的にLinuxユーザーがソフトウェアをお金を払って購入するという事自体に抵抗があるのは事実だと思います。ただ、これからはライトユーザーが増えてくる(かも)しれませんし、現実として「Humble Bundle」のような「pay what you want and help charity」形式のゲーム販売では、多くのLinuxユーザーもお金を出して購入していますし、OS毎の購入額でも一番高かったりしていますし。まぁこれは大口購入者の金額が影響している可能性もあるかなとは思いますが……。

それにSteamのマルチプラットホーム戦略として、恐らく各OS対応版を別個購入する必要はないと思いますし。Linux版がどうなるのかは、まだ発表されていませんが、少なくともMac版はWin版と区別されていませんしね。まぁカーマック氏も一概に未来がないとは思っていないみたいですけど。例えば、以下のようにもコメントしていますし。
"It is an enticing thought that there is a well supported open platform that you can deliver content through the Steam ecosystem, but its a tough sell on. But Valve gets a huge kudos for the vision they have."

"One things that speaks in favor of Linux and open source is that Integrated graphics part is getting better and better. Intel has been completely supportive of open source graphic driver efforts."

"If I had time, I would love to work on optimizing Intel open source drivers."
以前、他のインタビューでカーマック氏は、AMDのAPUについても言及しており、これからはPCのゲームについても、APUのような統合型MBが主流になってくるのではないかと語っていました。うろ覚えですけど:-(

またIntelのオープンソース型開発も高く評価しているようですね。以前ツイッターでもIntelのGPUについて評価していましたし。今回のコメントでは、自らもGPUドライバーの改善に協力するかも知れないと語っていますしね:-P まぁ実際には時間が無いでしょうけど……。

そんな感じで、IntelのオープンソースGPUドライバーは、かなり期待出来る開発体制へと進化しているのですが、話はそう簡単には行かないみたいなんですよね……。ここでようやく本題に入ります。

一見、何の問題も無さそうなオープンソース型開発手法ですが、実はオープンソースならではの問題も山積しているようです。例えばパテント問題。この問題はGPU以外にもマルチメディア系コーデックで何回も問題になっていたりします。

GIFやMP3、最近ではAACやH.264といった主要コーデックです。例えばMP3エンコーダーのオープンソース開発である「LAME(レイム)」や、H.264エンコーダーである「x264」等は、開発手法自体はオープンソースですが、実際に使用する際は、各技術に使われているアルゴリズム等のパテントに引っ掛ってしまいます。

GPU開発に置いても、基本的なテクスチャー圧縮技術である「S3TC(DXTC)」が、パテント問題に引っ掛ってしまい、オープンソースな開発体制であるIntelのGPUドライバーには実装する事が出来ない? らしいのです。私も詳しくないので、もしかしたら全く的外れな事を書いているのかもしれません。その場合はご容赦下さい:-(

上記のMP3やH.264の場合、問題を解決する為にオープンソースな代替コーデックの使用を推奨する等の対抗策があります。GIFであれば「PNG」、MP3であれば「Ogg Vorbis」、H.264であれば「VP8」等々。他にもパテント対象のアルゴリズム以外を実装する等がありますが、そう簡単にいかないのも事実ですしね。幸いGIF等は対象パテントが期限切れになっていますので、現在では問題なく使う事ができますけど。

マルチメディアのコーデックの場合、代替となるコーデックに切り替えれば問題はそう無いのですが、ハードウェアなGPUの場合、そう簡単に基本となる技術を取り替えるなんて事は出来ませんので、代替技術を用意して、それを推奨するというのも現実問題としては難しいと思います。

一応、S3TCのオープンソース代替技術として「S2TC」というものの開発も進んではいるのですが、正直、S3TCの完全な代替となるのは(現時点では)難しいみたいですし:-( このS3TC問題をPhoronixの中の人がValveのゲイブ氏と対談した際に話したところ、ゲイブ氏はたいそう驚いたそうです。そして使い勝手のいいオープンソースな代替技術を何とかしたいと思っているようです。……多分:-P

S2TCとは少し違うのですが、Valveの中の人が「crunch」というオープンソースなテクスチャー圧縮技術を開発しているのですが、このcrunchも、元NVIDIAの技術者からパテント侵害で警告されたらしいです。crunchについては、話し合いで何とかなりそうな感じですけど、なかなか難しい問題ですよね……。ちなみにcrunchはS3TCの代替といったモノではないので、今回の本質的解決には関係していません。

このS3TCですが、結構古い技術なのでパテント的には、もう切れてるんじゃないかという意見もあるそうですが、実際としては、あと数年は完全にクリーンな技術としては使えないのではないかとの意見が大勢みたいです。

実際、このS3TCのパテントを保有していた「S3 Graphics」は、今現在でもMSやSONY、任天堂といった大手ゲーム機メーカーや、NVIDIA、AMDといったGPUメーカー、最近はスマートフォンメーカーからのパテント収入のみで食い繋いでいた状況ですし。この技術だけで数十億単位の収入が見込める訳ですからね。

また最近になって、Appleとの特許戦争により、HTCがS3 Graphicsを特許目当てで3億ドルで買収するという話題もありましたし。主な狙いはS3TCらしいですし、そう簡単にオープンソースで実装するような事態にはなりそうにないですしね……。唯一の救いはHTCがAndroid陣営側だって事でしょうか……。もしもAppleだったら……。

ちなみにLinuxにおいても、NVIDIAやAMDのプロプライエタリなGPUドライバーでは使用可能なので一般的なユーザーからしたら、そう問題になる事は無いと思います。ただオープンソースな開発体制では、いつまでたってもプロプライエタリなドライバーとの性能差は縮まらないという事にもなり得ますしね……。

このS3TCのような基本的な技術があとどのくらいあるのか、私には判りませんが、パテント問題は根が深すぎて考えるのすら恐ろしくなります……。何とか良い解決策が見つかるといいのですけど:-(

最後になりますが、いつもにもまして信ぴょう性のある内容なのかは自信がありません。私は技術者でもないし、知識もネットで調べた程度の素人です。ていうか、ただのおっさんです。デタラメな可能性が大ですので、あんまり鵜呑みにしないで下さい。あしからず。

#YouTube
QuakeCon 2012 - John Carmack Keynote - YouTube
http://youtu.be/wt-iVFxgFWk



#追記
今回のカーマック氏のコメントで、極一部は非難しているみたいですが、大半のLinuxユーザーはカーマック氏に絶大な信頼を寄せているのは間違いないです:-P 例えば、こんなツイートもありますし。

#Tweet


#外部リンク
[Phoronix] id Software: Linux Hasn't Produced Positive Results
http://www.phoronix.com/scan.php?page=news_item&px=MTE1NDA

[Phoronix] Ex-NVIDIA Engineer Patent Issue With Open-Source
http://www.phoronix.com/scan.php?page=news_item&px=MTE0Njg

[Phoronix] S2TC: A Possible Workaround For The S3TC Patent Situation
http://www.phoronix.com/scan.php?page=article&item=s2tc_s3tc_fix&num=1

[Phoronix] The S3TC Patent Might Be Invalid
http://www.phoronix.com/scan.php?page=news_item&px=OTkxMQ

[Phoronix] S3TC Now Golden For Linux & Open-Source?
http://www.phoronix.com/scan.php?page=news_item&px=MTAxNDE

[Phoronix] HTC Is Buying Out S3 Graphics
http://www.phoronix.com/scan.php?page=news_item&px=OTYzOQ

HTC、S3をVIAから買収 | スラッシュドット・ジャパン モバイル
HTC、S3をVIAから買収 | スラッシュドット・ジャパン モバイル

HTC、GPU技術のS3 GraphicsをVIAより買収 - 対Apple訴訟にも影響か | 経営 | マイナビニュース
http://news.mynavi.jp/news/2011/07/07/074/

S3 Graphics - News
http://www.s3graphics.com/en/news/news_detail.aspx?id=47

USNews 任天堂、次世代家庭用ゲーム機にS3のデータ圧縮技術を採用 - ニュース - nikkei BPnet
http://www.nikkeibp.co.jp/archives/083/83489.html

DXTC - Wikipedia
http://ja.wikipedia.org/wiki/DXTC

S2TC - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/S2TC

S2TC - Super Simple Texture Compression · divVerent/s2tc Wiki · GitHub
https://github.com/divVerent/s2tc/wiki

crunch - Advanced DXT texture compression and real-time transcoding library - Google Project Hosting
http://code.google.com/p/crunch/

#内部リンク
BLOG.MINAWA.NET: Electronic Artsの発表って、コレ? と、おまけ情報
http://blog.minawa.net/2012/05/electronic-arts.html

BLOG.MINAWA.NET: Xiph + Matroska + Google = WebM
http://blog.minawa.net/2010/05/xiph-matroska-google-webm.html

BLOG.MINAWA.NET: MPEGがロイヤリティフリーのビデオコーデックを計画中?
http://blog.minawa.net/2011/02/mpeg.html

BLOG.MINAWA.NET: MPEGによるロイヤリティーフリービデオコーデック、ふたたび?
http://blog.minawa.net/2011/12/mpeg.html

BLOG.MINAWA.NET: CELT + SILK = Opus
http://blog.minawa.net/2011/01/celt-silk-opus.html

BLOG.MINAWA.NET: Steam Box の謎 その3
http://blog.minawa.net/2012/03/steam-box-3.html

0 件のコメント:

コメントを投稿