Was ist schneller: a*0.005 oder a/200 ?

Lschreyer
Schreiberling
Avatar
Gender: n/a
Posts: 526
Registered: 02 / 2007
Subject:

Was ist schneller: a*0.005 oder a/200 ?

 · 
Posted: 31.01.2011 - 10:35  ·  #1
Ich versuche gerade meinen Code etwas zu optimieren und frage mich was schneller ist:

Ein Float-Wert mit einem Float multiplizieren
(z.B. 1.234 * 0.005)
oder ein Float mit einem Word dividieren
(z.B. 1.234 / 200).
Ich vermute: "Jacke wie Hose", oder irre ich mich da?

Sind divisionen durch 2er-Potenzen in Avrco schneller also Divisionen durch "krumme" Zahlen?
Wäre es demnach besser statt
a:= b* 37037 /1000
dann
a:=b * 37925 /1024;
zu nehmen? (Kleine Fehler die dabei entstehen sind ok)

Für Info dankt,

Louis
Lschreyer
Schreiberling
Avatar
Gender: n/a
Posts: 526
Registered: 02 / 2007
Subject:

Re: Was ist schneller: a*0.005 oder a/200 ?

 · 
Posted: 31.01.2011 - 10:58  ·  #2
Ich habe gerade festgestellt, dass man das im Simulator schön durchtesten kann (ich benutze den sonst sehr selten).

float*0.005 ist doppelt so schnell wie float/200. (820 Takte gegen 1788 Takte)

Die 2er Potenz bei der Division bringt nichts, die Berechung ist sogar langsamer, im Beispiel
2552 gegen 2623 Takte.

Damit ist die Antwort schon da.

Louis
Selected quotes for multi-quoting:   0

Registered users in this topic

Currently no registered users in this section

The statistic shows who was online during the last 5 minutes. Updated every 90 seconds.
MySQL Queries: 15 · Cache Hits: 14   51   65 · Page-Gen-Time: 0.020369s · Memory Usage: 2 MB · GZIP: on · Viewport: SMXL-HiDPI