Aktuelle Zeit: 12.11.2019 23:43

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 47 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5  Nächste
Autor Nachricht
 Betreff des Beitrags: Compiler-Optimierungen
BeitragVerfasst: 31.12.2004 17:16 
Offline
Benutzeravatar

Registriert: 29.08.2004 20:11
Wohnort: Schweiz
Tach alle zusammen!
http://robsite.de/php/pureboard-archiv/ ... a17bb2c7f0
Wollte das nur nochmals zeigen und meinen Beitrag dazu leisten:
Ich habe einige der Punkte nochmals getesten und feststellen müssen, dass da so ziemlich nichts implementiert wurde ("Nice one. I will implement them soon .")
Ich habe hier selbst einige aufgeführt, die ich noch gefunden habe:
Code:
1) PB erkennt zwar x * 1, aber nicht x = x * 1:
x = x * 1
wird zu:
MOV    ebx,dword [v_x]
MOV    dword [v_x],ebx

2) etwa gleich wie 1)
; x = x
  PUSH   dword [v_x]
  POP    dword [v_x]

3) x + 1 wird zu INC v_x, aber x - 1 nicht zu DEC v_x:
; x + 1
  INC    dword [v_x]
; x - 1
  MOV    ebx,dword [v_x]
  ADD    ebx,-1
  MOV    dword [v_x],ebx
Ich denke nicht, dass das schneller sein soll...

4) x - y / z
PB:
  MOV    ebx,dword [v_x]
  MOV    edi,dword [v_y]
  PUSH   dword [v_z]
  MOV    eax,edi
  POP    edi
  CDQ
  IDIV   edi
  MOV    edi, eax
  SUB    ebx,edi
  MOV    dword [v_x],ebx
Vorschlag:
  MOV    ebx,dword [v_x]
  MOV    eax,dword [v_y]
  MOV    edi,dword [v_z]
  CDQ
  IDIV   edi
  SUB    ebx,eax
  MOV    dword [v_x],ebx

Vor allem das DEC will ich haben ! :twisted:

greetz
remi


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 31.12.2004 17:43 
Offline
Benutzeravatar

Registriert: 19.09.2004 16:52
Wohnort: Neu Wulmstorf (Hamburg)
-gelöscht-


Zuletzt geändert von 125 am 01.01.2005 16:31, insgesamt 1-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 31.12.2004 18:00 
Offline
Benutzeravatar

Registriert: 29.08.2004 20:11
Wohnort: Schweiz
LOL
Ich bin leider nicht fähig einen Compiler zu bauen, muss noch abwarten, bis ich alt genug bin um das zu studieren :wink:
War nur etwas motiviert durch diesen Speedtest zwischen BlitzMax und PB:
http://purebasic.myforums.net/viewtopic ... 9&start=15
Naja und n paar Sachen sind wohl auch nicht allzu schwer zu implementieren (DEC, x = x).
Und das "I will implement them soon" zeigt ja auch, dass es nicht allzu schwer wäre /:->

greetz
remi


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 31.12.2004 18:23 
Offline
-= Anfänger =-
Benutzeravatar

Registriert: 29.08.2004 03:07
remi_meier hat geschrieben:
http://purebasic.myforums.net/viewtopic.php?t=13379

fsw hat geschrieben:
Good luck Fred (PB), good luck Mark (BM), good luck Paul (IB).
You guys need every bit of luck you can get...

Geil! :lol: :lol:

_________________
cya,
...Danilo
"Ein Genie besteht zu 10% aus Inspiration und zu 90% aus Transpiration" - Max Planck


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 31.12.2004 18:34 
Offline
Benutzeravatar

Registriert: 29.08.2004 20:46
Wohnort: Luxemburg
Tsss, Danilo, bist du aber ein schlimmer! :mrgreen: :freak: (Und fsw erst... /:-> )
Schnuppe, hast ja Recht! Und jetzt macht bitte keinen Flamewar draus, das hatten wir schon zu oft! Helft mir lieber mit meinen neuen Router (ich habe endlich ne DSL-Flatrate! 1MBit/s.
YEEEEHAAAAAAAAA!)
Den Post dazu schreibe ich jetzt gleich...

