Thread Starter
- Mitglied seit
- 28.08.2004
- Beiträge
- 4.575
- Desktop System
- WandPC
- Details zu meinem Desktop
- Prozessor
- AMD Ryzen 9-9950X
- Mainboard
- ASRock B850i Lightning WiFi
- Kühler
- Arctic Freezer 36
- Speicher
- 64GB (2x 32GB) Kingston DDR5-6000 CL30
- Grafikprozessor
- Gigabyte Aorus RTX 5090 Xtreme Waterforce WB, 420er Phobya G-Change v2 Radiator
- Display
- Alienware AW3225QF, 32" 240HZ Curved OLED
- SSD
- 2TB Samsung 990 Pro
- Opt. Laufwerk
- -
- Soundkarte
- FiiO E10
- Gehäuse
- ne Siebdruckplatte (WandPC)
- Netzteil
- BeQuiet DarkPower 13 - 850W
- Keyboard
- Logitech M720
- Mouse
- Logitech K850
- Betriebssystem
- Windows 11 Pro
- Webbrowser
- Chrome
- Sonstiges
- 30cm Pcie 4.0 Ezdiy-Fab Riserkabel
Hallo zusammen, ich hab mal wieder ein kleines Projekt umgesetzt was ich schon lange mal machen wollte.
Diesmal ging es mir darum, eine RTX 3070 mit 16GB Videospeicher genauer zu analysieren.
Als Basis diente eine Gigabyte RTX3070 Gaming OC welche ja wie jede andere RTX3070 nur 8GB gDDR6 Speicher hat, genauer gesagt waren 8 St. Samsung K4Z80325BC-HC14 verbaut.
Da ich noch eine alte AMD RX6800 rumliegen hatte wo – wie bei den meisten defekten RX6800/6900 der Core defekt war – der Speicher zum Glück noch heile war. Verbaut war auf der RX6800 Chips von Samsung, die K4ZAF325BM-HC16, davon 8 Stück – in Summe also 16GB.
Das HC14 oder HC16 gibt die Speichergeschwindigkeit an, also 14Gbps (1750Mhz) und HC16 sind demzufolge für 16Gbps Spezifiziert (2000Mhz), gibt auch langsamere oder noch schnellere.
Da ich schon das ein oder andere gelötet habe, habe ich schon etwas Erfahrung würde ich vorsichtig behaupten wollen und ein bisschen Equipment habe ich auch da. Also kurzerhand die Speicher beider Karten runter genommen und neu reballed. Da ich knausrig bin, habe ich über Aliexpress nur ein 6-fach gDDR6 Stencil gekauft – ohne die Halterung dazu. Diese habe ich mir mit etwas ausmessen selber konstruiert und 3D gedruckt. Und passte sogar direkt beim 1. Versuch

Speicherchips also vorher entzinnt, gereinigt und hauchdünn Flussmittel aufgetragen und die 0,45mm Lötkugeln über das Stencil verteilt. Damit liegen die Lötkugeln auf den Lötaugen der RamChips und werden nur durch das Flussmittel an ort und stelle gehalten wenn man die RamChips aus der Halterung nimmt. Anschließend die RamChips auf eine Heizplatte auf rund 190°C erhitzt sodass die bleihaltigen Aliexpress Lötkugeln schmelzen und eine Verbindung mit den Lötkugeln eingehen. Aufs PCB auflöten geht ähnlich, also mit Unterhitze und Heißluft - eigentlich gar nicht so schwer das ganze.

Durch meine Knausrigkeit war natürlich die Grafikkarte vorher auch defekt, weil der Vorbesitzer wie auch immer einige SMD Widerstände und Keramik-Kondensatoren auf der Rückseite incl. der Lötaugen weggerissen hat – dafür war die Karte für mich günstig in der Anschaffung
War aber keine große Sache und konnte ich schnell reparieren.

