HisN
Fleet Admiral
- Registriert
- Nov. 2005
- Beiträge
- 83.287
Die Diskussion wie viel VRAM man nun wirklich auf einer Grafikkarte braucht ist so alt wie das Forum, wenn nicht sogar älter :-)
Bis jetzt konnte man die Frage nur schwer beantworten, z.b. indem man "gleiche" Grafikkarten mit unterschiedlicher Speicher-Ausstattung gegeneinander geprüft hat.
Aber damit konnte man nicht "jede" Speichermenge simulieren, und ständig Karten umstecken ist an sich auch nicht der richtige Weg.
Hier kommt der User @ZeroStrat ins Spiel.
Er hat mal schnell ein kleines Programm geschrieben, das über Cuda eine beliebige VRAM-Menge belegt.
Man kann also jetzt den Speicher einer Grafikkarte bewusst "begrenzen" indem man einfach Teile davon füllt.
Und schon kann man ganz genau erkennen ab wann eine Software anfängt an Leistung zu verlieren wenn ihr der Speicher ausgeht.
Und das ohne Karten tauschen zu müssen, einfach mit ein paar Zeilen in der Eingabe-Aufforderung.
Download-Link: https://1drv.ms/u/s!As_jnW8h38YpgcZ0wUsAP7tNmnFf1Q
Aufruf des Tools über die Konsole:
1000 sind 1GB. Quellcode ist auch im Ordner und wird mit
kompiliert, falls man das selbst kompilieren möchte. Dazu braucht man noch das CUDA SDK: CUDA Toolkit 10.1 Download | NVIDIA Developer
Hier als Beispiel. Ich habe im Leerlauf gut 1GB VRAM der Graka mit dem Zeug was bei mir so am Desktop läuft durch den Fenstermanager belegt.
Ich starte das Programm mit dem Wert 10 GB und es werden 10GB VRAM gefüllt.
Und sobald ich Return drücke, geht es auf den alten Wert zurück.
So kann man jede Software dazu zwingen mit dem Speicher jonglieren zu müssen und genau sehen ab wann welche Software bei welchen Settings anfängt zu stottern oder die FPS in den Keller gehen. Und zwar ohne viel Aufwand.
Ich hofffe das hilft bei der Frage: Wie viel VRAM ist wirklich nötig. Auch wenn die Beobachtung zur Zeit tatsächlich nur auf Grafikkarten mit "mehr als Genug" VRAM Punkte bringt, weil man auf Grafikkarten die sowieso schon zu wenig VRAM haben nur den Memorymanager mit Swappen beschäftigt. Wobei man allerdings aus der Beobachtung wie viel nun tatsächlich ins RAM geswappt wird, AUCH seine Schlüsse ziehen kann..
Vielen Dank nochmal an den Programmierer @ZeroStrat
Bis jetzt konnte man die Frage nur schwer beantworten, z.b. indem man "gleiche" Grafikkarten mit unterschiedlicher Speicher-Ausstattung gegeneinander geprüft hat.
Aber damit konnte man nicht "jede" Speichermenge simulieren, und ständig Karten umstecken ist an sich auch nicht der richtige Weg.
Hier kommt der User @ZeroStrat ins Spiel.
Er hat mal schnell ein kleines Programm geschrieben, das über Cuda eine beliebige VRAM-Menge belegt.
Man kann also jetzt den Speicher einer Grafikkarte bewusst "begrenzen" indem man einfach Teile davon füllt.
Und schon kann man ganz genau erkennen ab wann eine Software anfängt an Leistung zu verlieren wenn ihr der Speicher ausgeht.
Und das ohne Karten tauschen zu müssen, einfach mit ein paar Zeilen in der Eingabe-Aufforderung.
Download-Link: https://1drv.ms/u/s!As_jnW8h38YpgcZ0wUsAP7tNmnFf1Q
Aufruf des Tools über die Konsole:
Code:
gpumem.exe 1000
1000 sind 1GB. Quellcode ist auch im Ordner und wird mit
Code:
nvcc gpumem.cu -o gpumem -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin"
kompiliert, falls man das selbst kompilieren möchte. Dazu braucht man noch das CUDA SDK: CUDA Toolkit 10.1 Download | NVIDIA Developer
Hier als Beispiel. Ich habe im Leerlauf gut 1GB VRAM der Graka mit dem Zeug was bei mir so am Desktop läuft durch den Fenstermanager belegt.
Ich starte das Programm mit dem Wert 10 GB und es werden 10GB VRAM gefüllt.
Und sobald ich Return drücke, geht es auf den alten Wert zurück.
So kann man jede Software dazu zwingen mit dem Speicher jonglieren zu müssen und genau sehen ab wann welche Software bei welchen Settings anfängt zu stottern oder die FPS in den Keller gehen. Und zwar ohne viel Aufwand.
Ich hofffe das hilft bei der Frage: Wie viel VRAM ist wirklich nötig. Auch wenn die Beobachtung zur Zeit tatsächlich nur auf Grafikkarten mit "mehr als Genug" VRAM Punkte bringt, weil man auf Grafikkarten die sowieso schon zu wenig VRAM haben nur den Memorymanager mit Swappen beschäftigt. Wobei man allerdings aus der Beobachtung wie viel nun tatsächlich ins RAM geswappt wird, AUCH seine Schlüsse ziehen kann..
Vielen Dank nochmal an den Programmierer @ZeroStrat
Zuletzt bearbeitet: