椿の日記

たぶんプログラムの話をします

シェーダの最適化ってどうするのがいいのかな

あんまりにもSH係数の計算が重いのでシェーダコードの最適化をしています。ただ、ある程度のところより先は、どう最適化するのがよいのかよく分からんことに。というのは、生成されたアセンブリコードをCUDAコアで実行するにあたって結局どういう風にコンバートされるかよく分からないからです。ピクセルシェーダって1ピクセルがCUDAコアの1つに割り振られるのかな。それともコンパイラが頑張って1ピクセルのためにCUDAコアを複数使って並列計算してくれるのか。うーん。
とりあえずは基本的なこと(無駄なループ除去とか整数/浮動小数変換を減らすとか)を中心にやるくらいですね。