CPU/LCD/RAM Tweaker Version 2.0


god_at_hell

Certified Guru
Staff member
Joined
Jan 5, 2004
Messages
1,311
Age
40
Location
Aachen - Germany
Website
Visit site
Auf drängen von Vimacs habe ich mich wiedermal an den Tweaker gesetzt und nicht nur den gewünschten Teiler für den RAM-Takt eingebaut, sondern auch gleich Einstellmöglichkeiten für die RAM-Latenzen.

Bessere Timings bringen einem bei Quake einen Geschwindigkeitsbonus von 4-5% bringt und bei Programmen die den RAM mehr fordern wie GNGeo wird es wohl mehr sein.

Außerdem ist neu:
- komplett neues Menu (im Bios Style :) )
- der CPU-Test ist nun integriert
- eine komplett neue Kommandozeile
- eine Speicherfunktion
- man kann in der Konfigurationsdatei ein Programm angeben, was geladen wird, nachdem die Werte gesetzt wurden

cpu_speed_2.0.png


Ich hoffe das gefällt allen so :) . Nach den Klausuren werde ich noch ein paar Sachen einbauen (falls ich das nicht vergesse).

Meldet euch bitte, wenn euch Bugs auffallen.

Download: CPU / LCD / RAM Tweaker Version 2.0
 
Wow!! Das muss ich doch gleich vor'm schlafengehen noch austesten!!

Wenn sich damit der cpu reset vom gp2x menü umgehen lässt dann ist es das ultimative Tool für diejenigen, die nicht immer komplex(ere) Scripts basteln wollen :)

Das neue Design sieht auch super aus, alle Achtung!

"SunSpire"
 
Ah nun ist es also Final. Ein geiles Tool. Vorallem die RAM Timings haben es mit richtig angetan. Ich nehm jetzt folgende:

CAS 2 -> 2
tRC 8 -> 7
tRAS 16 -> 5
tWR 3 -> 2
tMRD 8 -> 2
tRFC 8 -> 4
tRP 8 -> 2
tRCD 8 -> 2

Time: 57

Vorallem Spiele und Apss, die VIEL RAM lese und schreib Zugriffe haben, profitieren davon. Also alle, die auch viel von Squidges MMU Hack profitieren. :)

ACHTUNG: Die wurden auf einem MK1 getestet. Der MK2 hat anderen RAM, also aufpassen.

@god_at_hell: Warum sollten größere Werte als 257 schneller sein ??!?!
 
Weil die Refresh Periode den RAM mit energetisch auffrischt. hierzu sind allerdings andere Befehle als für Lese und Schreibzugriffe nötig ... ergo kann wärend eines refreshes nichts geschrieben und gelesen werden ... ergo müsste ein längeres Zeitinterval mehr Speed bringen, da der RAM weniger blockiert wird. Bei zu hohen Zeiten verliert der RAM dann allerdings Informationen und es kommt zu Abstürzen.

Da ich aber kein RAM-Experte bin und auch nur alles angelesen habe, kann das auch falsch sein.

Für weitere Informationen: http://www.student.uni-kl.de/~alles/artikel/DRAMs.htm
 
ich glaube in der nächsten version kommen noch mehr rein ... so demo mäßig :). Kann ja mal nen Mandelbrot-Fraktal durchnudeln ... oder die gute alte Julia-Menge. Außerdem habe ich eh noch vor nen simplen 3D Renderer zu basteln ... der kommt dann auch rein :).
Der RAM bekommt nach meiner vorstellung auch noch nen tester, damit man gucken kann, welche settings am meißten bringen. Sequenzielles Schreiben/Lesen und Burst-Mode.

Ach .. ich nehme mir wieder mal zuviel vor. Ich mache nachher eh nur die Hälfte davon. Ein filebrowser ist ja auch weit oben auf der Todo-liste ... und Einstellmöglichkeiten für den DMA-Transfer, was auch nochmal ein paar FPS mehr bringen sollte :D
 
Für die Laien währe es sicher ne Super Sache, wenn das Tool schon optimierte Einstellungen für verschiedene Anwendungen mitbringt. ;)
Wer will sich schon dauernd mit LCD bzw. Ram-Timings usw. befassen?

So. Ich probier das Ding nachher gleich mal aus. Die Vorgängerversion benztzte ich hauptsächlich, um Quake beine zu machen. Funzte auch super.
Fragen:

-Kann ich die alten Overclock Scripts weiterhin mit dem neuen Tool nutzen? Hab die immer mit bei die .gpe-Dateien der Games kopiert, ging prima.
-Wie muss ein Script aussehen, wenn ich den internen mp3-Player des gp2X untertakten will? Weiß nicht genau, wo die ausführbare Datei dafür liegt.

EDIT: Frontbericht:

