Existe-t-il un moyen le plus rapide pour cette ligne?Le moyen le plus rapide de faire des nombres négatifs
ballAngelRadianVector = -ballAngelRadianVector;
et aussi ceci:
ballDegree = fee - ballDegree ;
Existe-t-il un moyen le plus rapide pour cette ligne?Le moyen le plus rapide de faire des nombres négatifs
ballAngelRadianVector = -ballAngelRadianVector;
et aussi ceci:
ballDegree = fee - ballDegree ;
Je ne pense pas que vous pouvez obtenir plus rapidement que .. Voir cette vérification rapide, je l'ai fait:
var i:uint = 0;
for(i; i<1000000; i++)
{
var a:int = -i;
}
trace(getTimer()); //14
je me demandais quelque chose en fait similaire strictement de la curiosité (je sais que ce n'est pas le goulot d'étranglement de mon application). ma question est, est-il plus facile de définir un var à un négatif de lui-même, ou de le multiplier par -1. Je me demande si cela varie d'un CPU, OS, etc, mais j'ai couru le test suivant:
$number = rand(100000,999999999);
$iterations = 10000000;
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = -$number;
echo "time: ".(microtime(true)-$start)."\n";
//
$start = microtime(true);
for($i = 0; $i <= $iterations; $i++)
$number = $number * -1;
echo "time: ".(microtime(true)-$start)."\n";
qui a produit la sortie:
time: 0.66124606132507 (-self)
time: 0.64714503288269 (*-1)
time: 0.66628909111023 (-self)
time: 0.65639805793762 (*-1)
il ressemble à la multiplication par -1 est toujours plus rapide (d'un montant négligeable)
Pourquoi pensez-vous que c'est lent? [Ce n'est pas le goulot d'étranglement que vous cherchez] (http://www.youtube.com/watch?v=k1rlThKe1qo&feature=player_detailpage#t=22s) –
Je ne comprends pas .. Ce n'est pas assez rapide? – Marty
.. c'est rapide, mais peut-être quelque chose de mieux ..; ] ,, –