Hallo!
Danke für die Werte.
Mein kleines Skript ist viel langsamer als das große. Ich denke so im Bereich von 1,0 sek.
0,026 mul ist schon fast kriminell schnell :D. Mal sehen, was ich da noch verbessern kann...
peethebee
Hallo!
Danke für die Werte.
Mein kleines Skript ist viel langsamer als das große. Ich denke so im Bereich von 1,0 sek.
0,026 mul ist schon fast kriminell schnell :D. Mal sehen, was ich da noch verbessern kann...
peethebee
Hallo!
Neue Size: 626 Bytes, current rank: 1st
Edit:
Size: 607 Bytes, current rank: 1st
peethebee
p.s. GreetZ to GtaSpider
wie war das mim doppelposten ? xD
So, jetzt leg ich mal nach (Download: Post#24).
Von 0.313 auf 0.095 bei meinem Rechner (bei Walle wohl so 0.1x). Reicht nicht für den ersten Platz, aber eine deutliche Verbesserung.
Edit: So, die Add-Funktion nochmal überarbeitet. Jetzt sind's bei mir 0.090s und "nur noch" 1298 Bytes.
Hallo
Neue Size: 602 bytes, current rank: 1st
Gruß an alle und vorallem an Pee
haha
Size: (464 Bytes)
Rank 1
edit:
(359 Bytes)
edit2: möp meine eigenen pw's vergessen aufzuschreiben xD sekunde
Hallo
Du hast wrkl Mul und Add und auch BigInt load usw dabei?
Also so aufgebaut?:
#include-once
BIGINT_ADD
BIGINT_MUL
_BigInt_Load($a)
_BigInt_Print($a)
?
Mfg Spider
logisch,
und das beste: neue version xD (359 Bytes) Post #67
Bist du ein Mathe Freak? Physiker oder Mathematiker.
Und ich habe doch noch ein paar Optimierungsmöglichkeiten gefunden.
1288 1222 Bytes und Zeiten:
Add: 0.024s 0.022 *
Mul: 0.028s 0.025 *
* = Auf meinem Rechner. Mal sehen, wie es bei Walle aussieht...
Edit: Siehe gestrichenes...
Oh, wie kann man das bloß so schnell schaffen.....
Wenn ich Änderungen vornehme oder einen anderen Ansatz wähle, läuft es noch langsamer.
Addition: 0.124
Multiplikation: 0.68
Hat vielleicht Jemand einen kleinen Tipp für mich? Ich hab im Moment echt keine Ahnung, was ich noch probieren könnte.
@goliath:
Addition ist doch schon mal gar nicht so schlecht :).
Bei der Multiplikation verwende ich die Schulmethode und ein paar kleine Beobachtungen aus der Natur von AutoIt (was ist schnell?) und der Multiplikation (wie kann ich etwas einsparen). Mehr kann ich nicht sagen ;).
Viel Erfolg,
peethebee
Danke, dann versuche ich es bei der Multiplikation mal mit der Schulmethode (ich benutze zur Zeit ein anderes Verfahren) und schau dann mal nach Einsparungsmöglichkeiten. Mal sehen, was draus wird...
Ich glaube, das ist ein Bug :D.
2007-27-06_02.00.03.jpg
peethebee
p.s. das schlagt mal xD (bin leider immer noch bei 0,088 )
Edit: Habe mal mein Add analysiert nach Laufzeit der Teile und es gibt in der Tat eine Bremse, nur bezweifele ich, dass die so einfach zu lösen ist :(. Und es muss noch 50% schneller werden :(.
Edit: Okay, habe das Wissen doch an anderer Stelle nutzen können, bin bei ca. 0,075 auf Waluevs Rechner.
lol
traut sich keiner mehr an die größe ?
edit: (354 Bytes)
edit2: (349 Bytes)
edit3: möp (440 Bytes)
edit4: mööp (453 Bytes) scheiß 0en xD
Hey! Pee hat eine Zeitmaschine programmiert ("-0.0006sec")! Wenn man die Funktion lange genug laufen läßt, dann läuft sie rückwärts.
Wie hast Du das denn hingekriegt, Pee? Benchmark manipuliert?
Hallo!
azunai: Testest du die Größe überhaupt mit dem Benchmark? Der ist extra dafür da, dass er die Größe nur gelten lässt, wenn die UDF auch die Tests besteht (u.a. eben die "Nulltests")...
Oscar : Inzwischen weiß ich, was wohl los war... ich habe mit TimerInit und -Diff nach Geschwindigkeitsbremsen gesucht, daher die niedrigen Werte. Den negativen kann ich allerdings auch nicht erklären...
Und dann gleich mal zum Geschäftlichen, habe es noch mal minimalst optimieren können (gleicher Algorithmus):
peethebee:
Average: 0.0845 sec.
Minimum: 0.0780 sec.
Maximum: 0.0913 sec.
Wie immer ca. minus 5% bei Waluev, also immer noch zu langsam, aber schneller als zuvor ;).
Größe nach wie vor bei 607 Bytes.
peethebee
@ pee, der benchmark läuft leschar durch
nur wenn du zb 1*0 rechnest kam bei mir 0 raus, 0*1 dagegen war 1 xD aber fixed
0 * x prüft der Benchmark
Aber gut, machen wir mit Skript kleiner, du hast es ja gefixt ;).
peethebee
naja wie gesagt, *Fixed*
mit (453 Bytes)