cya
Pascal

_________________
„Warum siehst du den Splitter im Auge deines Bruders, aber den dicken fetten schwarzen Zensurbalken vor deinem Auge bemerkst du nicht?“


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 31.12.2004 22:31 
Offline
Benutzeravatar

Registriert: 12.09.2004 03:31
Wohnort: North by Northwest
hardfalcon hat geschrieben:
Tsss, Danilo, bist du aber ein schlimmer! :mrgreen: :freak: (Und fsw erst... /:-> )

:allright:

Mal im ernst, was kann ein pb user dafuer wenn es alternativen gibt :?:
Es ist doch nicht verboten mehrere programmiersprachen zu benutzten...

Ausserdem hatte ich Fred schon vor jahren empfohlen den pb-kern mehr aufmerksamkeit zu schenken und zumindest die sachen einzubauen die freie basic's wie xb/xblite, bcx etc. bereits hatten.
Aber nix is... :cry:

Take care

BTW: Hoffe wirklich (for Fred's sake...) version 4 ist DER HAMMER :)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 01.01.2005 16:17 
Offline
Benutzeravatar

Registriert: 29.08.2004 00:40
@125: dass ist nun wirklich mal konstruktive kritik, wenn der stein des anstoßes sogar in form von assembly listings erklärt wird.
also wirklich kein grund verärgert zu reagieren.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 02.01.2005 15:06 
Offline
Benutzeravatar

Registriert: 29.08.2004 20:11
Wohnort: Schweiz
Vielleicht etwas schwerer zu machen:
Code:
; x = 3 * (a * 4 + a * 5)
  MOV    ebx,dword [v_a]
  SAL    ebx,2
  MOV    edi,dword [v_a]
  IMUL   edi,5
  ADD    ebx,edi
  IMUL   ebx,3
  MOV    dword [v_x],ebx

1. erkennen, dass 2 mal die gleiche Variable benutzt wird und
2. ev. erkennen, dass man a ausklammern kann...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 02.01.2005 15:32 
Offline
Admin
Benutzeravatar

Registriert: 08.09.2004 13:19
Wohnort: Ludwigsburg
remi_meier hat geschrieben:
Vielleicht etwas schwerer zu machen:
Code:
; x = 3 * (a * 4 + a * 5)
  MOV    ebx,dword [v_a]
  SAL    ebx,2
  MOV    edi,dword [v_a]
  IMUL   edi,5
  ADD    ebx,edi
  IMUL   ebx,3
  MOV    dword [v_x],ebx

1. erkennen, dass 2 mal die gleiche Variable benutzt wird und
2. ev. erkennen, dass man a ausklammern kann...


Zu 2.:
Na ich weiß net, ein klein wenig sollte man dann schon noch dem Verstand des Programmierers überlassen - oder willst du wirklich einen auf mehrere MB aufgeblähten Compiler haben der eine Stunde zum Compilen von "Hello World" braucht? Ich meine, wo willst du mit solchen Optimierungen den Schlussstrich ziehen? Schleife schlecht programmiert -> macht der Compiler halt eine bessere draus. Sortieralgorithmus ist nicht optimal -> Compiler erkennt das und ersetzt sie durch bessere usw.

_________________
Beginne jeden Tag als ob es Absicht wäre!
Bild
BILDblog


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: 02.01.2005 15:38 
Offline
Benutzeravatar

Registriert: 29.08.2004 20:11
Wohnort: Schweiz
Ne schon gut, deshalb auch das "ev.". Ich bringe hier einfach ein paar Vorschläge. Ich wage hier nicht einmal zu hoffen, dass diese dann wirklich eingebaut werden :wink:
greetz
remi


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 47 Beiträge ]  Gehe zu Seite 1, 2, 3, 4, 5  Nächste

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye