CapFrameX (CX) - Frametime Capture und Analyse Tool

AW: Neues Frametime Analyse Tool - CapFrameX

Das ganze ist schon sehr schön. Hab jetzt bereits einige vsync Synchronisationen getestet. Soweit funktioniert alles. Die Charts zeichenen gut beide Frametimes, das Kuchendiagramm funktioniert ebenfalls gut :daumen:

Mir ist ein kleines Problem bei fester Sync, also vsync ohne g/freesync bei den Histogramm aufgefallen. Die Werte für Display change sind normalerweise sehr nah bei 16,667 ; 33,3333 ; etc. bei einen 60hz display mit vsync dran. Im Histogramm werden die Werte für vsync bei zu starker abweichung einzelner frames falsch gerundet. Dazu ein kleines Bild. Screenshot (68).png

Hier sieht man: durch die große Anzahl an verworfenen Frames, sagt das Histogramm es käme alle 12,54ms eine neue Aktualisierung. Dies ist aufgrund des 60hz display mit vsync aber gar nicht möglich. Für normales vsync wären im Prinzip nur wenige Balken notwendig: volleBildschirmFrequenz in ms; halbeBildschirmfrequenz in ms; DrittelBildschirmfrquenz in ms; ...(viel mehr nicht, weil dann die Framerate irgendwann zu gering ist (bei 144, oder 240 hz vielleicht noch was weiter).
Das Problem wäre jetzt festzulegen, ob es vsync ist oder nicht. Die Dateien von OCAT helfen nicht unbedingt, da vsync dort nicht immer korrekt angegeben ist (gsync und freesync sind durch variable synchronisation ja nicht betroffen). Vielleicht auch einfach ne Checkbox, ob echtes vsync aktiv war oder nicht. Oder man überprüft in der Software, welche tatsächlich vorkommenen Display times mit kleiner Abweichung (die Werte sind leider nie ganz genau) häufig vorkommen und nutzt das als Basis für die Histogramme.
Vielleicht kann man auch die 0 Werte mit dropped beschriften und die für die anderen Werte im Histogramm außer acht lassen.

Hier ist noch die dargestellte Datei zur reproduktion.
Anhang anzeigen OCAT-Heaven.exe-2019-01-14T171442.zip


Puh das klingt jetzt ziemlich negativ. Dabei will ich nur helfen, jede Funktion von CapFrameX zu perfekt wie möglich zu gestalten. Also, abgesehen von den kleinen Verbessserungsvorschlag alles sehr gut gemacht. Mein Eindrurck ist, dass die Charts ein wenig schneller gezeichnet werden.
 
AW: Neues Frametime Analyse Tool - CapFrameX

@TheNewNow: Danke für den Test! Das ist tatsächlich ein Punkt, an den ich nicht gedacht habe. Die Zahlen, die unten an den Balken stehen, sind die Klassenrepräsentanten und zwar jeweils die linke Grenze (LowerBound). Ich könnte das Problem dadurch lösen, indem ich die Mittelwerte statt die Grenzen nehme.
 
Zuletzt bearbeitet von einem Moderator:
AW: Neues Frametime Analyse Tool - CapFrameX

Ich werde die Histogramme für die Verteilung der Displaytimes nochmal überarbeiten. Danke für deinen super Input, TheNewNow. Je mehr gute Kritik kommt, desto besser wird das Tool. :daumen:
 
AW: Neues Frametime Analyse Tool - CapFrameX

Moin!

Dein Tool ist erwartungsgemäß ziemlich episch. :daumen: Kriegen wir die Freigabe von dir, die monatlich aktuelle Version auf die Heft-DVD zu packen?

MfG,
Raff
 
AW: Neues Frametime Analyse Tool - CapFrameX

Moin!
Dein Tool ist erwartungsgemäß ziemlich episch. :daumen: Kriegen wir die Freigabe von dir, die monatlich aktuelle Version auf die Heft-DVD zu packen?f

Neeeiin, auf gar keinen Fall. :ugly: Ja klar, gerne! Das freut mich natürlich. Wartet aber bitte bis zum nächsten Release. Ich möchte gerne noch folgende Punkte umsetzen:

* Offene Features fertig stellen, damit die Software mehr "Tiefe" besitzt
* Bessere Fehlerbehandlung, um die Stabilität auf unterschiedlichen Systemen breiter gewährleisten zu können
* Die Windows Warnung in den Griff bekommen, wenn man die Setup-Exe ausführt
* Performance der Charts verbessern

Hast du zufällig noch Verbesserungsvorschläge? Wäre spannend zu wissen, wie ein professioneller Blick auf das Tool ist. Darf und soll auch kritisch sein. :)
 
