3倍速くなったとよ
合成対象のアニメーションを2つから4つにし、一度に全てを合成する関数に与えたところ、処理時間が倍かかるようになってしまった。汎用にコーディングしてあった部分を入力4つ専用にするなどして、チューニングしてみた。3倍速くなった。主にアンローリングをしただけなのだが、キャッシュメモリが無いのにこれだけ速くなるとは。ローカルメモリがパイプライン型なのと、命令バッファが少しあるのが、予想以上に効いているようだ。メーカーが大きく宣伝している他の並列部分は全く効果が無いことは、アセンブラで組んでみて確認済み。他のチームも全く動作しないことを確認した。メーカーの責任者に直接問い合わせても返事無し。メーカーがほとんど言及していない部分が、本当は並列化にとって重要だとは、皮肉な話だ。表面的なきれい事よりも、こういうことのほうが製品を作るには必要なのだが、あのメーカーは、未だ、アカデミックに見えるけれども本当はアカデミックでも何でも無い事に投資を続けている。きっと責任者不在なんだろう。
雛形が動く
やっと雛形が動き始める。どのゲームでもよく使われているAIコントローラの基本形を実現した。アニメーション用演算の大事なものはカバーしているので、組み合わせを変えれば、色々なゲームに対処できる。柔軟性を上げるとか何とか周りには言いながら、翻訳形式にしたが、実際はこういう間接的な方法を使わないと色々とあれやらこれやらが危なくて使えないからだ。こういうハードウェアアーキテクチャはAI木には向いてないという話が業界では出ているようだが、実現したぞ。開き直って構造を変えれば解決できるという典型例だ。でも上の上のボスからは、これに交換するメリットに関する文書を書けという強いご要望がやって来た。メモでは駄目だと。確かに現バージョンのお客さんがたくさんいますからね。データは取る。派手な結果が出るようにチューニングもしよう。美味しいところ私がやるから、デビットに後は任せた。