Natürlich hatte ich die Karte vorher mit ihren 8GB getestet bevor ich den umbau gemacht habe ;-)
Nach dem Speicherumbau habe ich die Karte ebenfalls nocheinmal getestet um zu schauen ob Bild kommt, und ob die Speicher ohne Fehler liefen – MATS Test (spezielles nVidia Test-Tool) lief fehlerfrei durch. Die Karte wurde noch mit 8GB erkannt, da es nicht damit getan ist, nur die Speicher zu tauschen.
Zum glück gibt es zu der Gigabyte Karte ein paar geleakte Servicedokumente, worin auch beschrieben ist, welche Widerstände man wie ändern muss, damit die Karte auch mit anderem Speicher läuft, wie Hynix, Micron oder Samsung Ram, aber auch 16Gb Samsung Speicher (also 2 GB Chips) – nVidia hatte scheinbar intern experimentiert mit 16GB Ausstattung, aber das ganze nicht umgesetzt. Die sogenannte Strap-Konfiguration wird beim Start der GPU ausgelesen und somit die entsprechende Timing-Tabelle im Grafikkarten-Bios ausgewählt.

Also Strap-Widerstände auf der Karte um gelötet und nochmal getestet. Karte liefert Bild, aber sobald der Treiber geladen wurde, war sie sehr instabil. Wenn sie einmal hoch getaktet hat und dann wieder in den Idle-State wechseln soll, gab es ein Blackscreen oder eine vollflächige Farbe wie Rot, Grün oder Blau.
Davon hatte ich schon gelesen im Netz von anderen Moddern, die ebenfalls so ein Mod durchgeführt haben, bei ihnen hatte es aber geholfen im nVidia Treiber bei der Energieverwaltung auf Maximale Performance umzustellen. Leider half das bei mir nicht. Mir ist aufgefallen, dass unter 4K Auflösung die Karte deutlich instabiler lief, also bei FullHD. Aber dennoch gab’s auch dabei öfter mal ein GreenScreen oder BlackScreen. Dann ging die suche los, wie man das Ding Stabil bekommt, also erst einmal raus finden wann die Karte Stabiler oder instabiler lief. Ich konnte problemlos ein Benchmark laufen lassen wenn es bis dahin kein Blackscreen gab. Unter Last also lief die Karte problemlos, auch 1h Furmark war kein Problem. Aber sobald man das Bench-Programm geschlossen hat, gab’s ein Crash. Auch Speicher Übertakten oder stark Untertakten änderte rein gar nichts.
An dieser Stelle möchten wir Ihnen ein Youtube-Video zeigen. Ihre Daten zu schützen, liegt uns aber am Herzen: Youtube setzt durch das Einbinden und Abspielen Cookies auf ihrem Rechner, mit welchen sie eventuell getracked werden können. Wenn Sie dies zulassen möchten, klicken Sie einfach auf den Play-Button. Das Video wird anschließend geladen und danach abgespielt.
Youtube Videos ab jetzt direkt anzeigen
Es gab also ein Problem wenn die Karte runter takten soll.
Mit dem Tool ThermSpy konnte ich die Karte in ein PowerState zwingen, wobei der P0 State der Hochleistungs-Modus ist wo die Karte mit Maximalen Takt läuft, und P5 der Energiespar-State wo sie am niedrigsten taktet. Ich fand heraus, dass die Karte in allen P-States Stabil lief, außer dem P3 State, da gab es sofort den BlackScreen .
Also geschaut, wie die Speichertaktraten der einzelnen P-States sind, das ganze geht mittels Command (geht sobald der nVidia Treiber installiert ist):
C:\Windows\System32>nvidia-smi --query-supported-clocks mem
memory [MHz]
7001 MHz
6801 MHz
5001 MHz
810 MHz
405 MHz
wobei P4 und P5 den gleichen niedrigen Speichertakt haben, nur dass beim P5 die GPU noch weiter runter taktet.
Der Blackscreen kam also, wenn der Speicher auf 5000Mhz runter taktete (bzw. 1250Mhz x 4)
Also dachte ich mir gut – fixier ich den Speichertakt halt einfach dass zumindest der Speicher immer mit maximalen Speichertakt lief, auch mittels Befehl:
C:\Windows\System32>nvidia-smi --lock-memory-clocks=7001
Und startete den Befehl bei Systemstart über den Aufgabenplaner. Damit lief die Karte endlich Stabil
Durch diesen Trick zieht die Karte im Idle aber 47W statt 33W wenn auch der Speicher ganz runter takten kann. 6801Mhz änderte kaum was, glaube 46,5W waren es dann
Aber: Schnell merkte ich, dass irgendwas noch nicht mit der Performance der Karte stimmte – sie war 10-15% Langsamer, als vergleichbare RTX3070 Karten, obwohl die Stromaufnahme und auch der Takt stimme :-/
Ich versuchte es mit übertakten, was die Karte etwas schneller machte, aber immer noch 10-15% langsamer war, also eben ähnlich stark übertaktete 3070er Karten.
Ich hab den memory clock lock wieder raus genommen, damit lief die Karte wieder instabil – aber die Performance Stimmte auf einmal wieder wenn ich es mal bis zu einem Benchmark schaffte.
Das ist schon das erste interessante – warum die Karte so deutlich langsamer war, obwohl doch der gleiche Stromverbrauch und Speichertakt anlag. Ich weiß es nicht warum es so war, aber so nützte mir das ganze nichts.
Da die Karte auch mit der 8GB Strap-Konfiguration lief, habe ich mir einen kleinen Schalter dran gebaut, der die beiden Strap-Widerstände welche auf HighLevel gelegt werden mussten, auf Masse zieht wenn man es will. Damit kann ich also zwischen der 8GB und 16GB Strap-Konfiguration umschalten (natürlich muss die Karte dazu einmal Ausgeschaltet werden damit sie sich neu initialisiert und die Strap-Konfiguration einliest)

