[GELÖST] Performance Round & Div

19. November 2010 10:25

Hallo Liebe NAV-Entwickler,

ich habe eine Frage zur Performance:

Gibt es einen Unterschied in der Ausführung der beiden Funktionen?


1. Window.UPDATE(1,ROUND(RecNo / TotalRecNo * 10000,1));

2. Window.UPDATE(1,(RecNo / TotalRecNo *10000 DIV 1));

schoneinmal vielen dank ;-)
Zuletzt geändert von sweikelt am 19. November 2010 11:05, insgesamt 1-mal geändert.

Re: Performance Round & Div

19. November 2010 10:33

Gute Frage!
Wie wärs mit Ausprobieren?
Z.B. Time-Variablen füllen (vor und nach Ausführung) und Differenz-Zeit vergleichen.

Re: Performance Round & Div

19. November 2010 10:42

DIV rundet grundsätzlich ab, während round so, wie es da steht, kaufmännisch rundet.

Was die Performance angeht, kann ich dir nichts sagen. Das könntest du aber doch ganz einfach selbst messen.

Re: Performance Round & Div

19. November 2010 10:48

habe gedacht, dass es schon jemand ausprobiert hat ;)

bin ja relativ neu in nav und kenn mich noch nicht so gut aus.....werde dies ebenfalls gleich testen und mein ergebnis hier posten!

Re: Performance Round & Div

19. November 2010 10:58

sweikelt hat geschrieben:habe gedacht, dass es schon jemand ausprobiert hat ;)

Nm nö. In deinem Beispiel kostet das Update bei jedem Datensatz in Verbindung mit einer großen Datenmenge viel eher Performance. Es sei denn, dass zwischen DIV und round nun auch eklatante Unterschiede sind.

Re: Performance Round & Div

19. November 2010 11:05

McClane hat geschrieben:
sweikelt hat geschrieben:habe gedacht, dass es schon jemand ausprobiert hat ;)

Nm nö. In deinem Beispiel kostet das Update bei jedem Datensatz in Verbindung mit einer großen Datenmenge viel eher Performance. Es sei denn, dass zwischen DIV und round nun auch eklatante Unterschiede sind.


ich weiß :-D

deswegen stell ich ja auch die frage

also meine messungen kommen zum schluss, das div leicht schneller zu arbeiten scheint.

habe eine tabelle mit nur 8000 einträgen eingelesen und dabei war div im schnitt in 2340,7 ms und round in 2353,7 ms (jeweils 10 messungen) fertig