HowTO: jit Enabling --> 20% mehr Speed

Ich habe es am Laufen. Ich werde im Laufe des Tages beobachten wie das Gerät sich verhält. Erster Eindruck: Nichts dramatisches.
 
Ich habe es auch am laufen. Fühlt sich zumindest schneller an, sprich läuft irgendwie smoother, aber mal schauen ob es so bleibt.
 
Tach,

20 % mehr Speed klingt gut.

Kann einer kurz für nen Laien erklären, was da genau passiert bzw. gemacht wird?

Merci...
 
Tach auch,
technisch geht es bei einem jit (just in time compiler) darum, dass der Java- (Byte)Code der ausgeführten Applikationen beim ersten Start vollständig in die nativen Prozessor- Ausführungbefehle übersetzt wird und danach deutlich schneller laufen kann, als wenn für jede Aktion der Java-Bytecode ständig neu umgesetzt werden muss.

Hat bei mir aber lt. Linpack Speedmessung überhaupt keine Verbesserung gebracht.

Scheint sich also für das Milestone nicht zu lohnen, schade ?!
 
Naja aus der Natur von JIT geht hervor, dass man etwas "längere" Laufzeit braucht um den Code entsprechend zu optimieren...
Gruß,
Lado
 
habs mir grad mal draugemacht..mal gucken wies so läuft :)
 
kann jemand mal ne kurze anleitung machen für leute die kein adb haben?

ich hab root drauf und den root explorer
 
Bis jetzt merke ich noch keine Unterschiede - mal weitertesten ;)
 
Ich gehe davon aus, ob 2.0 oder 2.0.1 ist hierbei egal oder?!

Wo bekomm ich die Busybox her?!

Kurze Anleitung für die, die kein Englisch können:

download files here and copy them on the sdcard (i created a folder /sdcard/jit and put the three files in it)
I also made a folder /sdcard/dalbk where I copied the original files of my milestone

abd pull /system/build.prop .

Open in WordPad/Textpad and add as the last line: dalvik.vm.execution-mode=int:jit

SAVE IT, copy/push it on the /sdcard/jit folder

adb shell
su
mount -o remount,rw /dev/mtd/mtdblock6 /system (for europe milestones, 7 for south american)
cp /system/build.prop /sdcard/dalbk/
cp /system/bin/dalvikvm /sdcard/dalbk/
cp /system/lib/libdvm.so /sdcard/dalbk/
cp /system/lib/libnativehelper.so /sdcard/dalbk/
cd /sdcard/jit
cp -f dalvikvm /system/bin/
busybox chmod 755 /system/bin/dalvikvm IMPORTANT
cp -f libdvm.so /system/lib/
cp -f libnativehelper.so /system/lib/
cat build.prop >/system/build.prop
sync
mount -o remount,ro /dev/mtd/mtdblock6 /system (for europe milestones, 7 for south american)
reboot
1. die angegeben Files herunterladen
2. die Files auf die SD Karte des Milestones packen (neuen Ordner anlegen: z.B. /sdcard/jit)
3. Ordner auf SD Karte anlegen: z.B. /sdcard/dalbk <- dorthin kommt das backup
4. "ADB pull /system/build.prop ."ausführen (ADB, siehe hier: https://www.android-hilfe.de/forum/...fuer-motorola-milestone.60/tut-adb.15902.html) <- damit ziehst du Dir die build.prop auf deine lokale Festplatte!
5. Die Datei auf der Festplatte nun öffnen und eine Zeile am Ende hinzufügen: "dalvik.vm.execution-mode=int:jit"
6. Datei speichern und auf die SD Karte in das angelegte JIT Verzeichnis pushen (via adb) oder kopieren (in dem Fall build.prop kopieren nach /sdcard/jit)
7. "ADB shell" ausführen
8. "su" eingeben <- macht dich zum Super User (ROOT) auf deinem Milestone oder besser in der Shell
9. "mount -o remount,rw /dev/mtd/mtdblock6 /system" eingeben ACHTUNG! vorher am besten "mount" eingeben, um zu prüfen, wo /system eingehängt ist
Backup erzeugen
10. "cp /system/build.prop /sdcard/dalbk/" eingeben [ENTER]
11. "cp /system/bin/dalvikvm /sdcard/dalbk/" eingeben [ENTER]
12. "cp /system/lib/libdvm.so /sdcard/dalbk/" eingeben [ENTER]
13. "cp /system/lib/libnativehelper.so /sdcard/dalbk/" eingeben [ENTER]
JIT kopieren/installieren (whatever)
14. "cd /sdcard/jit" eingeben [ENTER]
15. "cp -f dalvikvm /system/bin/" eingeben [ENTER]
16. "busybox chmod 755 /system/bin/dalvikvm" eingeben [ENTER] <- ACHTUNG! Dazu muss busybox installiert sein. Findet man fast überall. Ist meiner Meinung nach ein APK zum installieren.
17. "cp -f libdvm.so /system/lib/" eingeben [ENTER]
18. "cp -f libnativehelper.so /system/lib/" [ENTER]
19. "cat build.prop > /system/build.prop" [ENTER]
20. "sync"
21. "mount -o remount,ro /dev/mtd/mtdblock6 /system" ACHTUNG! siehe Schritt 9!!!!
22. "reboot" eingeben

Nun sollte das Milestone rebooten, fertig.

Alles übersetzt aus dem Forum dort.

Wichtig ist: du brauchst
Root
ADB
BusyBox


Ob nun 2.0 oder 2.0.1 nötig ist, weiss ich jetzt auch nicht. Mir juckts aber in den Fingern ;)
 
  • Danke