Ein intensiver Test im 8GB Modus zeigt – die Karte lief Stabil, also liegt es nicht an den Speicherchips, sondern muss etwas mit den Timings im Bios zu tun haben.
Dies wiederum brachte mich dazu, mir das BIOS mal genauer anzuschauen, mittels ImHex Editor.
Und mithilfe des durch den User „StViolenceDay“ im Techpowerup-Forum entwickelten Pattern-File, um das ganze besser Visuell darzustellen (Quelle: https://www.techpowerup.com/forums/...nsource-pattern-for-imhex.322299/post-5611841)
Interessanterweise fand ich so schnell heraus, dass es noch mehr Strap-Konfigurationen im Bios gab, als in dem Servicedokument

Strap Konfig 9 z.B. ist auch für 16Gb Samsung Chips, die 9 ist Binär die 1001. In einem Servicedokument zu einer RTX2080TI war die Strap-Liste etwas weiter worin beschrieben ist, wie die Widerstände da angepasst werden müssen.

Dies habe ich auch getestet, aber damit startete die Karte gar nicht erst.
Also weiter mit den zuvor gesetzten Strap Konfig 6 und im Bios geschaut was da anders ist. Bei einigen Taktstufen sind beim Strap6 die Speicher-Timings anders als beim Originalen Strap0. Im Vergleich zu einer RTX3060-12GB waren die 16GB Timings im RTX3070 Bios hier und da anders.
Das erklärte, warum bei bestimmten Taktraten die Karte instabil lief.
Nvidia hatte hier scheinbar nicht weiterentwickelt und die Karte nie Stabil gemacht.
Übrigens – auch in allen anderen RTX3070 Bios Versionen der anderen Hersteller ist exakt die selbe Strap-Konfiguration mit den gleichen Speichertimings hinterlegt – ich vermute mal, dass die Hersteller sich an die nVidia vorgaben halten müssen und nur hier und da etwas am Takt ändern dürfen und ihr Namen ins Bios schreiben dürfen.
Heutzutage darf ja auch kein Hersteller mehr von sich aus die Doppelte Speichermenge verbauen wie es früher mal war.
Tja, aber die Information dass die Timings anders waren bzw. noch falsch waren, brachte mir effektiv auch nichts weiter, da man seit Pascal das Bios nicht mehr in der Richtung bearbeiten kann, weil dann die Signatur des Bios Files nicht mehr stimmt, und der die nVidia Falcon Engine in der GPU den Start der Karte abbricht
Auch ein manuelles Flashen via SPI Flasher brache nix. Hier ein Bild vom Arbeitsplatz wo schon etwas Verzweiflung aufkam

Auch ein anheben oder absenken der GPU oder Speicherspannung (jeweils +0,1V) - was ich ebenfalls testweise in Hardware machte über in Spindel-Trimmer an den VrefIn Pins der jeweiligen PWM Controller - änderte leider nichts.
Also ging es weiter auf die Suche, wie ich die Karte auf Maximaltakt halten kann. Auf Hardware-Ebene geht das leider auch nicht, weil die Logik-Einheit in der GPU den Takt des Speichers vorgibt.
Ich fand dann noch ein Registry Wert, der die Dynamische P-State Wahl deaktivierte, aber der Wert muss je nach System und eventuell vorher installierter Grafikkarten woanders eingeschrieben werden. Basis-Schlüssel ist der: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}
darin gibt es unterordner wie 0000 oder 0001 oder auch 0020.
Und in dem Unterschlüssel wo in der DriverDesc etwas mit RTX 3070 steht, muss man den Reg_DWORD „DisableDynamicPstate“ einschreiben und auf 1 setzen.
Ich habe dazu ein kleines Script erstellt welches automatisch alle Unterschlüssel sucht wo 3070 drin steht und da den entsprechenden Eintrag einschreibt.
[Script im Anhang]
Damit wird läuft die Karte immer im P0 State – ich denke mal das sollte eigentlich auch die Einstellung „Maximale Performance“ im Nvidia Treiber machen – aber gefühlt macht diese einstellung im Treiber rein gar nix.
Der Registry Eintrag macht aber schon etwas – die Karte läuft endlich Stabil mit den 16GB
Leider aber verbraucht die Karte damit auch gut 70W im Idle. Aber ein Helden tot muss man wohl sterben wenn man solch ein Schändlich Werk macht
Da die Karte jetzt endlich lief, wollte ich aber noch etwas extra-Performance aus ihr herauskitzeln, und machte noch kurzerhand ein Shunt-Mod. Auf beide PCIe Eingangsseitige Shunts habe ich huckepack die gleiche Shunt-Widerstandsgröße noch einmal aufgelötet, damit sieht die Karte also recht genau die Hälfte des Stroms, PCIe Slot Seitig wollte ich das aber nicht machen, weil sie sonst deutlich mehr Strom aus dem Slot ziehen würde was dem Mainboard sicherlich nicht gefiel. Also habe ich in den Servicedokument etwas rumgeschaut und gesehen, wie ich die PowerStage Mosfets um brücken konnte, dass Sie ihren Strom nicht über den PCIe Slot ziehen, sondern über den 8 Pin Stromanschluss – der ja eh nur die hälfet des Stroms sieht durch den ShuntMod. Damit hingen am ende nur noch die Nebenspannungen am PCIe Slot was ihn mit rund 33W belastete.
Die Karte konnte jetzt unter Furmark bis zu 370W ziehen – wird also nicht mehr Power-Limitieret. Die Mosfets auf der Karte sind rechnerisch bis rund 450W zugelassen.

