2010-01-01から1年間の記事一覧

応答が返ってきた…

とある事情でノブを上げ下げする動作を自動化したくなったので、何か使えるものはないかってことで試しにLEGOのNXT2.0ってセットを買ってみたまでは良かったんだけど、プログラムから制御しようとしたらとたんに大ハマリしてしまった…orz まずUSB経由でfanto…

sh-liloアドレスマップ

最近ブートローダ自体に詳しくなってきたので、sh-liloのソースコードを読み直してアドレスマップもどきを起こしてみた。(first.Sとsecond.cから起こした) 全部1枚に収めたせいでごちゃっとしていて見づらいけど、個人的に1枚に書いてないと把握できないの…

RS-232C==調歩同期式?

ずいぶん前に書いたSH7751のシリアル通信コードが正しいかどうかずっと悩んでたんだけど。 http://d.hatena.ne.jp/maminus/20090614/1244989532/ なんか、カーネルソースのdrivers/serial/sh-sci.cと見比べると特にボーレートの設定値が全然違ってて、あれれ…

5870性能評価(4)

測定用に作ったテストプログラムで10K個を超える頂点数のモデルを表示していたら、どうも頂点数4個の時より重いなぁと感じたのでいろいろ調査していたのがようやく答えらしきところまで到達できた… 長かった。 事の発端は、板きれモデルの頂点数を4から一…

テクスチャ付きの板きれを表示するまで

DirectX11で板きれモデルを表示するプログラムを作ってみた。ハマリまくって、ようやく画面いっぱいにテクスチャ画像が表示できるところまで進んだので整理も兼ねてメモ。 まずは今回のバッドノウハウから。 ○バックバッファのフォーマットはDXGI_FORMAT_R8G…

Zのグラフがヤバい件

前回「どこかの書籍に書いてあったような気もする」と書いた透視投影変換後のZ値のグラフがヤバい件だけど、やっぱり以前読んだ書籍に思いっきり書いてあった。*1 14.9「おまけ:zバッファ精度問題」に思いっきり前回載せたのと同じようなグラフが載ってい…

座標変換まとめてみた

DirectX11で板きれを表示するプログラムを作るぞ〜」と意気込んでみたものの、例によって大ハマリしてしまって何が悪いのか分からなくなったので、自分用に"そもそも3Dモデルを表示するまでの座標変換ってどうなってるのか"をまとめ。ワールド変換までは分か…

CreateInputLayoutをContent Assistで入力できるようになるまで

DirectXヘルプをいちいち見ながらコードを組むのが面倒になってきたのでEclipseでアシストの設定を入れてみた…ら再びはまってしまった。 とりあえずいろいろいじってID3D11Device::CreateInputLayoutが入力できるところまで設定できたので自分用にメモ。使っ…

5870性能評価(3)

今回はラスタライザがネックにならないか調べてみる。 今までは4頂点の板きれモデルを使用していたけど、これを細かく分割して頂点数を無駄に増やしてみる。もし頂点数が増えただけでFPSが落ちるようならラスタライザがボトルネックになっているってことに…

5870性能評価(2)

そういえば、なぜか前回の日記のソースコードに「/pp」って謎の文字列が入っているのは何なんだろう…プレビュー画面だと何もないんだけど。まぁ、それはさておき。 前回は5870のコンピューティング性能を見たので、今回からはボトルネックを探る旅に出ようか…

5870性能評価(1)

ComputeShaderでGPUの性能を測定しようと四苦八苦してみたけど、処理が明らかに速すぎる… 処理結果を取りにいっていないせいか、処理そのものがスキップされてるのかも。レンダリングパイプラインへのコマンド発行も非同期的に行われているみたいだし、1発…

シェーダからstoreするとUnordered Access View?

いまだによくわかってないけど、なんとなくCompute Shaderからテクスチャにwriteしたら、Unordered Access View(UAV)経由でstoreになってる気がしてきた。こんなコードをコンパイルすると Texture3D InputBuffer; RWTexture3D OutputBuffer; [numthreads(16,…

ComputeShaderが呼べるようになるまで

前回から何かこう、とてつもなく初歩レベルでつまづいているような気がするけど、まぁ新しい環境でプログラムを作るときはだいたいこんなモンだよね。って感じで作業内容をさらにメモ。 とりあえず今回は、ComputeShaderで何か適当に動かすところまでやって…

D3D11CreateDeviceが呼べるようになるまで

新しい環境でそろそろDirectX 11と遊んでみようとしたらいきなりincludeのレベルではまってしまった…orz DX9の時はそんなに苦労しなかったのに、手厳しい。とりあえずD3D11CreateDevice()呼び出しまでしか確認してないけど、そこにたどり着くまでの作業内容…

oprofile環境構築

oprofileのクロスコンパイルは前哨戦だった…orzということで、環境構築編。 /etc/passwd (ユーザID、グループIDは適当) oprofile:x:110:110:oprofile:/dev/oprofile:/bin/sh /etc/group oprofile:x:110: /etc/shadow oprofile:*:10933:0:99999:7::: ディレク…

oprofileクロスコンパイル

とりあえず紆余曲折のあとにoprofileのコンパイルが通ったのでまとめてみた。 crosstool以外に必要だったもの popt zlib libbfd libiberty 手順みたいな何か。 popt-1.14 $> ac_cv_va_copy=yes ./configure --prefix=/hoge/sysroot --build=i386-pc-linux-gn…

libbfdのクロスコンパイル

oprofileのクロスコンパイルでlibbfdが必要って言われて、作ろうとしたらまたはまってしまったorz libbfd自体はbinutilsの一部っぽいんだけど、クロスコンパイラ用のlibbfdはコンパイル環境用にコンパイルされていてターゲット用としては使えないっぽい。(…

configureのbuild、host、targetの違い

crosstoolのログなんかを見ていてようやく理解してきた気がするけど、Linuxとかのパッケージをクロスコンパイルするときにconfigureの引数に--build、--host、--targetをどう指定したら良いのか、自分の中で整理がついてきたんじゃないかと思う。 たぶんこう…

クロスコンパイルだとconfigureでエラーになる件

ちょっと気になることがあったのでoprofileでもかけようと思ってoprofileをクロスコンパイルしようとしたら、libpoptが無いって言われたのでpoptをクロスコンパイルしようとしていつものようにはまってしまった...orz configureしようとすると checking for …