1063 shaares
28 private links
28 private links
float が double より遅いというのは x87 命令における話。
もはや現代では浮動小数点数の計算は (スカラーであっても) SSE2 などにより行われているため、普通に float も double も変わらないし、ベクタ化するなら float の方が小さい分詰められるので早い。
参考:
- ソフト開発者にはSSE2命令への移行を推奨
- x87 をやめてスカラーでも SSE2 を使うべしということになっているという話。
- Cプログラミング診断室/キャストが好き/float型対double型
- 昔は本当に float が double より遅かった (変換のオーバーヘッドのため?) という話。歴史的遺産。
- x86でdoubleがfloatより速いかどうかを検証してみた - Qiita
- 実際 x87 でもそんなに変わらんやんけという話。
- K&R 時代の C だったり default argument promotion がある状況だと、 float が double に変換されるため遅くなるらしい。
- float vs. double
- FPU の演算精度次第という話。
- 処理系によって設定も違うのでハイという感じ。