AufrufConventionen
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Wenns eng wird, einfach Deine Routinen optimieren, ein bissel pointern, bzw.kaspar hat geschrieben:Danke. Pointer kommen mir gerade recht. Ist PureBasic wirklich so schnell?
ASM. Dann kanns eigentlich mit allem mir bekannten mithalten.
Hängt also mehr von Deinem Können ab. Aber die normallen Funktionen sind
meist mehr als ausreichend schnell.
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
wenn man aufn paar kniffe achtet, kann man viel rausholen.
eine abfrage
gibt kürzeren ASM code als
afaik wird auch
direkt in ein INC übersetzt.
(a=a+1 kannste dir sparen, a+1 geht)
eine abfrage
Code: Alles auswählen
If a
Code: Alles auswählen
If a <> 0
Code: Alles auswählen
a+1
(a=a+1 kannste dir sparen, a+1 geht)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
schau mal hier:
http://www.purebasic.fr/german/viewtopi ... 805#110805
der normale ElapsedMilliseconds() gibt zwar ms aus, ist aber ca. 13ms ungenau.
trotzdem kann man ihn für performance-tests nutzen:
- den kritischen vorgang oft genug durchführen ( > 5sec )
- bei tests immer den debugger abschalten.
http://www.purebasic.fr/german/viewtopi ... 805#110805
der normale ElapsedMilliseconds() gibt zwar ms aus, ist aber ca. 13ms ungenau.
trotzdem kann man ihn für performance-tests nutzen:
- den kritischen vorgang oft genug durchführen ( > 5sec )
- bei tests immer den debugger abschalten.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
Hallo, habe noch einmal gelesen un versucht einen Weg für die Übergabe un Änderung von Strings zu machen. Bitte, wenn Euch das nicht neu ist, ich habe mich gerade ein paar Tage mit PureBasic beschäftigt, macht kein Grinse, Grinse.
Haubtprogramm:
Bla,Bla
c.s{40} ; Das ist der Punkt. Is ja wie array
c="BÄ"
teststr(@c)
Debug "Draussen"+c ; --> "Hallo"
Include Datei
Procedure teststr (*x.s)
Debug "Drinnen1"+ *x ; -->"BÄ"
*x = "Hallo"
Debug "Drinnen2" + *x ; -->"Hallo"
EndProcedure
Haubtprogramm:
Bla,Bla
c.s{40} ; Das ist der Punkt. Is ja wie array
c="BÄ"
teststr(@c)
Debug "Draussen"+c ; --> "Hallo"
Include Datei
Procedure teststr (*x.s)
Debug "Drinnen1"+ *x ; -->"BÄ"
*x = "Hallo"
Debug "Drinnen2" + *x ; -->"Hallo"
EndProcedure
die dereferenzierung geschieht in der proc schon automatisch. nur must du die proc vorher definieren (oder Declare verwenden).
Code: Alles auswählen
Procedure teststr (*x.s)
Debug "Drinnen1"+ *x ; -->"BÄ"
*x = "Hallo"
Debug "Drinnen2" + *x ; -->"Hallo"
EndProcedure
c.s{40} ; Das ist der Punkt. Is ja wie array
c="BÄ"
teststr(@c)
Debug "Draussen"+c ; --> "Hallo"
;Include Datei