Purefiler - Ein alternativer Profiler
Re: Purefiler - Ein alternativer Profiler
Für ein Profiling mit F5 reicht es, wenn man noch ein pb-tool konfiguriert
und dort als Argumente "%TEMPFILE" "%COMPILEFILE" übergibt.
und dann "Vor dem Kompilieren/Starten" auswählt.
dann steht natürlich letztlich als Name in dem Profiler immer tempfile .. drin
Dafür hat man dann adhoc Ergebnisse.
und dort als Argumente "%TEMPFILE" "%COMPILEFILE" übergibt.
und dann "Vor dem Kompilieren/Starten" auswählt.
dann steht natürlich letztlich als Name in dem Profiler immer tempfile .. drin
Dafür hat man dann adhoc Ergebnisse.
pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Re: Purefiler - Ein alternativer Profiler
Danke Kiffi, da hatte ich mich wohl im englischen Forum verlesen. Man muss also eine Executable erstellen und diese dann ausführen um Logs zu erhalten (sofern bei der Frage "Ja" ausgewählt wurde).
Ich konnte nun sogar mein Großprojekt damit starten, wobei das kompilieren ganze 2 Minuten gedauert hat (anstatt < 1sec) und die Dateigröße sich verfünffachte.
Ich dachte schon Purefiler.exe hätte sich aufgehängt, da der Taskmanager über diese 2 Minuten 100% Auslastung und einen um 200mb gestiegenen Speicherverbrauch anzeigte.
Naja hat dann doch funktioniert, wobei wohl die Utf8-Codierung des Quelltextes nicht funktioniert. So wurden alle "Ä" zu "ç" (oder ähnliches). Im Analyse-Modus wurde mir (deswegen?) nur eine leere Zeile zum auswählen angezeigt und mit einem Klick darauf bekam ich leider keinen Inhalt...
Mit einem anderen Quellcode hat es aber natürlich hervorragend funktioniert!
Gut wären noch Optionen zum Löschen bestimmter Timestamps.
Was ich außerdem etwas problematisch für den Unwissenden finde ist, dass die Exe in den Purfiler-Ordner kopiert wird (?). Mit meinen Test-Exe's haben sich da schnell ein paar MB zusammengesammelt.
Ich konnte nun sogar mein Großprojekt damit starten, wobei das kompilieren ganze 2 Minuten gedauert hat (anstatt < 1sec) und die Dateigröße sich verfünffachte.

Naja hat dann doch funktioniert, wobei wohl die Utf8-Codierung des Quelltextes nicht funktioniert. So wurden alle "Ä" zu "ç" (oder ähnliches). Im Analyse-Modus wurde mir (deswegen?) nur eine leere Zeile zum auswählen angezeigt und mit einem Klick darauf bekam ich leider keinen Inhalt...
Mit einem anderen Quellcode hat es aber natürlich hervorragend funktioniert!