AW: Neues Frametime Analyse Tool - CapFrameX

Grats, Gauss ! :daumen:
Dein Tool ist aber auch super geworden.

Freue mich schon auf die nächste Release-Version. :)
 
AW: Neues Frametime Analyse Tool - CapFrameX

Ähm nun da ich die Monitor - Liste erstmal abgearbeitet habe, kam ich auch endlich mal zum testen der neuen Version.

Nur habe ich eventuell einen Bug gefunden, kann allerdings nicht sagen ob es an OCAT oder an CFX liegt.

Wenn ich OCAT im Hintergrund anhabe um aufzuzeichen, wird in SotTR die Grafikkarte nurnoch zu 80% belastet, anstelle von 100%.
Gleiches Verhalten wenn ich OCAT abschalten und CFX im hintergrund an habe. (also mit beiden Programmen keine 100% Auslastung der Graka in 1440p mit max Details)

Gegentest habe ich dann mit CFX gemacht, ist dies im Hintergrund an (ohne irgendwelche Auswertungen, nur das Programm) wird die Grafikkarte nur zu 80% ausgelastet.

Aufgefallen ist es mir eigentlich nur deswegen, weil die FPS runter gegangen sind. Als ich dann mit MSI Afterburner nachgeschaut habe sah ich es.
Stellt sich nun die Frage, liegt es an OCAT (ist es aus, steigt es auch nicht mehr auf 100% an) oder an CFX (gleiches Verhalten)
Erst mit einem Neustart und ohne Benutzung der beiden Tools wird die gleiche Szene dann wieder mit 100% Auslastung berechnet, was 20 - 30FPS ausmachen.

Getestet habe ich es mit der SotTR Benchmarkszene mit DX12 im Exklusiven Vollbildmodus.
 
Zuletzt bearbeitet:
AW: Neues Frametime Analyse Tool - CapFrameX

@Darkearth: Danke für den Fehlerbericht. Das ist ein interessantes Verhalten. Ich kann mir nur schwer vorstellen, dass CX einen Einfluss auf das Game nimmt. Ersten werden keine 3D APIs angesprochen und zweitens ist die Hintergrundlast quasi Null. Aber man weiß ja nie. Mach doch mal bitte folgenden Test.

* Starte nur CapFrameX und wähle irgendeine Aufzeichnung aus, OCAT bitte nicht starten
* Dann starte das Spiel und überprüfe die GPU-Last
* Ist die GPU-Last betroffen, setze das Chart in CX zurück (klicke einfach auf Reports oben) und minimiere die Anwendung
* Ist die GPU-Last immer noch betroffen?

Gegebenenfalls kannst du dann noch einen Test machen mit OCAT, aber ohne CX.
 
AW: Neues Frametime Analyse Tool - CapFrameX

So kleines Update.

Also an CapFrame liegt es nicht. Es ist das Overlay von OCAT, sobald das aktiv ist sinkt die GPU Auslastung, wenn das Overlay deaktiviert ist bleiben die 100%.
Blöd ist es nur, dass ich den Rechner deswegen immer neu starten muss, anders lässt sich das nicht beheben.

Ist nur doof, wenn man aufzeichnet und nicht angezeigt bekommt, wann gestoppt wurde.
Ocat nutze ich die neuste Version aus deinem Link in der Signatur.

Eine Frage noch, wieso kann ich CapFrame manchmal nicht öffnen?
Starte es als Admin, und es geht direkt danach wieder zu. Erst eine Neuinstallation auf einen anderen Datenträger hilft.
(und ja diesmal sind alle Laufwerksverschlüsselungen aus ;) )
 
AW: Neues Frametime Analyse Tool - CapFrameX

So kleines Update.

Also an CapFrame liegt es nicht. Es ist das Overlay von OCAT, sobald das aktiv ist sinkt die GPU Auslastung, wenn das Overlay deaktiviert ist bleiben die 100%.
Blöd ist es nur, dass ich den Rechner deswegen immer neu starten muss, anders lässt sich das nicht beheben.

Ist nur doof, wenn man aufzeichnet und nicht angezeigt bekommt, wann gestoppt wurde.
Ocat nutze ich die neuste Version aus deinem Link in der Signatur.

