Einzelnen Beitrag anzeigen

Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
482 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: String vorne mit Nullen auffüllen

  Alt 12. Sep 2022, 16:20
@Dennis07 Weil meine AnsiString Variante um ein dutzendfach schneller ist.
Dass das einen signifikanten Unterschied macht bezweifle ich. Deshalb habe ich mal einen Speedtest gemacht.

Um ein ein relevantes Ergebnis zu haben habe ich beide Funktionen je 100.000 mal hintereinander mit zufälligen Strings und einem '0'-Zeichen durchlaufen lassen und habe zufällige Einrückungen im selben Spektrum genommen.
Das ganze habe ich 100 mal durchlaufen lassen und den Durchschnitt gebildet.

Die Ergebnisse siehst du im Anhang. Gerne gebe ich dir den Quelltext, damit du es selbst probieren kannst.

FillString1 ist von dir, FillString2 ist meine Variante. In dem Beispiel war deine um ca. 2 Ticken schneller bei der Aufrufzahl, was mich jetzt nicht überrascht hat. Kann aber auch an ungleichen Zufallszahlen liegen, wer weiß.
Es geht mir jetzt halt nicht darum, deinen Code schlecht zu reden oder so, nichts läge mir ferner. Aber ich wollte mich selbst davon überzeugen, dass der unter Win32 auf keinen Fall "dutzendfach langsamer" ist. Selbst, wenn meiner jetzt schneller wäre, würden wir hier von durchschnittlich zwei Ticks pro 100.000 Aufrufen sprechen, was in so ziemlich allen Anwendungsgebieten wohl kaum ins Gewicht fallen würde.
Miniaturansicht angehängter Grafiken
speedtest.png  
Dennis

Geändert von Dennis07 (12. Sep 2022 um 16:30 Uhr)
  Mit Zitat antworten Zitat