Gut wären noch Optionen zum Löschen bestimmter Timestamps.
Was ich außerdem etwas problematisch für den Unwissenden finde ist, dass die Exe in den Purfiler-Ordner kopiert wird (?). Mit meinen Test-Exe's haben sich da schnell ein paar MB zusammengesammelt.
"Menschenskinder, das Niveau dieses Forums singt schon wieder!" — GronkhLP ||| "ich hogffe ihr könnt den fehle endecken" — Marvin133 ||| "Ideoten gibts ..." — computerfreak ||| "Jup, danke. Gruss" — funkheld
- Didelphodon
- Beiträge: 360
- Registriert: 18.12.2004 13:03
- Wohnort: Wien
- Kontaktdaten:
Re: Purefiler - Ein alternativer Profiler
Ansich kommt der Purefiler auch mit ASM zurecht. Worüber er bei Deinem Code stolpert, ist "!@@:", weil er's als zusammengehängte Zeilen interpretiert - muss ich noch überarbeiten. "!@@:" ... was macht das eigentlich?cxAlex hat geschrieben:Von mir auch mal ein Fettes Lob, kann ich gut brauchen dein Tool![]()
Leider scheint es mit ASM nicht so zurechtzukommen, folgender Code wirft einen ASM - Error mit deinem Profiler:
Gruß, AlexCode: Alles auswählen
Procedure _CreateHash(*pKey.CHARACTER, Mapsize.i) CompilerIf #PB_Compiler_Processor = #PB_Processor_x86 !MOV EAX,5381 ;Startwert hash !MOV EBX,EAX ;für erste Addition in Schleife !MOV ESI,dword[p.p_pKey] ;oder LEA ESI,[v_pKey], aber wenn p_pKey eh schon da ist... !XOR EDX,EDX ;EDX auf Null setzen !MOV CL,5 ;sollte so schneller sein !@@: !MOV DL,[ESI] ;also kein Unicode! !OR DL,DL ;Test auf Null !JZ @f ;ist Null, Sprung vorwärts !SHL EAX,CL !ADD EAX,EBX !ADD EAX,EDX !MOV EBX,EAX ;"alten" hash sichern !INC ESI !JMP @b ;Sprung rückwärts, nächsten Wert einlesen !@@: !MOV dword[p.p_pKey],esi ;wirklich Pointer erhöhen? Sonst weg !XOR EDX,EDX ;schneller und richtiger (!) als CDQ ich gehe hier mal von vorzeichenlosen Werten aus !DIV dword[p.v_Mapsize] ;EAX ist noch hash !MOV EAX,EDX ;Divisions-Rest CompilerElse !MOV RAX,5381 ;Startwert hash !MOV RBX,RAX ;für erste Addition in Schleife !MOV ESI,dword[p.p_pKey] ;oder LEA ESI,[v_pKey], aber wenn p_pKey eh schon da ist... !XOR RDX,RDX ;EDX auf Null setzen !MOV CL,5 ;sollte so schneller sein !@@: !MOV DL,[ESI] ;also kein Unicode! !OR DL,DL ;Test auf Null !JZ @f ;ist Null, Sprung vorwärts !SHL RAX,CL ;SHL = SAL; SAL wird selten angegeben !ADD RAX,RBX !ADD RAX,RDX !MOV RBX,RAX ;"alten" hash sichern !INC ESI !JMP @b ;Sprung rückwärts, nächsten Wert einlesen !@@: !MOV dword[p.p_pKey],esi ;wirklich Pointer erhöhen? Sonst weg !XOR RDX,RDX ;schneller und richtiger (!) als CDQ ich gehe hier mal von vorzeichenlosen Werten aus !DIV dword[p.v_Mapsize] ;EAX ist noch hash !MOV RAX,RDX ;Divisions-Rest CompilerEndIf ProcedureReturn ;Gibt Hash in EAX zurück EndProcedure _CreateHash(@"test", 1000)
Das Leben ist ein sch*** Spiel, aber die Grafik ist irre!
Fighting for peace is like fuc*ing for virginity!
Fighting for peace is like fuc*ing for virginity!
Re: Purefiler - Ein alternativer Profiler
Das ist eine Einsprungpunkt für den ASM - Source. @f springt zum nächsten, @b zum vorherigen dieser Punkte. Das ganze ist eine Hashing Algo für eine Hashmap.
Gruß, Alex
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
- Didelphodon
- Beiträge: 360
- Registriert: 18.12.2004 13:03
- Wohnort: Wien
- Kontaktdaten:
Re: Purefiler - Ein alternativer Profiler
Ok, Danke für die Info - ist behoben. Build 86 ist online.cxAlex hat geschrieben:Das ist eine Einsprungpunkt für den ASM - Source. @f springt zum nächsten, @b zum vorherigen dieser Punkte. Das ganze ist eine Hashing Algo für eine Hashmap.
Gruß, Alex
LG Didel.
Das Leben ist ein sch*** Spiel, aber die Grafik ist irre!
Fighting for peace is like fuc*ing for virginity!
Fighting for peace is like fuc*ing for virginity!
Re: Purefiler - Ein alternativer Profiler
Danke
Jetzt kompiliert der Source zwar durch, das entstandene Programm stürzt aber ab :P
Gruß, Alex

Jetzt kompiliert der Source zwar durch, das entstandene Programm stürzt aber ab :P
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
- Didelphodon
- Beiträge: 360
- Registriert: 18.12.2004 13:03
- Wohnort: Wien
- Kontaktdaten:
Re: Purefiler - Ein alternativer Profiler
Hm, ich habs auch ausprobiert, bei mir läuft das entstandene Programm aber problemlos - allerdings weiß ich nicht Deine Compilereinstellungen, ich hab's bei mir einfach in ein Default-New reingekippt.cxAlex hat geschrieben:Danke![]()
Jetzt kompiliert der Source zwar durch, das entstandene Programm stürzt aber ab :P
Gruß, Alex
Das Leben ist ein sch*** Spiel, aber die Grafik ist irre!
Fighting for peace is like fuc*ing for virginity!
Fighting for peace is like fuc*ing for virginity!
Re: Purefiler - Ein alternativer Profiler
Lad dir mal die neueste Version von Simple Container (in meiner Signatur oder direkt) herunter und versuche SC_Test.pb mit Purefiler zu kompilieren. Danke.
Gruß, Alex
Gruß, Alex
Projekte: IO.pbi, vcpu
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster

PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
Pausierte Projekte: Easy Network Manager, µC Emulator
Aufgegebene Projekte: ECluster
PB 5.1 x64/x86; OS: Win7 x64/Ubuntu 10.x x86
- Didelphodon
- Beiträge: 360
- Registriert: 18.12.2004 13:03
- Wohnort: Wien
- Kontaktdaten:
Re: Purefiler - Ein alternativer Profiler
Werd ich ausprobieren. Btw., compilierst Du auf x86 oder x64?cxAlex hat geschrieben:Lad dir mal die neueste Version von Simple Container (in meiner Signatur oder direkt) herunter und versuche SC_Test.pb mit Purefiler zu kompilieren. Danke.
Gruß, Alex
Das Leben ist ein sch*** Spiel, aber die Grafik ist irre!
Fighting for peace is like fuc*ing for virginity!
Fighting for peace is like fuc*ing for virginity!
- Didelphodon
- Beiträge: 360
- Registriert: 18.12.2004 13:03
- Wohnort: Wien
- Kontaktdaten:
Re: Purefiler - Ein alternativer Profiler
Habe jetzt den Purefiler x64-tauglich gemacht. Vielleicht löst das Probleme - außerdem ist Purefiler jetzt einbisserl schneller - habs geprofiled 
Build 89 ist online.

Build 89 ist online.
Das Leben ist ein sch*** Spiel, aber die Grafik ist irre!
Fighting for peace is like fuc*ing for virginity!
Fighting for peace is like fuc*ing for virginity!