Чтобы ответить на вопрос, вам нужно кое-что знать о том, как реализована каждая функция.
Функция извлечения квадратного корня использует метод Ньютона для итеративного вычисления квадратного корня. Он сходится квадратично. Ничто не ускорит это.
Другие функции, exp () и ln (x), имеют реализации, которые имеют свои собственные проблемы сходимости / сложности. Например, можно реализовать обе как сумм рядов. Для обеспечения достаточной точности требуется определенное количество терминов.
Все ставки отключены, если эти функции будут реализованы в собственном коде. Это может быть быстрее, чем все, что вы напишете.
Зная это, вы сможете принять осознанное решение. Я бы не стал принимать это на веру, потому что эти программисты «знают» ответ.
Если вы не занимаетесь интенсивной числовой работой, я бы сказал, что этот выбор не повлияет на общую производительность вашей программы. Лучше избегать микрооптимизации, если только вы не занимаетесь серьезным крупномасштабным научным программированием.
person
duffymo
schedule
11.03.2014
exp(ln(x)/2)
. - person Blindy   schedule 11.03.2014sqrt
наpow
и обнаружением из первых рук, насколько ухудшилась ваша ситуация. - person J...   schedule 12.03.20140x5f3759df
. - person Wai Ha Lee   schedule 27.12.2017