Also ich hab mal ein Script für Quake gemacht im neuen Outfit ausgehend vom alten Script.
Neu hinzugekommen sind die von god_at_hell für das Game empfohlenen RAM-Timings:
tRC(5), tRAS(5), tWR(2), tMRD(4), tRFC(4), tRP(3), tRCD(3).

Dazu mein OC von 266MHz des alten Scripts...
Leider kam nur Brei. Die Ram-Timings sind wohl nur für den Standard-Takt gedacht da ja meißt CPU Clock<-> RAM Clock.
Ich hab mich an die Readme gehalten wo stand:

"...so you can manipulate the cpu-clock without interfering with your RAM-Clock"
war des ein Schreibfehler, god_at_hell? :wink:
das can sollte sicher ein can't sein. Ich bin nicht kleinlich aber solche Infos sind wichtig in ner Readme. Ich hab mich nen Augenblock zu Tode erschrocken weil der GP2X ganz krumme Sachen auf den Screen brachte. XD Zum Glück wußte ich sofort, woran's lag.

Öh, mit 200MHz ging dann alles anstandslos mit den Speed-Ram-Timings aber ich bleib dann lieber bei 266MHz und den Standardtimings, is allemal fixer (und sicherer! ):lol:

Ach, hier das Quake-Killerscript:
Code:
<i>
</i>#!/bin/sh 

/mnt/sd/cpu_speed.gpe --upll --timing 1 --cpuclk 266 --gamma 1.4 --trc 5 --tras 5 --twr 2 --tmrd 4 --trfc 4 --trp 3 --trcd 3
./quake.gpe 
sync 
cd /usr/gp2x/ 
exec /usr/gp2x/gp2xmenu

Wenn ich mal Lust hab, teste ich, wie weit ich mit den RAM-Timings bei 266 MHz gehen kann.
Aber wie gesagt, da kann jeder mitmachen um die Grenzen auszuloten.
Kommt am Ende allen zu Gute. ^_^
 
das can steht da schon richtig.... bezieht sich aber nur auf die Divider.

Allerdings kann ich den Punkt rausnehmen, da einem der CPU-Divider nichts bringt ... war wohl doch zu müde. Was bleibt ist, dass man mit dem RAM Divider die CPU übertakten kann, ohne den RAM zu übertakten.

Das mit den Timings die ich angegeben habe ist so, dass sie bei mir wunderbar bei 280Mhz laufen, allerdings ist das je nach RAM-Baustein unterschiedlich, da von winzigen, unvermeindlichen Produktionsfehlern wie Kristallanordnung und SChmutzeinschluss abhängt.
Wenn du jetzt noch nen MK2 haben solltest, dann ist dein RAM sogar von einem anderen Hersteller. D.h. ... es musst jeder selbst rausfinden, was die besten einstellungen für ihn sind ... DIE Einstellung für alle wird es wohl nicht geben.

EDIT: OK .. ich habe nen großen Fehler in der Readme gemacht. Die RAM-Settings die ich da reingeschrieben habe kommen noch aus der Testphase und beschreiben die Registersettings und nicht die Zyklenanzahl... D.H. JEDER Wert ist um 1 zu niedrig. Auch ich bekomme nen zerhackten Bildschirm damit. Wie es aussieht gibt es aber auch GPs die damit zurechtkommen.
 
god_at_hell said:
das can steht da schon richtig.... bezieht sich aber nur auf die Divider.

Allerdings kann ich den Punkt rausnehmen, da einem der CPU-Divider nichts bringt ... war wohl doch zu müde. Was bleibt ist, dass man mit dem RAM Divider die CPU übertakten kann, ohne den RAM zu übertakten.

Das mit den Timings die ich angegeben habe ist so, dass sie bei mir wunderbar bei 280Mhz laufen, allerdings ist das je nach RAM-Baustein unterschiedlich, da von winzigen, unvermeindlichen Produktionsfehlern wie Kristallanordnung und SChmutzeinschluss abhängt.
Wenn du jetzt noch nen MK2 haben solltest, dann ist dein RAM sogar von einem anderen Hersteller. D.h. ... es musst jeder selbst rausfinden, was die besten einstellungen für ihn sind ... DIE Einstellung für alle wird es wohl nicht geben.

EDIT: OK .. ich habe nen großen Fehler in der Readme gemacht. Die RAM-Settings die ich da reingeschrieben habe kommen noch aus der Testphase und beschreiben die Registersettings und nicht die Zyklenanzahl... D.H. JEDER Wert ist um 1 zu niedrig. Auch ich bekomme nen zerhackten Bildschirm damit. Wie es aussieht gibt es aber auch GPs die damit zurechtkommen.

Ok, alles klar. Ich hab übrigens nen MK2. ;) Werd mich bei gelegenheit mal langsam an die niedrigsten Timings herantasten, die Standardwerte sind ja recht moderat, da geht sicher noch was.
Ach, sollte man immer alle RAM-Timings setzen (sind ja ettliche )oder reichen einige wenige? Bzw, welche sind die wichtigeren Optionen die auch was bringen? Oder sind die alle ehr im Verband wirkungsvoll?
 