Btw. Im GPUz Screenshot da oben hatte ich noch einfache Wärmeleitpaste verwendet und den Kühler schon zichmal neu aufgesetzt ohne die WLP zu wechseln – jetzt ist sie Final zusammengebaut mit guter neuer Wärmeleitpaste, und auch die Speicher und Mosfets haben jetzt gutes Halnziye HY2610 Thermal Putty spendiert bekommen (Performt wie TG Putty Pro). Die Karte läuft also final etwas Kühler als im GPUz Screenshot zu sehen.

Ich konnte jetzt also „in ruhe“ Testen ohne dass etwas abstürzt, und auch mit dem Übertakten rumprobieren wie es zwischen der 8GB und 16GB Konfiguration ausschaute.
Und Tatsächlich: Die GPU konnte ich mit beiden Speichervarianten um 170Mhz übertakten, der Speicher kann im 8GB Modus um 1100Mhz übertaktet werden, aber im 16GB Modus direkt um 2000Mhz übertaktet werden!
Zusätzlich bemerkte ich, dass die Karte im 8GB Modus @ DefaultTakt minimal schneller war, also im 16GB Modus @ Default Takt.
Das bestätigt umso mehr, dass die Timings im BIOS für die 16GB Konfiguration nicht final sind, und Nvidia das hat einfach so stehen lassen im Bios.
Hier die Benchmarks im 8GB Modus
einmal mit Default-Takt:

und übertaktet:

und jetzt nochmal im 16GB Modus
auch einmal mit Default-Takt:

und übertaktet:

