2008-06-22から1日間の記事一覧

FPU

FPUのことあまり知らない。IEEE浮動小数点の誤差とか昔やった気がするけど、よく覚えていないことに気づいてから触れるのを避けてた。 でも丸めモードのコンパイラオプションで計算した値が変わるとかは詳しく知ってないとヤバイ。せっかく保存していたデー…

VC++コンパイラのSSE最適化結果をすこしみた

ディスアセンブルしてみたけど、C側の単精度の計算が遅いのは倍精度用の演算命令を単精度をコンバートしながら行っているからっぽい。 4つ同時にできるはずの演算を変換かけつつ2つ同時にしかしていないので、単精度用の演算を使って書いた側と差がある。…

SSE.浮動小数点演算手動最適化は本当に効果的なのか

ちょっと試したので、結果をコピペ。 概要とたてまえ SSEは、x86のSIMD命令セットに含まれる浮動小数点演算の複数同時実行を行う命令セットです。単精度(float)で4つ、倍精度(double)で2つの演算を1命令で実行できるため、うまく使うと繰り返し同じ演算のパ…

書かないとか嘘でした

半年もプログラムを書くのを我慢できるわけないし、書かないでいると日々思いついた妄想が『できる』と仮定されたまま夢がひろがりんぐで、よくない精神状態になってくるので、少しずつ試して、できるできないを判定していきます。