Analyzer 2.0 für PB 4.0

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Analyzer 2.0 für PB 4.0

Beitrag von remi_meier »

Moin!

Nach meinem Optimizer nun mein Analyzer.
Die Idee dafür kam mir, als ich gestern ein Video von va!n über VTune(r)
gesehen habe. Ich dachte mir, sowas könnt ich auch gut für PB brauchen
und hab deshalb heute einfach mal losgeproggt. Wenn sich dieses System,
das ich hier entwickelt habe als nicht aussagekräftig erweist, habe ich noch
ein 2. im Hinterkopf :)

Also nun zum Programm selbst:
Analyzer ist ein Analysetool als IDE-Plugin realisiert. Es Analysiert, wie
lange (fast) jede Codezeile im Programm zum Ausführen benötigte. Dazu
muss das Programm einfach mit Hilfe des Analyzers modifiziert und danach
kompiliert werden. Nach der Ausführung des Programmes wird dann eine
relativ detaillierte analysis.txt im Code-Ordner erstellt, die anzeigt, wie
viel Zeit durch welche Codezeilen benötigt wurde. Nun gilt es diese zu
optimieren :)

Ich empfehle wärmstens die Help.txt im Downloadarchiv! Source ist wie
immer dabei!
Download: Analyzer

Ich werde garantiert noch daran weiter arbeiten, aber denke, dass es jetzt
schon ziemlich brauchbar ist!

Beispiel analysis.txt:
Line 477: Time 19586 LSDraw(*Drawing)
Line 325: Time 3555 Event = WaitWindowEvent()
Line 345: Time 1438 File.s = OpenFileRequester(Open..., , All|*.*, 0)
...
greetz
Remi
Zuletzt geändert von remi_meier am 04.02.2006 17:25, insgesamt 5-mal geändert.
Benutzeravatar
SoS
Beiträge: 340
Registriert: 29.08.2004 09:31
Kontaktdaten:

Re: Analyzer

Beitrag von SoS »

communication.msg hat geschrieben: Error: Line 0 - Syntax Error !
und in der PB_EditorOutput.pb steht als 1.

Code: Alles auswählen

Structure __an_line
	nr.l
	s.s
	time.l
EndStructure
Ich denke aber das ich es richtig installiert habe ;)
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

Danke erstmals fürs Ausprobieren!

Der Fehler kommt bei mir auch manchmal, ist aber für mich im Moment
noch sehr mysteriös... Bei mir reicht es, wenn ich den Source nochmals
abspeichere und neu versuche!

Hab übrigens mit Hilfe von va!n noch ein paar Bugs beseitigt und neu
hochgeladen, ev. war deiner ja auch dabei (hatte den Fehler nun ein
Weilchen nicht mehr).

Was ich noch in der Help vergessen hatte:
Beim Tool unbedingt "Warte bis Tool beendet" einschalten!

greetz
Remi
Benutzeravatar
SoS
Beiträge: 340
Registriert: 29.08.2004 09:31
Kontaktdaten:

Beitrag von SoS »

remi_meier hat geschrieben:Beim Tool unbedingt "Warte bis Tool beendet" einschalten!
Hatte ich vorher auch getestet und dann bekomme ich
Error: Line 1371 - A variable in a 'Structure' need a declared Type
in zeile 1371 steht

Code: Alles auswählen

__an_timer(593)
Ich denke mal das da ein Problem mit der Structur besteht

Code: Alles auswählen

Structure StringLong
StructureUnion
string.s
long.l
EndStructureUnion
__an_timer(593)
EndStructure
__an_timer(593)
original

Code: Alles auswählen

Structure StringLong 
  StructureUnion 
    string.s 
    long.l 
  EndStructureUnion 
EndStructure 
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

Autsch!
Danke für die gute Beschreibung!

Ich weiss worans liegt, aber auf den Fix musst du leider noch ein wenig
warten, dafür gibts dann auch einiges, was neu ist!

greetz
Remi
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

So danke nochmals fürs Testen!

Nach dem Nachtessen gibts nun eine neue Version!
Neu:
# Analyse pausieren für Codestücke
; pause
... asm stuff
; continue

# Ganze Blöcke auf Zeit messen (schachtelbar)!
; block [name]
... loops, code, ...
; endblock

# Bugs behoben

greetz
Remi

EDIT:
Und schon wieder was vergessen...
Wenn man jetzt das Tool im Menu auswählt, wird der Analyzer ab- oder
angeschalten, je nach vorigem Zustand.
Benutzeravatar
SoS
Beiträge: 340
Registriert: 29.08.2004 09:31
Kontaktdaten:

Beitrag von SoS »

Moin

Nun läufts bei mir auch problemlos. :allright:
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Analyzer

Beitrag von Kiffi »

Hallo remi_meier,
remi_meier hat geschrieben:Nach meinem Optimizer nun mein Analyzer.
ich hab's mir noch nicht angesehen, aber nennt man solche Tools nicht eher Profiler?
remi_meier hat geschrieben:Analyzer ist ein Analysetool als IDE-Plugin realisiert.
... auch für jaPBe oder nur für die Original-IDE?

Danke & Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

> ich hab's mir noch nicht angesehen, aber nennt man solche Tools nicht
> eher Profiler?
Jap, hab ich grad erfahren, aber man darf ja jedem Programm seinen
eigenen Namen geben (VTune heisst auch nicht nur Profiler), Profiler ist
wohl eher der Typ des Programms.

> ... auch für jaPBe oder nur für die Original-IDE?
Es könnte bei beiden funktionieren (denk ich). Alles was es braucht ist ein
TEMPORÄRES File, welches als Programmparameter übergeben wird!
Dieses wird dann verändert!

@SoS
schön zu hören :)

Update 0.95b!
Analysis.txt ausführlicher + Infofiles im Help-Ordner
Benutzeravatar
remi_meier
Beiträge: 1078
Registriert: 29.08.2004 20:11
Wohnort: Schweiz

Beitrag von remi_meier »

So nun gibts noch ein Merger Tool im ZIP!
Es verbindet einfach alle IncludeFiles eines Projekts miteinander wenn die
Hauptdatei als Programmparameter übergeben wird. Benötigt wird dies,
weil der Analyzer nicht die Möglichkeit hat (Feature :D ) auch die Include-
Files zu modifizieren!

Also einfach Hauptdatei auswählen -> Merger -> Merged ***.pb neu laden
und analysieren!

greetz
Remi
Antworten