wie man sieht, ist sie hier durch den deutlich höheren Takt trotz etwas schlechteren Timings etwas schneller als wenn es eine übertaktete 8GB Karte wäre
Für mich was es ein Spannendes, aber auch sehr nerven raubendes Projekt, da ich gehofft habe, das Stabilitätsproblem irgendwie anders lösen zu können. Aber das haben große Modder wie Vik-On auch schon versucht.
Wieder ein „Prototyp“ mehr, der mit dem 8GB/16GB Schalter sicherlich noch ein bisschen mehr ermöglicht beim rumprobieren in zukünftigen Spielen
Ich sollte aber vielleicht auch Roman-Schreiber werden 😆
Diesmal ging es mir darum, eine RTX 3070 mit 16GB Videospeicher genauer zu analysieren.
Als Basis diente eine Gigabyte RTX3070 Gaming OC welche ja wie jede andere RTX3070 nur 8GB gDDR6 Speicher hat, genauer gesagt waren 8 St. Samsung K4Z80325BC-HC14 verbaut.
Da ich noch eine alte AMD RX6800 rumliegen hatte wo – wie bei den meisten defekten RX6800/6900 der Core defekt war – der Speicher zum Glück noch heile war. Verbaut war auf der RX6800 Chips von Samsung, die K4ZAF325BM-HC16, davon 8 Stück – in Summe also 16GB.
Das HC14 oder HC16 gibt die Speichergeschwindigkeit an, also 14Gbps (1750Mhz) und HC16 sind demzufolge für 16Gbps Spezifiziert (2000Mhz), gibt auch langsamere oder noch schnellere.
Da ich schon das ein oder andere gelötet habe, habe ich schon etwas Erfahrung würde ich vorsichtig behaupten wollen und ein bisschen Equipment habe ich auch da. Also kurzerhand die Speicher beider Karten runter genommen und neu reballed. Da ich knausrig bin, habe ich über Aliexpress nur ein 6-fach gDDR6 Stencil gekauft – ohne die Halterung dazu. Diese habe ich mir mit etwas ausmessen selber konstruiert und 3D gedruckt. Und passte sogar direkt beim 1. Versuch


Speicherchips also vorher entzinnt, gereinigt und hauchdünn Flussmittel aufgetragen und die 0,45mm Lötkugeln über das Stencil verteilt. Damit liegen die Lötkugeln auf den Lötaugen der RamChips und werden nur durch das Flussmittel an ort und stelle gehalten wenn man die RamChips aus der Halterung nimmt. Anschließend die RamChips auf eine Heizplatte auf rund 190°C erhitzt sodass die bleihaltigen Aliexpress Lötkugeln schmelzen und eine Verbindung mit den Lötkugeln eingehen. Aufs PCB auflöten geht ähnlich, also mit Unterhitze und Heißluft - eigentlich gar nicht so schwer das ganze.

Durch meine Knausrigkeit war natürlich die Grafikkarte vorher auch defekt, weil der Vorbesitzer wie auch immer einige SMD Widerstände und Keramik-Kondensatoren auf der Rückseite incl. der Lötaugen weggerissen hat – dafür war die Karte für mich günstig in der Anschaffung

War aber keine große Sache und konnte ich schnell reparieren.

Natürlich hatte ich die Karte vorher mit ihren 8GB getestet bevor ich den umbau gemacht habe ;-)
Nach dem Speicherumbau habe ich die Karte ebenfalls nocheinmal getestet um zu schauen ob Bild kommt, und ob die Speicher ohne Fehler liefen – MATS Test (spezielles nVidia Test-Tool) lief fehlerfrei durch. Die Karte wurde noch mit 8GB erkannt, da es nicht damit getan ist, nur die Speicher zu tauschen.
Zum glück gibt es zu der Gigabyte Karte ein paar geleakte Servicedokumente, worin auch beschrieben ist, welche Widerstände man wie ändern muss, damit die Karte auch mit anderem Speicher läuft, wie Hynix, Micron oder Samsung Ram, aber auch 16Gb Samsung Speicher (also 2 GB Chips) – nVidia hatte scheinbar intern experimentiert mit 16GB Ausstattung, aber das ganze nicht umgesetzt. Die sogenannte Strap-Konfiguration wird beim Start der GPU ausgelesen und somit die entsprechende Timing-Tabelle im Grafikkarten-Bios ausgewählt.

