Le ROM con programmi deodici sono più veloci o più lente di quelle con odex?


8

Sono un po 'confuso dall'effetto del deodexing (o anche dalla terminologia).

Sulla base delle risposte a " Qual è la differenza tra rom odexed e deodexed? ":

Una ROM "deodexed" è una ROM in cui i file .odex sono stati più o meno riuniti in .apk

Questo sembra implicare che la ROM "deodexed" è una ROM odex (quindi precompilata / ottimizzata) in cui il pacchetto .apk contiene le cose .odex invece che essere in un file separato.

Tuttavia, la stessa risposta ha una citazione apparentemente opposta:

Le ROM sono in genere rilasciate in forma deodexed perché possono essere tematiche e modificate abbastanza facilmente, mentre il tema / modifica di una ROM odex è sostanzialmente impossibile (nella migliore delle ipotesi le cose andrebbero in crash come un matto). Alcune persone scelgono anche di rilasciare le loro ROM in versioni odex per le persone che preferiscono i miglioramenti delle prestazioni.

Questa seconda citazione sembra implicare che la ROM deodistrata NON abbia i guadagni in termini di prestazioni della ROM odexata (basata sull'ultima frase) - Sto indovinando perché rimuove completamente le informazioni .odex per motivi di portabilità / tema; mentre la prima citazione sembra dire che la ROM deodistrata è ottimizzata quanto quella odexata, ma confezionata diversamente.

Quale di questi significati è corretto? Cosa mi sto perdendo?

Esempio:

  • Fission Vanilla: "La ROM ha root ed è stata deodistrata e zip allineata"

Risposte:


8

Le ROM deodex non hanno i file .odex integrati nei .apk, ma vengono rimosse. Ciò che eldareath ha significato nella sua risposta all'altra domanda è che la dipendenza dei .apk dai file .odex è stata rimossa; alcune informazioni vengono nuovamente integrate in .apk, ma non nel file .odex vero e proprio. Questa pagina contiene alcuni dettagli tecnici.

Le ROM deodistrate possono essere leggermente più lente a causa di ciò; tuttavia credo che, poiché la cache di Dalvik è stata creata utilizzando la ROM, il divario di prestazioni è ridotto al minimo.


Grazie! Saresti in grado di elaborare il pezzo "Il divario di prestazione è ridotto al minimo"? Ciò significa che il divario viene eliminato completamente per qualsiasi .apk dopo il primo utilizzo (e mimato si applica a "non ogni .apk ha una cache costruita contemporaneamente), o significa che per una data .apk, la versione odexed sarebbe comunque essere più veloce del deodexed anche dopo la costruzione della cacge?
DVK

@DVK In generale, penso che il .odex sarebbe ancora più veloce, ma avere file .dex memorizzati nella cache elimina la necessità di tradurre tutto il .apk ad ogni avvio. Penso che il sovraccarico sia probabilmente molto più significativo delle ottimizzazioni, nella maggior parte dei casi.
Matteo Leggi il

2
@DVK: vedo che non era chiaro nella mia risposta precedente, quindi sono tornato indietro e ho cercato di chiarire un po '. Grazie per la segnalazione. Riguardo a questa domanda, tutto ciò che Matthew ha detto nella sua risposta è assolutamente corretto.
eldarerathis,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.