Die wichtigsten ... jedenfall die, die bei PC-RAM immer angegeben werden ... sind: CAS, tRP ,tRCD und tRAS. Da der CAS-Wert eh auf dem minimum liegt bleiben also 3 veränderbare Werte.
Und... nein, du brauchst nicht alle verändern, es kann auch mal nur einer sein :), jedoch wirkt sich jeder Timingwert auf die Geschwindigkeit aus. Am meisten Auswirkungen hat dabei der oben genannte CAS-Wert.

Bei einem User im GP32X Forum scheinen die überzogenen Werte noch nutzbar zu sein und er berichtet von einem 10% Performanceplus in UAE4ALL.

Nochmal ein Link zu weiterführender Literatur (so'n Tweakerguide für PC-RAM): http://www.hardware-mag.de/hardware.php?id=160&page=1
 
So, für alle MK1 User. Hier die ABSOLUTEN Timings. Scheller gehts nichtmehr, ohne den Max Takt des GP2X zu drücken.

CAS 2 -> 2 OK
tRC 8 -> 7 OK
tRAS 16 -> 4 OK
tWR 3 -> 1 OK
tMRD 8 -> 1 OK
tRFC 8 -> 1 OK
tRP 8 -> 2 OK
tRCD 8 -> 2 OK

Refresh Period: 257 -> 507 OK

Ob die auf dem MK2 gehn, weiß ich nit. Und wenn was kaputt geht, ich bin nit schuld.

P.S.
Wenn man eh keine 300 MHz erreichen will/kann, kann man noch tRC auf 6 stellen, das geht bis etwa 266 MHz gut. Ach scheint tRAS auf 3 noch bis ~250 stabil zu sein. Selbes gilt für tRP auf 1.
Aber das lass ich sein, weil 300 MHz mit den Timings oben schneller ist, als 250 MHz mit den Erklärungen in dem P.S. hier.
 
Hm ... je nach RAM-Baustein kann es aber auch MK1 geben, die noch bessere Timings verkraften.

Noch was in eigener Sache:
hab mal versucht noch was am DMA-Burst umzufummeln, aber irgendwie gibt es da keinen Geschwindigkeitsvorteil :( ... alle neuen Sachen die ich also in die nächste Version (nach den Klausuren) einbaue, werden wohl nur das Handling vereinfachen ... ich finde halt nichts mehr, womit man noch was fixer machen kann.

Schreibt mir mal, was ich noch alles einbauen könnte ... ich werde das dann auf die TODO Liste hauen.
 
Mach den DMA Burst mal mit rein. Es gibt sicher auch Verwendung dafür.

Dann war da noch was mit dem SDs, was du machen wolltest, das hab ich aber vergessen.
 
wie genau muss ich die datei installieren, wenn ich die datei starten will und sie auf meinem GP2x suchen will, führt er sie nicht auf! Nur in der files liste steht sie...
 
komiker764 said:
wie genau muss ich die datei installieren, wenn ich die datei starten will und sie auf meinem GP2x suchen will, führt er sie nicht auf! Nur in der files liste steht sie...

Ist's ne GPU Datei, musst Du Utility für hernehmen :)
 
ja, habe ich!

also ich habe auf der leeren SD Card 5 Ordner erstellt die für die einzelnen Funktionen sind und habe sie dementsprechen benannt!

Habe also folgende Ordner erstellt:

-Ebook
-Game
-Movie
-Music
-Photo
-Utilities

Habe die GPE Datei dann einmal im root gespeichert und einmal im Utilities ordner! Wenn ich dann mein GP2X starte und auf Utility/ Tools gehe, zeigt er eine leere seite an!

Was auch schwachsinn ist, ist folgendes: Ich klicke auf video oder sonstwas, danach auf SD-Karte und danach fragt er mich welchen Ordner ich öffnen soll! Diese sind aber gleichnamig mit den Funktionen bennant! Ich müsste also nochmal zusätzlich den Video Ordner auswählen! Ist doch mehr arbeit oder mache ich was falsch`?
 
geht definitiv nicht! Ich habe die datei jetzt im root, in nem Apps ordner, in nem until und in nem util ordner... was nu?
 
komiker764 said:
geht definitiv nicht! Ich habe die datei jetzt im root, in nem Apps ordner, in nem until und in nem util ordner... was nu?

Also, wenn es eine .gpe-Datei ist, ist sie definitiv über "Games" zu sehen - NICHT über "Utility".
Und wenns ne .gpu ist, dann über "Utility" und nicht über "Games".

Und wenn er beides nicht anzeigt, hast Du sie nicht draufkopiert oder umbenannt ,)
 
Back
Top