Also Strap-Widerstände auf der Karte um gelötet und nochmal getestet. Karte liefert Bild, aber sobald der Treiber geladen wurde, war sie sehr instabil. Wenn sie einmal hoch getaktet hat und dann wieder in den Idle-State wechseln soll, gab es ein Blackscreen oder eine vollflächige Farbe wie Rot, Grün oder Blau.
Davon hatte ich schon gelesen im Netz von anderen Moddern, die ebenfalls so ein Mod durchgeführt haben, bei ihnen hatte es aber geholfen im nVidia Treiber bei der Energieverwaltung auf Maximale Performance umzustellen. Leider half das bei mir nicht. Mir ist aufgefallen, dass unter 4K Auflösung die Karte deutlich instabiler lief, also bei FullHD. Aber dennoch gab’s auch dabei öfter mal ein GreenScreen oder BlackScreen. Dann ging die suche los, wie man das Ding Stabil bekommt, also erst einmal raus finden wann die Karte Stabiler oder instabiler lief. Ich konnte problemlos ein Benchmark laufen lassen wenn es bis dahin kein Blackscreen gab. Unter Last also lief die Karte problemlos, auch 1h Furmark war kein Problem. Aber sobald man das Bench-Programm geschlossen hat, gab’s ein Crash. Auch Speicher Übertakten oder stark Untertakten änderte rein gar nichts.
Datenschutzhinweis für Youtube
An dieser Stelle möchten wir Ihnen ein Youtube-Video zeigen. Ihre Daten zu schützen, liegt uns aber am Herzen: Youtube setzt durch das Einbinden und Abspielen Cookies auf ihrem Rechner, mit welchen sie eventuell getracked werden können. Wenn Sie dies zulassen möchten, klicken Sie einfach auf den Play-Button. Das Video wird anschließend geladen und danach abgespielt.
Youtube Videos ab jetzt direkt anzeigen
Es gab also ein Problem wenn die Karte runter takten soll.
Mit dem Tool ThermSpy konnte ich die Karte in ein PowerState zwingen, wobei der P0 State der Hochleistungs-Modus ist wo die Karte mit Maximalen Takt läuft, und P5 der Energiespar-State wo sie am niedrigsten taktet. Ich fand heraus, dass die Karte in allen P-States Stabil lief, außer dem P3 State, da gab es sofort den BlackScreen .
Also geschaut, wie die Speichertaktraten der einzelnen P-States sind, das ganze geht mittels Command (geht sobald der nVidia Treiber installiert ist):
C:\Windows\System32>nvidia-smi --query-supported-clocks mem
memory [MHz]
7001 MHz
6801 MHz
5001 MHz
810 MHz
405 MHz
wobei P4 und P5 den gleichen niedrigen Speichertakt haben, nur dass beim P5 die GPU noch weiter runter taktet.
Der Blackscreen kam also, wenn der Speicher auf 5000Mhz runter taktete (bzw. 1250Mhz x 4)
Also dachte ich mir gut – fixier ich den Speichertakt halt einfach dass zumindest der Speicher immer mit maximalen Speichertakt lief, auch mittels Befehl:
C:\Windows\System32>nvidia-smi --lock-memory-clocks=7001
Und startete den Befehl bei Systemstart über den Aufgabenplaner. Damit lief die Karte endlich Stabil

Durch diesen Trick zieht die Karte im Idle aber 47W statt 33W wenn auch der Speicher ganz runter takten kann. 6801Mhz änderte kaum was, glaube 46,5W waren es dann
Aber: Schnell merkte ich, dass irgendwas noch nicht mit der Performance der Karte stimmte – sie war 10-15% Langsamer, als vergleichbare RTX3070 Karten, obwohl die Stromaufnahme und auch der Takt stimme :-/
Ich versuchte es mit übertakten, was die Karte etwas schneller machte, aber immer noch 10-15% langsamer war, also eben ähnlich stark übertaktete 3070er Karten.
Ich hab den memory clock lock wieder raus genommen, damit lief die Karte wieder instabil – aber die Performance Stimmte auf einmal wieder wenn ich es mal bis zu einem Benchmark schaffte.
Das ist schon das erste interessante – warum die Karte so deutlich langsamer war, obwohl doch der gleiche Stromverbrauch und Speichertakt anlag. Ich weiß es nicht warum es so war, aber so nützte mir das ganze nichts.
Da die Karte auch mit der 8GB Strap-Konfiguration lief, habe ich mir einen kleinen Schalter dran gebaut, der die beiden Strap-Widerstände welche auf HighLevel gelegt werden mussten, auf Masse zieht wenn man es will. Damit kann ich also zwischen der 8GB und 16GB Strap-Konfiguration umschalten (natürlich muss die Karte dazu einmal Ausgeschaltet werden damit sie sich neu initialisiert und die Strap-Konfiguration einliest)

