ich bin gerade auf der Suche nach dem Grafik-Ram-Verschwender meiner Engine.. Nun ich hab ja eigentlich alles in der Engine was es so gibt.. von daher gestaltet sich die Suche etwas schwierig.. Fakt is das meine App bereits im Startzustand also ohne Welt etc. ca 200MB an GRAM vereinnahmt..
Also nachdem Meine Engine geladen ist, d.h. alle nötigen Texturen für GUI, FBOs, Shadowmap etc.. dann liegt der Verbrauch bei 39MB. Dann nach einem SwapBuffers, ohne irgendwas gerendert zu haben.. (nur glClear) kommen mit einmal weitere 160MB hinzu...
ja nutze ich.. doch habe den kompletten Renderpfad ausgeklammert.. wird nix gerendert.. nur die Buffers gecleart und dann swapBuffer.. wie gesagt, nach allen FBOs (auch der GBuffer) erstellen und Texturen bin ich bei 39MB..
naja das verrückte ist ja, das ich sogar das Erstellen der FBOs komplett auskommentiert habe.. und trozdem 78MB an RAM verbraucht wird.. Lediglich ein Rendercontext von 32color und 24Depth.. und ein SwapBuffers.. ist jetzt noch drin...
wenn ich da mal rechne: Auflösung: 1515x644 Farbpuffer bei 32bit = 7,44MB Depthbuffer bei 24bit = 2,79MB
und das ganze mal 2, da Doublebuffered komm ich auf max 20MB..
EDIT: HA, ich hab grad gesehen das in meiner NVidia Einstellung Antialising auf 16xCSAA stand.. habs jetzt auf Anwendungsgesteuert. Nun hab ich nur noch ca 33MB.. aber sind ja immer noch 13MB zuviel.. Sorry für die Pfennigfuxerei, aber ich brauch jedes Byte..
vielleicht sollte ich noch was zu meinem eigentlichen Problem sagen.. Wenn bei einem großenm Projekt der GRAM Verbrauch über die 1000MB bei mir geht, dann geht die framerate mit einmal von 25 auf 2fps runter.. dann bekomm ich auch abstürzte etc.. oder Meldungen vom Treiber das die Karte nicht die Mindestanforderungen unterstützt etc.. Ich habe ein GTX465, diese hat 1024 dedicated RAM und insg. 4096.. Also heißt das doch wenn der RAM voll ist, das er das auf den Hauptspeicher schiebt. Das könnte die Framerate erklären, aber nicht die abstürze..
ADD: Ich rendere meine Modelle aktuell noch mit Displaylisten (VBO kommt noch).. wenn ich dann mal 3fps habe, und ich dann komischerweise die Displaylisten mal neubaue, hab ich je nach zufall manchmal wieder 25fps.. total eigenartig.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Thmfrnk hat geschrieben:
ADD: Ich rendere meine Modelle aktuell noch mit Displaylisten (VBO kommt noch).. wenn ich dann mal 3fps habe, und ich dann komischerweise die Displaylisten mal neubaue, hab ich je nach zufall manchmal wieder 25fps.. total eigenartig.
Vermutung: Die neue Displayliste kommt sofort in den GRAM, während die alte im RAM lag.
greetings
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Registriert: Di Mai 18, 2004 16:45 Beiträge: 2623 Wohnort: Berlin
Programmiersprache: Go, C/C++
Wenn du FBO nutzt und die Texturen MipMaps haben, muss man die auch noch bedenken. Ich weiß nicht wie NV es in den Treiber hand habt aber es kann auch sein, dass die Buffer auf pot Werte skaliert werden und nur ein Teil verwendet wird(bei PS3 ist das z.B. so). Sonnst würde ich noch gucken, ob in den Settings Tripple Buffering forciert wurde.
_________________ "Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren" Benjamin Franklin
Registriert: Di Mai 18, 2004 16:45 Beiträge: 2623 Wohnort: Berlin
Programmiersprache: Go, C/C++
Wenn er nicht aus dein Code kommt, dann kann es unter sehr seltenen Fällen auch von den Grafiktreibern kommen. In extremfällen baut der glsl compiler code, der nicht funktioniert aber wie gesagt, das ist extrem selten.
_________________ "Wer die Freiheit aufgibt um Sicherheit zu gewinnen, der wird am Ende beides verlieren" Benjamin Franklin
Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.