Einzelnen Beitrag anzeigen

Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Lohnen sich If abfragen vor dem schreiben auf einen Wert

  Alt 25. Dez 2007, 00:41
Im Normalfall wirbelt so ein if die Pipeline des Prozessors ordentlich durcheinander. Das hat zwar nicht allzugroße Auswirkungen, man sollte es aber berücksichtigen. Ein Speicherzugriff hingegen dauert schon so einige Zeit, ich würde mal schätzen je nach Leistungsfähigkeit des Prozessors zwischen 50 und 180 Taktzyklen. Das kostet natürlich richtig übel Zeit. Allerdings haben Prozessoren heutzutage natürlich ziemlich große Caches mit recht niedrigen Fehlzugriffsraten.

Man kann also wirklich sagen, dass sich diese beiden Varianten nicht viel nehmen. Vermutlich gibt es viel bessere Optimierungsmöglichkeiten im Rest des Codes, und die paar Nanosekunden hin oder her machen natürlich eh keinen spürbaren Unterschied, solange du das ganze nicht ein paar hunderttausendmal aufrufst. Ich würde die ohne if-Abfrage aus Gründen der Einfachheit bevorzugen.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat