アカウント名:
パスワード:
32bit float 精度ですけど、AMDの今は亡き3DNow!には除算命令はなく、 逆数算出とかけ算を組み合わせる [nifty.com]ことになっていて、さらに逆数算出は・テーブル引きの低精度逆数算出命令・ニュートンラフソン法による精度向上命令の二命令4クロックで割り算ができていました。(平方根も同様で、1/√x の低精度算出と精度向上の2命令 [nifty.com])
低精度で十分な用途なら、
SSEを先に使っていて3DNow!は知らなかったので、後で調べてみて、Intelがぱくったのを知ったり。
#SSEで近似値を使う場合は、こんな感じかな#要素数4でも処理速度は同じinline float newton_divide(float a, float b){ __m128 value_a; __m128 value_b; __m128 tmp_0; __m128 tmp_1; __m128 tmp_2; __m128 tmp_3; __m128 two;
余計なモノが付いているけど、キニシナイ。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家
AMD 3DNow! (スコア:1)
32bit float 精度ですけど、AMDの今は亡き3DNow!には除算命令はなく、 逆数算出とかけ算を組み合わせる [nifty.com]ことになっていて、さらに逆数算出は
・テーブル引きの低精度逆数算出命令
・ニュートンラフソン法による精度向上命令
の二命令4クロックで割り算ができていました。(平方根も同様で、1/√x の低精度算出と精度向上の2命令 [nifty.com])
低精度で十分な用途なら、
Re: (スコア:2)
SSEを先に使っていて3DNow!は知らなかったので、後で調べてみて、Intelがぱくったのを知ったり。
#SSEで近似値を使う場合は、こんな感じかな
#要素数4でも処理速度は同じ
inline float newton_divide(float a, float b)
{
__m128 value_a;
__m128 value_b;
__m128 tmp_0;
__m128 tmp_1;
__m128 tmp_2;
__m128 tmp_3;
__m128 two;
Re:AMD 3DNow! (スコア:2)
余計なモノが付いているけど、キニシナイ。