歴代最速2
Gungnirとは?
前回の記事でGungnirの定義そのものが変わってしまった気が。ま、映像圧縮コーデックのGaebolgの後継をGungnirとする事にします。今後それで。
て事で、GungnirはBrynhildr(Speed)よりもTrueRemoteよりも高速な映像圧縮コーデックとゆー位置付けとゆー事になります。
あー、スッキリ。
圧縮率や画質がGaebolgと全然変わっていないのがなかなか心ぐるしいですが。
あ、でもGungnirなんですが負荷は下がっていると思います。元々負荷は小さい方でしたがさらに小さく。
前回の記事から高速だー高速だーって言ってますけど、実際のリリースバージョンはそれほど速度は変わらんかもしれんです。
それはなぜか。
実はBrynhildrのSpeed(Gaebolg)ってマルチタスクで動いているんです。2個。ぶっちゃけちゃうと、画像の上下2枚を組み合わせてまして、上下別々のスレッドで処理がされています。ま、昔オプションでシングルスレッドにできるか指定できてたんで気づいている人は気づいていると思いますが。
Gaebolgの性質上、2枚を組み合わせても境目は分からないと思います。ど真ん中で分かれているんですが。
で、それがGungnirだとシングルタスク設計にしてます。もちろんマルチタスク化もできるんですが、どうも2つのスレッドでの処理結果の画像の結合してる部分がボトルネックになってるような気がしてて。これは映像圧縮のアルゴリズムと別問題なので別に解決する必要があろうかと。描画側で別々に描画しても良いんじゃないかと。画面の上下別々に通信しても良いんじゃないかと。いやたぶんダメかもしれんですけど。でもなんかしっくりこないんですよね。しっくりくるまでシングルタスクにする予定です。
そーいや昔こち亀で真の四輪駆動はそれぞれのタイヤにそれぞれモーターをつけるべきと両さんが言ってたのを思い出しましたけどその発想に似ていると思います。
余談ですが、今の時点でGungnirを2つ同時タスクで1.5倍くらいに速度が上がるのははっきりしてるんですが、理論的には2倍近くまであがるはずなのにプンスカとゆーところもあるのでございます。1.5倍より2倍の方が良いに決まってるじゃないですか。て事は、4つ同時タスクで4倍近くまでなるわけですよ。たぶんGaebolgのマルチタスクのやり方だと4つ同時タスクだと逆に遅くなるはずなんで。昔に試したんで。
でもシングルタスク設計にした事で恐ろしくソースコードがシンプルになったんで自分的には大満足なんですけどね。すっかり忘れていたアルゴリズムもよーやく思い出しましたし。いや忘れている時点でアレですけど。いやでも7年も前ですし。
ちなみに、VP8は別でして、あれは元々シングルタスクです。Brynhildrでも。もちろんVP8のマルチタスクのもあるんですがそれは法人向けバージョンにしか実装されておりません。そう、法人向けバージョンはVP8もマルチタスクなんです。ま、それでも速度は1.5倍くらいだったはずですけど。なので、GungnirベースのVP8も法人向けのマルチタスクは1.5倍になると思います、たぶん。いや1.25倍くらいにしておこうかな。確か何か課題があったはず。
て事でまとめ。
・一般版Gungnir
Speed(Gungnir)・・・シングルタスクでBrynhildr(Speed)と同等速度、同等画質、負荷軽減
Compress(VP8)・・・シングルタスクでBrynhildr(Compress)より高速、同等画質
・法人版Gungnir
SpeedもCompressもマルチタスクでBrynhildrより高速、同等画質(マルチタスク化はオプション)
て事になります。ややややこしいですが御参考までに。
法人版はマルチタスク化ですげーって事ではなくて先述したとーり全然気は進まんのですけど御要望とあらばってトコです。ビジネスなんで。
ふと思ったんですけど、GungnirはFPSの上限が上がった(=高速になった)んですけど、FPSを上げれば負荷はその分上がるのは当たり前ですので、負荷に関しては従来通りと言えますかね。
余談ですが、昔にVP8をWindowsXPでマルチタスクで動かそうとしたら動かなかったんですよね。Vista以降は大丈夫だったんでOS的な何かだと思うんですが。VP8のオプションのマルチスレッド設定ではなくてVP8を2個同時走らす構造です。これ、詳しく調べる時間も無かったんでいつか調べるかもしれません。たぶん調べないと思いますけど。法人向けでXP対応とかちょっとアレですし・・・。
て事で、法人向けのGungnirはますます凄くなると思いますので企業様よりのお問い合わせお待ちしております。・・・最近このパティーン多いな。家族を養うとはこーゆー事か。独身時代は気楽だったのに。失礼、脱線しました。
気づいたらまた記事が長くなったんで続く。