Optimizer
Hey, hab was echt cooles gefunden!
Finde raus wie das Proggy funktioniert, und baus ein!
Sollte leicht gehen, da der Code dabei ist. Es ersetzt Dvision durch Multiplikation und ist echt schneller!
Hier der Link zu einer Topic im c-plusplus Forum dazu:
http://www.c-plusplus.de/forum/viewtopi ... 12884.html
Finde raus wie das Proggy funktioniert, und baus ein!
Sollte leicht gehen, da der Code dabei ist. Es ersetzt Dvision durch Multiplikation und ist echt schneller!
Hier der Link zu einer Topic im c-plusplus Forum dazu:
http://www.c-plusplus.de/forum/viewtopi ... 12884.html
http://www.nevu.de/ Künstliche Intelligenz, die letzte Herausforderung!
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
Danke Norbie
Werds mir mal genauer anschauen, hab aber ein wenig Bedenken dabei,
weil z.B. schon bei /8 das hier vorgeschlagen wird:
2. gabs bei shift right manchmal Probleme beim Divisionsrest (glaub) und
es lieferte nicht immer die gleichen Werte wie IDIV (deshalb hats Fred auch
wieder entfernt)
Aber ich werds mir mal anschauen, ich hoffe ich kann ein paar Tipps finden!
Danke nochmals
Remi
Werds mir mal genauer anschauen, hab aber ein wenig Bedenken dabei,
weil z.B. schon bei /8 das hier vorgeschlagen wird:
1. steht da nicht SAR (shift arithmetic right) undDivider is power of 2
To divide X by the divider use:
mov edx,X
SHR edx, 3
2. gabs bei shift right manchmal Probleme beim Divisionsrest (glaub) und
es lieferte nicht immer die gleichen Werte wie IDIV (deshalb hats Fred auch
wieder entfernt)
Aber ich werds mir mal anschauen, ich hoffe ich kann ein paar Tipps finden!
Danke nochmals
Remi
- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
http://mypage.bluewin.ch/remimeier/zip/Optimierer.zip
Sollte schon mit der Demo-Version kompatibel sein, aber dort wohl nicht
viel nützen, da dort immer Debug-Informationen im Asm-File drin stehen
und diese z.T. die Optimierung verhindern.
Übrigens, ich bin ab Donnerstag bis am 2. August am campen!
Sollte schon mit der Demo-Version kompatibel sein, aber dort wohl nicht
viel nützen, da dort immer Debug-Informationen im Asm-File drin stehen
und diese z.T. die Optimierung verhindern.
Übrigens, ich bin ab Donnerstag bis am 2. August am campen!
Ah ok,remi_meier hat geschrieben:http://mypage.bluewin.ch/remimeier/zip/Optimierer.zip
Sollte schon mit der Demo-Version kompatibel sein, aber dort wohl nicht
viel nützen, da dort immer Debug-Informationen im Asm-File drin stehen
und diese z.T. die Optimierung verhindern.
Übrigens, ich bin ab Donnerstag bis am 2. August am campen!
Aber der link is der selbe wie bei Showcase und deshalb auch nicht erreichbar...
Hi remi_meier
Hab dir hier noch ein Macro für die IDIV optimierung:
Du kannst es wie SAR benutzen außer, dass
- du nur 32-Bit Register verwenden kannst
- du als 2. parameter nicht CL verwenden kannst.
Gruß
Stefan
Hab dir hier noch ein Macro für die IDIV optimierung:
Code: Alles auswählen
!Macro ISAR Register,c {
!if c eq 1
!CMP Register,0
!JGE $+10
!NEG Register
!SAR Register,1
!NEG Register
!JMP $+4
!SAR Register,1
!else
!CMP Register,0
!JGE $+11
!NEG Register
!SAR Register,c
!NEG Register
!JMP $+5
!SAR Register,c
!end If
!}
;TEST:
For A=-1000 To 1000
!MOV ECX,[v_A]
!ISAR ECX,4
!MOV [v_R1],ECX
R2=A/16
Debug R1
Debug R2
Next
- du nur 32-Bit Register verwenden kannst
- du als 2. parameter nicht CL verwenden kannst.
Gruß
Stefan
- 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
>> Aber der link is der selbe wie bei Showcase und deshalb auch nicht erreichbar...
Link geht, jedenfalls bei mir, sowas kenne ich aber, hatte ich auch schon mal
Link geht, jedenfalls bei mir, sowas kenne ich aber, hatte ich auch schon mal
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.

- remi_meier
- Beiträge: 1078
- Registriert: 29.08.2004 20:11
- Wohnort: Schweiz
- 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
>> liegt warscheinlich an AOL
Habe Musterformulare da, wenn du Kündigen möchtest, kann Dir auch was neues empfehlen
Habe Musterformulare da, wenn du Kündigen möchtest, kann Dir auch was neues empfehlen
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.