Reaktionen: eybee1970
ACHTUNG: Finde das sehr gefährlich, irgendwelche Systemdateien zu ersetzen (wenn ich das in der Anleitung richtig sehe) wenn man kein Recovery hat! Wenn ihr das ausprobieren wollt, packt die Libs in ein eigenes Verzeichnis. Wenn man dann mit export LD_LIBRARY_PATH=<deinpfad> vor eigentlichem Programmaufruf das Verzeichnis setzt, wo die Libs drin sind, kann man solche Programme gefahrenlos ausprobieren ohne das was auf Dauer kaputt gehen kann.
 
Technische Details gibt es hier, direkt von den Adnroid-Entwicklern: Dalvik JIT Compiler - android-platform | Google Groups

Interessant vorallem welchen Weg (trace JIT) die da gehen vs. Java.

Und das ganze ist noch eine frühe test-Implementierung, da geht es weniger um Geschwindigkeit als um debugging.
 
gibt es eigentlich eine möglichkeit, zu testen, ob jit wirklich arbeitet ?

okay es scheint zu laufen, ich kreig bei linpack nen wert von 5-5,4 ;)
 
Zuletzt bearbeitet von einem Moderator:
benchmark pi ist auch eine gute testmöglichkeit für jit
 
Bin sehr froh, dass ich von allen ersetzten Files ein Backup gemacht hatte.
Hatte heute morgen auf einmal zig automatische Neustarts und mein Milestone konnte sich nur noch über 3G verbinden.
Nach dem zurücksetzen auf den alten Stand läuft wieder alles stabil.
 
kniffo80 schrieb:
Ich gehe davon aus, ob 2.0 oder 2.0.1 ist hierbei egal oder?!

Wo bekomm ich die Busybox her?!

Kurze Anleitung für die, die kein Englisch können:

...

9. "mount -o remount,rw /dev/mtd/mtdblock6 /system" eingeben ACHTUNG! vorher am besten "mount" eingeben, um zu prüfen, wo /system eingehängt ist

also wenn ich richtig geschaut habe, dann ist /system bei mir unter /dev/block/mtdblock6 eingehängt. frage an die cracks hier: kann das wirklich sein und heißt das für mich, dass ich wenn ich jit aktivieren möchte, den pfad aus dem tut bei der eingabe entsprechend anpassen muss (block statt mtd)? Würde nämlich gerne mal versuchen, das im recovery über adb zu machen.
 
Mit v3 von ADB in recovery sagst Du einfach nur "mount /system" weil eine passende fstab erstellt wird.
 
heißt also im klartext, die zeile müsste dann "mount -o remount,rw /system" lauten, korrekt?

weiter unten dann entsprechend "mount -o remount,ro /system" oder?!
 
ja im recovery adb schon.das hat bei mir allerdings nicht funktioniert.hab es dann mit dem adb im normalen modus gemacht.achso bitte meinen post im alldroid thread lesen bezüglich des chmod der anderen dateien!
 

Ähnliche Themen

P
Antworten
10
Aufrufe
1.621
LeoHart
L
A
Antworten
4
Aufrufe
1.774
-FuFu-
-FuFu-
M
  • Mi$chi
Antworten
8
Aufrufe
3.348
Adinoid
Adinoid
Zurück
Oben Unten