Ein intensiver Test im 8GB Modus zeigt – die Karte lief Stabil, also liegt es nicht an den Speicherchips, sondern muss etwas mit den Timings im Bios zu tun haben.
Dies wiederum brachte mich dazu, mir das BIOS mal genauer anzuschauen, mittels ImHex Editor.
Und mithilfe des durch den User „StViolenceDay“ im Techpowerup-Forum entwickelten Pattern-File, um das ganze besser Visuell darzustellen (Quelle: https://www.techpowerup.com/forums/...nsource-pattern-for-imhex.322299/post-5611841)
Interessanterweise fand ich so schnell heraus, dass es noch mehr Strap-Konfigurationen im Bios gab, als in dem Servicedokument

Strap Konfig 9 z.B. ist auch für 16Gb Samsung Chips, die 9 ist Binär die 1001. In einem Servicedokument zu einer RTX2080TI war die Strap-Liste etwas weiter worin beschrieben ist, wie die Widerstände da angepasst werden müssen.

Dies habe ich auch getestet, aber damit startete die Karte gar nicht erst.
Also weiter mit den zuvor gesetzten Strap Konfig 6 und im Bios geschaut was da anders ist. Bei einigen Taktstufen sind beim Strap6 die Speicher-Timings anders als beim Originalen Strap0. Im Vergleich zu einer RTX3060-12GB waren die 16GB Timings im RTX3070 Bios hier und da anders.
Das erklärte, warum bei bestimmten Taktraten die Karte instabil lief.
Nvidia hatte hier scheinbar nicht weiterentwickelt und die Karte nie Stabil gemacht.
Übrigens – auch in allen anderen RTX3070 Bios Versionen der anderen Hersteller ist exakt die selbe Strap-Konfiguration mit den gleichen Speichertimings hinterlegt – ich vermute mal, dass die Hersteller sich an die nVidia vorgaben halten müssen und nur hier und da etwas am Takt ändern dürfen und ihr Namen ins Bios schreiben dürfen.
Heutzutage darf ja auch kein Hersteller mehr von sich aus die Doppelte Speichermenge verbauen wie es früher mal war.
Tja, aber die Information dass die Timings anders waren bzw. noch falsch waren, brachte mir effektiv auch nichts weiter, da man seit Pascal das Bios nicht mehr in der Richtung bearbeiten kann, weil dann die Signatur des Bios Files nicht mehr stimmt, und der die nVidia Falcon Engine in der GPU den Start der Karte abbricht
Auch ein manuelles Flashen via SPI Flasher brache nix. Hier ein Bild vom Arbeitsplatz wo schon etwas Verzweiflung aufkam
Auch ein anheben oder absenken der GPU oder Speicherspannung (jeweils +0,1V) - was ich ebenfalls testweise in Hardware machte über in Spindel-Trimmer an den VrefIn Pins der jeweiligen PWM Controller - änderte leider nichts.
Also ging es weiter auf die Suche, wie ich die Karte auf Maximaltakt halten kann. Auf Hardware-Ebene geht das leider auch nicht, weil die Logik-Einheit in der GPU den Takt des Speichers vorgibt.
Ich fand dann noch ein Registry Wert, der die Dynamische P-State Wahl deaktivierte, aber der Wert muss je nach System und eventuell vorher installierter Grafikkarten woanders eingeschrieben werden. Basis-Schlüssel ist der: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4d36e968-e325-11ce-bfc1-08002be10318}
darin gibt es unterordner wie 0000 oder 0001 oder auch 0020.
Und in dem Unterschlüssel wo in der DriverDesc etwas mit RTX 3070 steht, muss man den Reg_DWORD „DisableDynamicPstate“ einschreiben und auf 1 setzen.
Ich habe dazu ein kleines Script erstellt welches automatisch alle Unterschlüssel sucht wo 3070 drin steht und da den entsprechenden Eintrag einschreibt.
[Script im Anhang]
Damit wird läuft die Karte immer im P0 State – ich denke mal das sollte eigentlich auch die Einstellung „Maximale Performance“ im Nvidia Treiber machen – aber gefühlt macht diese einstellung im Treiber rein gar nix.
Der Registry Eintrag macht aber schon etwas – die Karte läuft endlich Stabil mit den 16GB