Eine Frage noch, wieso kann ich CapFrame manchmal nicht öffnen?
Starte es als Admin, und es geht direkt danach wieder zu. Erst eine Neuinstallation auf einen anderen Datenträger hilft.
(und ja diesmal sind alle Laufwerksverschlüsselungen aus ;) )

Das ist normal, jedes Tool kostet etwas Leistung. Die low level API´s sind besonders empfindlich. Bench mal Vulkan mit geöffnetem Afterburner....
 
AW: Neues Frametime Analyse Tool - CapFrameX

Das ist normal, jedes Tool kostet etwas Leistung. Die low level API´s sind besonders empfindlich. Bench mal Vulkan mit geöffnetem Afterburner....

Aber 20% Auslastung klauen? Das sind 20 FPS (im Falle von SotTR), das kann so nicht gewollt sein.

Afterburner klaut bei mir maximal 3% egal ob mit Vulkan oder Dx12 oder Dx11. (Doom mit Vulkan, SotTR DX12 und TW3 mit DX11)
 
Zuletzt bearbeitet:
AW: Neues Frametime Analyse Tool - CapFrameX

Ist nur doof, wenn man aufzeichnet und nicht angezeigt bekommt, wann gestoppt wurde.
Ocat nutze ich die neuste Version aus deinem Link in der Signatur.

Eine Frage noch, wieso kann ich CapFrame manchmal nicht öffnen?
Starte es als Admin, und es geht direkt danach wieder zu. Erst eine Neuinstallation auf einen anderen Datenträger hilft.
(und ja diesmal sind alle Laufwerksverschlüsselungen aus ;) )

Wie ich in meinem kleinen Video-Tutorial schon sagte, sollte man das Overlay eigentlich immer deaktivieren. Es macht oftmals Probleme. Man muss sich einfach darauf verlassen, dass F12 die Messung startet/beendet.

Irgendwie gibt's mit dem Quellordner Probleme. Ich hatte gestern eine andere Quelle eingestellt, die CX nach einem Neustart eigenständig verworfen hatte, also nur die Settings. Wenn CX bei dir nach dem Starten direkt wieder schließt, stürzt es schlicht ab, weil eine Exception nicht richtig abfangen wurde. Was sagt die Windows Ereignisanzeige?
 
AW: Neues Frametime Analyse Tool - CapFrameX

@ Gauss
Anwendung: CapFrameX.exe
Frameworkversion: v4.0.30319
Beschreibung: Der Prozess wurde aufgrund einer unbehandelten Ausnahme beendet.
Ausnahmeinformationen: System.ArgumentNullException
bei System.IO.Directory.CreateDirectory(System.String)
bei CapFrameX.OcatInterface.RecordDirectoryObserver..ctor(CapFrameX.Contracts.Configuration.IAppConfiguration)


Name der fehlerhaften Anwendung: CapFrameX.exe, Version: 1.0.2.5, Zeitstempel: 0x5c4f58b2
Name des fehlerhaften Moduls: KERNELBASE.dll, Version: 10.0.17763.134, Zeitstempel: 0x1659a33b
Ausnahmecode: 0xe0434352
Fehleroffset: 0x0000000000055299
ID des fehlerhaften Prozesses: 0x1470
Startzeit der fehlerhaften Anwendung: 0x01d4b877c6c00dd8
Pfad der fehlerhaften Anwendung: E:\CFX\CapFrameX.exe
Pfad des fehlerhaften Moduls: C:\Windows\System32\KERNELBASE.dll
Berichtskennung: 1b581862-2fa9-4e07-8b4a-655a87bd7641
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist:
 
AW: Neues Frametime Analyse Tool - CapFrameX

[*]Scheiden von Frametime Graphen über das Platzieren eines Rechteckes (Drag&Drop) auf dem Chart

Das wäre mal cool.
Hab bei meinem 1. Versuch nicht aufgepasst, und den Load-Screen vom Benchmark zum Ergebnis mit drauf, der die ganze Sache ja ein bisschen ..... "runterreisst"?

cx-jpg.1030083
 

Anhänge

  • CX.jpg
    CX.jpg
    64,5 KB · Aufrufe: 104
AW: Neues Frametime Analyse Tool - CapFrameX

@HisN: Klapp mal die Data/Chart Settings auf. Dort kannst du den Cutting Mode aktivieren und den lästigen Spike am Ende rausschneiden. :)
 
Zurück