今日の作業

3:06

w100ドライバにもローテートを追加。確認のため、数ヶ月ぶりにSL-C760の電源を入れた。

近々SL-C760を手放す予定なので、w100は今後メンテナンスしなくなります。

4:22

昨日のトコのベンチマークページに、いろいろ追加中。

SL-C760でMQBの場合のみ-vf rotateのほうがvo rotateより速いという結果が出てしまった。参った。真面目に最適化しないといかんのか? たぶんやらんだろうなぁ。

6:57

ベンチマーク結果を一通り埋めた。疲れた。

Betaplayerの結果と比べてみると……あれれ?思っていたよりいい勝負のような?(2700G DecoderとATIはハードウェアデコーダドライバなので除く) まぁMPlayerサウンド無しの結果だけど。サウンドの負荷は20%ってとこかな。

11:20

iWMMXtのローテートblitterをいじる。

ループ内で2ライン同時処理を行なっていたのを、4ラインに変更してみる。速くなるはずだと思ったら……遅くなった。んじゃ1ラインは……? 遅い。たまたま最初から最適な選択をしたようだ。

11:25

そいや、このローテートblitterがSDLやらsnes9xやらの高速化の要。随分前にsnes9xを作業中だとか言ったけど、こいつの実装をするまえに放置してしまった。気が向いたらとりあえずSDLに入れてみようかと。

12:01

MPlayerの心臓ともいえるlibavcodec(FFmpeg)はメモリ確保に独自のav_mallocを使ってる。これはmemalignを使ってメモリを16バイト境界に確保するようになってる。XScaleのキャッシュラインは32バイトなので、以前から32バイト境界に確保するよう変更してみようと思っていた。そうするとPLD(PreLoad)命令も使いやすくなる。

  • 16バイト境界アライン:117.72% (XQ Benchmarkページより)
  • 32バイト境界アライン:129.06%

わはは。たった2文字のコード変更でここまで速くなるとは!

RIDGE RACERS direct audio 届いた

久々に満足度の高い一枚。

Synthetic Lifeの元ネタ。ゼビウスのBGMとブラスター発射音、ドラゴンスピリット AREA3 Jungle、ギャラガは分かった。記憶と一致しているか、MDXWinで調べたよ。他にもネタがあるっぽいなぁ。

ていうか、MDXWin凄いなぁ。"Kaoru.K"で検索すると、データ作者の自分がすでに持っていないようなデータがある(TH_32LK.OZIが音外してるバージョンだった)。"Temmings"で検索すると……。うわぁ……。おもしれー。

MPlayer for Zaurus 1.1.3をリリースしました (http://atty.jp/?Zaurus/mplayer)

もうザウルスが動画に弱いなんて言わないでリリース(笑) というのはともかく、「動画に最適」だとか「動画に向いている」とはとても言えませんが、普通に使えるレベルにはなったんじゃないかと思います。

あと海外から来るひとがそれなりに居るようなので、たぶんすごく壊れている英語で説明を追加。英語を読むのは勘でどうにでもなるけど、書くのは難しい。