Seite 2 von 6
Verfasst: 14.07.2005 14:03
von remi_meier
Jap, das hab ich auch mit der ADV-Library festgestellt!
@Deeem: Hast du die internen Funktionsnamen geändert?
Feedback:
Gute Arbeit

Verfasst: 14.07.2005 14:06
von Deeem2031
Das hatte DarkDragon auch, das liegt daran das eine andere Lib auf die Proceduren zugreift. Die heißen aber nichtmehr "_PB_..." sondern "PB_...", weil es keine C-Libs sondern ASM-Libs sind. Musst du also entweder auf die neue Memory-Lib oder auf die andere Lib verzichten.
Könnte sogar an einer alten Version von PHPString liegen...
Verfasst: 14.07.2005 14:24
von Deeem2031
Ich hatte grad einen Einfall wie man das umgehen kann. Wer also den Fehler bekommt einfach die Memory-Lib nochmal runterladen. Danach müsste es auch mit den _PB_-Aufrufen funktionieren.
Verfasst: 14.07.2005 14:43
von DarkDragon
Deeem2031 hat geschrieben:Ich hatte grad einen Einfall wie man das umgehen kann. Wer also den Fehler bekommt einfach die Memory-Lib nochmal runterladen. Danach müsste es auch mit den _PB_-Aufrufen funktionieren.

Funktioniert nicht. Bei mir gibts dann OnError Errors.
[EDIT]
OK, Deeem2031 hat's repariert, danke Deeem, nun gehts tadellos!
Verfasst: 14.07.2005 14:53
von dige
Deeem2031 hat geschrieben:Ich hatte grad einen Einfall wie man das umgehen kann. Wer also den Fehler bekommt einfach die Memory-Lib nochmal runterladen. Danach müsste es auch mit den _PB_-Aufrufen funktionieren.
Leider der gleiche Fehler ....
Verfasst: 14.07.2005 15:07
von Deeem2031
So, hatte noch paar Fehler drin, jetzt sollte es gehen.
Verfasst: 15.07.2005 08:54
von dige
Jo, jetzt scheints zu gehen ...
Verfasst: 15.07.2005 17:04
von Deeem2031
Sehr schön
Wer noch ein bischen rumprobieren will:
www.deeem2031.de/SYS_AllocateString und
www.deeem2031.de/SYS_CopyString
Das Optimieren hat zwar bei den beiden nicht viel gebracht, die waren nämlich schon recht gut optimiert, aber paar Nanosekündchen hats schon gebracht.
Code: Alles auswählen
Init_SYS_CopyString()
Init_SYS_StringEqual()
Init_SYS_AllocateString()
SetThreadPriority_(GetCurrentThread_(),#THREAD_PRIORITY_ABOVE_NORMAL)
#r = 10000000
test.s = "Hallo Welt!"
a.s = "abcdef"
time1 = ElapsedMilliseconds()
For i = 0 To #r
a = test + "Hallo Welt!"
If a = test
EndIf
Next
time1 = ElapsedMilliseconds() - time1
MessageRequester("",Str(time1))
Bei mir ohne die Inits 4200 ms und mit 2900 ms.
[Edit] Bitte DD - kein Doppelpost ;P
Ich hab mal alle Proceduren die ich bisher optimiert habe zusammen getestet - Ergebnis:
durchschnittliche Zeit einer procedure vorher: 5,7 µs
nachher: 3,7 µs
Das heißt durchschnittlich habe ich 2 µs pro Procedure gutgemacht

Verfasst: 27.07.2005 01:30
von Deeem2031
wie löscht man nochmal Beiträge? ich find den knopp nich ^^
Verfasst: 27.07.2005 07:46
von Lebostein
Bei mir wird die Funktion StrLen() nicht gefunden. Woran kann das liegen?
Sollte deine Prozedur wirklich schneller sein, dann frag ich mich wieso Fred den direkten Stringvergleich (und allgemein die Stringbefehle, denn die sind extrem lahm, ich denke nur an den MID()-Befehl) nicht optimiert, wenn es noch Geschwindigkeitspotential gibt....
... das PB ein hochoptimierter Compiler sein soll, so wie auf der PB-Homepage Werbung gemacht wird, daran glaub ich schon lange nicht mehr (seit ich Geschwindigkeitsvergleiche mit Blitz, FreeBasic und VB gesehen habe). Ich hoffe nur Fred wird sich in Zukunft mehr auf den "Kern" konzentrieren als noch mehr unsinnigen Müll wie ein "CalendarGadget" zu produzieren...