Недавно я профилировал программу, в которой горячая точка определенно это
double d = somevalue();
double d2=d*d;
double c = 1.0/d2 // HOT SPOT
Значение d2 не используется после потому что мне нужно только значение c. Некоторое время назад я читал о методе Кармака быстрого обратного квадратного корня, это, очевидно, не тот случай, но мне интересно, могут ли подобные алгоритмы помочь мне вычислить 1/x ^ 2.
Мне нужна довольно точная точность, я проверил, что моя программа не дает правильных результатов с опцией gcc -ffast-math. (g++-4.5)