AutoIt-Hackathon #2 CypherEnigma

  • Alles gut, die meisten Anwendungen auf meiner Seite müssen nicht 0.x Sekunden (je Durchlauf) schneller sein, da meist nur enmalige oder wenige Durchläufe nötig sind.

    Aber wegen deiner Whileschleifen Frage: Nein, ich ziehe immer den kompletten Bereich ab (und dann noch 1 um die "0.Stelle" mit zu zählen), besser wäre hier die reine Rechenoperation gewesen und mit dem Rest dann weiter zu machen aber wie gesagt, ich hatte mir gedacht das einige diesen Weg gehen werden und wollte das mit einer Schleife lösen. Auch und gerade um Unterschiede aufzuzeigen und nicht immer kann man Sachen mit "simplen" Rechenoperationen lösen, da kann man auf sowas immer mal Gedanklich zurück greifen. Daher sehe ich das immer sportlich ;)

  • Wirklich interessante Ergebnisse!

    Wie UEZ schon sagt: Nicht immer liegt in der Kürze die Würze.

    Eher das Hauptaugenmerk auf die Entlastung des Interpreters legen anstatt Operationen nach teuer und günstig einzuteilen und darauf hin zu optimieren.

    Und dieses Zitat trifft den Nagel auf den Kopf. Ich hatte auch über LUT und Caching nachgedacht, fand aber tatsächlich die Kürze und Prägnanz des "reinen" Algorithmus viel zu schick.

    Aber an der Hand voll Zeilen, die ich abgegeben habe, habe ich ziemlich viel rumgebastelt - was aber den Interpreter allesamt kaum interessiert hat. Witzigerweise war in meinen Tests die (De-)Normalisierung durch Multiplikation mit bool'schen Ausdrücken einen Tick performanter als die Formulierung mit ternären Operatoren.

    Allerdings tu ich mich auch schwer, abzuschätzen, inwieweit da meine Tests repräsentativ sind. Ich habe alles auf einem M2 Mac mit virtualisiertem Windows 11 getestet. Es kann auch gut sein, dass dadurch die einzelnen CPU-Instruktionen andere Zeiten beanspruchen als auf echter x86-Hardware.

    Jedenfalls, herzlichen Glückwunsch an die Gewinner! Und nochmal vielen vielen Dank an Schnuffel für's Organisieren!