Leider aber verbraucht die Karte damit auch gut 70W im Idle. Aber ein Helden tot muss man wohl sterben wenn man solch ein Schändlich Werk macht

Da die Karte jetzt endlich lief, wollte ich aber noch etwas extra-Performance aus ihr herauskitzeln, und machte noch kurzerhand ein Shunt-Mod. Auf beide PCIe Eingangsseitige Shunts habe ich huckepack die gleiche Shunt-Widerstandsgröße noch einmal aufgelötet, damit sieht die Karte also recht genau die Hälfte des Stroms, PCIe Slot Seitig wollte ich das aber nicht machen, weil sie sonst deutlich mehr Strom aus dem Slot ziehen würde was dem Mainboard sicherlich nicht gefiel. Also habe ich in den Servicedokument etwas rumgeschaut und gesehen, wie ich die PowerStage Mosfets um brücken konnte, dass Sie ihren Strom nicht über den PCIe Slot ziehen, sondern über den 8 Pin Stromanschluss – der ja eh nur die hälfet des Stroms sieht durch den ShuntMod. Damit hingen am ende nur noch die Nebenspannungen am PCIe Slot was ihn mit rund 33W belastete.
Die Karte konnte jetzt unter Furmark bis zu 370W ziehen – wird also nicht mehr Power-Limitieret. Die Mosfets auf der Karte sind rechnerisch bis rund 450W zugelassen.

Btw. Im GPUz Screenshot da oben hatte ich noch einfache Wärmeleitpaste verwendet und den Kühler schon zichmal neu aufgesetzt ohne die WLP zu wechseln – jetzt ist sie Final zusammengebaut mit guter neuer Wärmeleitpaste, und auch die Speicher und Mosfets haben jetzt gutes Halnziye HY2610 Thermal Putty spendiert bekommen (Performt wie TG Putty Pro). Die Karte läuft also final etwas Kühler als im GPUz Screenshot zu sehen.

Ich konnte jetzt also „in ruhe“ Testen ohne dass etwas abstürzt, und auch mit dem Übertakten rumprobieren wie es zwischen der 8GB und 16GB Konfiguration ausschaute.
Und Tatsächlich: Die GPU konnte ich mit beiden Speichervarianten um 170Mhz übertakten, der Speicher kann im 8GB Modus um 1100Mhz übertaktet werden, aber im 16GB Modus direkt um 2000Mhz übertaktet werden!
Zusätzlich bemerkte ich, dass die Karte im 8GB Modus @ DefaultTakt minimal schneller war, also im 16GB Modus @ Default Takt.
Das bestätigt umso mehr, dass die Timings im BIOS für die 16GB Konfiguration nicht final sind, und Nvidia das hat einfach so stehen lassen im Bios.
Hier die Benchmarks im 8GB Modus
einmal mit Default-Takt:

und übertaktet:

und jetzt nochmal im 16GB Modus
auch einmal mit Default-Takt:

und übertaktet:

wie man sieht, ist sie hier durch den deutlich höheren Takt trotz etwas schlechteren Timings etwas schneller als wenn es eine übertaktete 8GB Karte wäre

Für mich was es ein Spannendes, aber auch sehr nerven raubendes Projekt, da ich gehofft habe, das Stabilitätsproblem irgendwie anders lösen zu können. Aber das haben große Modder wie Vik-On auch schon versucht.
Wieder ein „Prototyp“ mehr, der mit dem 8GB/16GB Schalter sicherlich noch ein bisschen mehr ermöglicht beim rumprobieren in zukünftigen Spielen

Ich sollte aber vielleicht auch Roman-Schreiber werden 😆

Anhänge
Zuletzt bearbeitet: