Seite 2 von 2

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 09:42
von cofi
mutetella hat geschrieben:
cofi hat geschrieben:Aus dem Performance-Blickwinkel ist sie auch suboptimal...
Das scheint mir manchmal schon ein Reflex zu sein: Dies oder das ist mit Listen gelöst, das muss lahm sein...
Nanana, schneid mal nicht den relevanten Teil weg ;)

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 10:03
von mutetella
Ja ok, ich wollte jetzt einfach mal die Gelegenheit nutzen: Ein bischen klugscheißen und mit 'nem Decorator um mich werfen!!!

Wenn wir schon dabei sind:
In diesem Fall fände ich es syntaktisch eigentlich schöner, die zu messende Funktion an die messende Funktion zu übergeben. Ok, ich verstehe schon, dass es den einen oder anderen Fall gibt, wo ein Decorator für mehr Klarheit sorgt. Aber sowas wie 'ne Messroutine... würdet ihr das mit Decorator oder via Übergabe (was ja letztlich dasselbe ist) machen?

mutetella

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 10:13
von cofi
Ich finde es nicht nur syntaktisch schoener keine Dekoratoren zu nutzen, sondern auch in vielen anderen Aspekten. Will man keine dauerhafte Ueberwachung der Funktion haben, hat man mit dem Dekorator ein Problem ;)

Wenn man die zu messende Funktion uebergibt hat man das Problem nicht. Man kann die Dekorator-Funktion aber auch nicht als Dekorator nutzen und umschifft es auch:

Code: Alles auswählen

measure(func)(10000)

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 11:41
von BlackJack
@mutetella: Die konkrete Messung widerlegt aber nicht, dass die Vorgehensweise die Elemente verschieden oft betrachten muss. Der `Counter` geht einmal durch die Daten, die Lösung mit der `count()`-Methode geht sechsmal durch die gleiche Datenmenge. Dass das trotzdem schneller ist, kann man auch als Implementierungsdetail ansehen, weil die Schleife bei `count()` intern in C programmiert ist und bei `Counter` verhältnismässig viel Python-Code für den einen Durchgang abgearbeitet wird. Das kann bei anderen Implementierungen, beispielsweise PyPy oder einem in C implementierten `Counter`, schon wieder anders aussehen. Solange es nicht tatsächlich zu einem messbaren Problem führt, würde ich fast immer den Algorithmus mit weniger „atomaren” Schritten wählen.

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 18:26
von lunar
mutetella hat geschrieben:Hoffentlich liest lunar jetzt nicht mit... :roll:
Ich lese mit… und ich frage mich, warum Dich das stört.

Re: Problem mit 1000 mal Würfel

Verfasst: Mittwoch 31. Oktober 2012, 20:54
von mutetella
@lunar
Nun ja... das Thema Performance war ja in der Vergangenheit hin und wieder schon... keine Ahnung, wie ich jetzt sagen soll... war jedenfalls immer für ein Schmunzeln gut... puh, gerade noch die Kurve bekommen... *grins*

Re: Problem mit 1000 mal Würfel

Verfasst: Donnerstag 1. November 2012, 00:40
von lunar
@mutetella So war das nicht gemeint. Ich habe nicht verstanden, dass Du nur auf vergangene Diskussionen anspielst, und dachte, ich wäre Dir mit irgendeinem Beitrag auf die Füße getreten. Sorry :oops:

Re: Problem mit 1000 mal Würfel

Verfasst: Donnerstag 1. November 2012, 11:16
von mutetella
@lunar
Nein nein, bist Du überhaupt nicht... mach' Dir keinen Kopf, alles im tiefgrünen Bereich...! :D