Pianetatech


Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Android Pro L'avatar di Lucky76
    Registrato dal
    Jan 2011
    Sesso
    Uomo
    Dispositivo
    Vodafone SmartLucky
    Operatore
    Vodafone
    Città
    Italy
    Messaggi
    508
    Grazie!
    12
    Ringraziato 138 volte in 90 post

    Governor ---> Quali sono e loro Utilizzo

    I Governors ci permettono di modificare la resa del processore in base alle proprie esigenze andando a modificare la frequenza minima e quella massima di lavoro della CPU.

    Il Governor è un driver presente nel kernel che ci permette di regolare la frequenza minima e massima della CPU e il tempo necessario ad essa per raggiungere il massimo o il minimo valore di frequenza di clock.

    Ho cercato di riunire in questo post il maggior numero di governor con le loro descrizioni che ho trovato in giro per la rete. A fine post ho aggiunto anche gli I/O Scheduler.

    Alcuni di questi Governor non li troverete nella mia ultima custom rom v0.5 ma ho intenzione di aggiungerli nei miei prossimi kernel.


    Ci sono vari tipi di Governor e i più usati nei vari kernel ricompilati sono:

    Ondemand
    Powersave
    Userspace
    Conservative
    Performance
    Interactive
    InteractiveX
    Smartass

    SmartassV2
    Smoothass
    BrazilianWax
    SavagedZen
    Minmax
    Scary
    Lulzactive
    Lazy
    Lagfree
    Ondemandx
    Intellidemand
    Lionheart
    lightassV2



    Brevi Descrizioni dei vari Governor trovati con Google:

    Ondemand:
    Ondemand è la scelta predefinita, impostazioni equilibrate che offrono un buon compromesso: durata della batteria e prestazioni. Tuttavia non ha profili di sospensione e a volte (raramente) vi è un calo di prestazioni negli smartphone. Il governor più equilibrato, offre un buon compromesso tra la batteria e le prestazioni. Quando la CPU è sollecitata, aumenta rapidamente le frequenze per poi ridurle lentamente quando non è più necessario.

    Powersave:
    Con Powersave viene impostata sia la frequenza massima che quella minima al minimo valore possibile. Ovviamente non è consigliato per l’uso quotidiano in quanto la minima frequenza viene settata a pochi MHZ (128-256 MHz) e dunque non riusciremmo praticamente a fare nulla. Quindi imposta la frequenza massima rendendola uguale a quella minima.


    Userspace:
    Userspace consente di impostare manualmente le frequenze. E’ quello con cui si può personalizzare a proprio piacimento la frequenza minima e massima di lavoro.

    Conservative:
    Conservative è come Ondemand, ovvero setta una frequenza minima ed una massima oltre che ad un tempo in cui raggiungere tali limiti. L’unica differenza è che Conservative raggiunge il limite in un tempo doppio rispetto ad Ondemand essendo di tipo a rampa meno pendente. Il vantaggio però si ripercuote nella durata della batteria. Infatti più pendente è la rampa (ovvero più veloce, tendente verso l’alto) più si avrà un consumo di batteria.

    Performance:
    Come Powersave solo che imposta la massima frequenza di clock sia per frequenza minima che per quella massima di lavoro della CPU. Ovviamente non è indicato per l’utilizzo quotidiano in quanto la batteria non riuscirebbe a durare nemmeno per poche ore.

    Interactive:
    Come abbiamo detto, Conservative è come Ondemand solo che l’aumento della frequenza avviene più lentamente, dunque con una rampa più lenta rispetto ad esso. Con Interactive invece si ha un tempo di risposta più breve e dunque la frequenza sale con una rampa leggermente più pendente (alta) di Ondemand, rendendo il dispositivo più reattivo a scapito di un piccolo consumo di batteria in più. Interactive è un Ondemand leggermente più veloce: maggiori prestazioni ma al tempo stesso maggiore consumo di batteria.


    InteractiveX:
    Sostanzialmente è un Interactive modificato per dare più vita alla batteria. Le modifiche sono state apportate da imoseyon e provvedono ad una migliore gestione del dispositivo quando esso è in stand-by.

    Smartass:
    Anch’esso è basato su Interactive ma presenta dei miglioramenti sostanziali che lo fanno essere uno dei migliori in assoluto. Da poco compilata anche la versione Smartass V2 da Erasmux. ---> Vedere Sotto

    SmartassV2:
    E’ uno smartass modificato ed è uno dei governor più usati. Questo governor scala verso il basso la cpu molto velocemente mentre lo schermo è spento, e scala rapidamente verso l’alto fino a 500 mhz quando lo schermo si accende. Non c'è un limite superiore per la frequenza mentre lo schermo è spento. Questo governor mira a una "frequenza ideale", per cui scala in maniera più aggressiva nei confronti di questa frequenza e in maniera meno aggressiva dopo. Esso utilizza diverse frequenze ideali per lo schermo acceso e per lo schermo spento, che sono awake_ideal_freq e sleep_ideal_freq, garantendo così un equilibrio tra prestazioni e durata batteria.

    Smoothass:
    E’ in pratica uno Smartass ma con una rampa più pendente (alta) dunque più prestazioni subito ma minore batteria.

    BrazilianWax:
    Fondamentalmente si discosta ben poco da Smoothass ed infatti non vi sono differenze di rilievo tra l’uno e l’altro Governor.

    SavagedZen:
    Esso è un kernel che si presenta basato sullo Smartass ma in questo caso non si va a penalizzare nulla, ovvero garantisce migliori prestazioni con un minor consumo di batteria. Quindi sia buone prestazioni che un consumo non eccessivo della batteria.

    Minmax:
    Questo kernel risulta essere uno dei migliori. Le prestazioni e la reattività sono molto elevate e rende l’utilizzo dei dispositivi molto piacevole. Esso è basato sul kernel Conservative.

    Scary:
    Basato sul Conservative che, come abbiamo detto prima, ha una rampa più lenta di Ondemand, ma poi ha in sè alcuni elementi di Smartass che gli fanno avere una rampa velocissima.

    Lulzactive:
    Basato sui governor interactive e smartass, tende ad essere il governor preferito da molti. Quando il carico di lavoro è maggiore o uguale al 60%, fa salire le frequenze della cpu immediatamente allo step successivo. Quando il carico di lavoro è inferiore al 60%, abbassa immediatamente le frequenze della cpu allo step precedente. Quando lo schermo è spento, la frequenza è bloccata alla frequenza minima.

    Lazy:
    Fondamentalmente un ondemand con il parametro aggiuntivo min_time_state che stabilisce un tempo minimo in cui la cpu permane su una determinata frequenza prima di passare a frequenze più basse o più alte. L’idea è quella di eliminare le instabilità causate dalla rapida commutazione di frequenza di ondemand. Ha anche un parametro screenoff_maxfreq che può essere configurato per specificare la max frequenza mentre lo schermo è spento.

    Lagfree:
    Simile a ondemand. La differenza è l'ottimizzazione che lo rende maggiormente battery friendly. La frequenza diminuisce o aumenta gradatamente, a differenza di ondemand che salta al 100% troppo spesso. Lagfree non salta le frequenze durante lo scaling verso l'alto o verso il basso.

    Ondemandx:
    Fondamentalmente un ondemand con un profilo screen off integrato che lo rende battery friendly. Quando lo schermo è spento, la frequenza massima è di 500 mhz.

    Intellidemand:
    (alias intelligente Ondemand) e un governor che si basa su ondemand e che non salta mai alla massima frequenza quando lo schermo è spento. L’intellidemand originale si comporta in modo diverso in base all'utilizzo della GPU. Quando la GPU è veramente occupato (giochi, mappe, benchmarking, ecc) intellidemand si comporta come ondemand per offrire buone prestazioni. Quando la GPU è a riposo o moderatamente occupata, intellidemand entra in “browsing mode” (modalità di navigazione) e limita la frequenza massima per risparmiare la batteria.

    Lionheart:
    E’ un Conservative pesantemente modificato: ha un’up-threshold bassa (circa 60) e una sampling_rate (frequenza di campionamento) più bassa possibile . Il motto di Lionheart è la reattività estrema, le prestazioni e la scorrevolezza, anche a costo di un maggiore dispendio della batteria.

    lightassV2:Governor ottimale per uno scaling della cpu aggressivo ma che non incide particolarmente sui consumi





    IO scheduler
    L'IO scheduler del kernel è la modalità di gestione degli input\output da parte del kernel.


    IO scheduler:


    • noop ---> di solito assicura la massima fluidità del sistema
    • sio ---> generalmente l'IO scheduler di default
    • bfq ---> idem come sopra
    • deadline ---> buona fluidità del sistema, in genere minore del noop
    • vr ---> simile al noop, ottima fluidità del sistema
    • CFQ --->
    • Anticipatory --->

    Deadline: si prefigge lo scopo di garantire un termine, una scadenza a tutte le richieste in modo da evitare fenomeni indesiderati come lo "starvation" ovvero l'eterna attesa di alcune richieste che si verifica quando uno o più processi di priorità bassa vengono lasciati indefinitamente nella coda dei processi pronti, perchè vi è sempre almeno un processo pronto di priorità più alta.

    V(r): la richiesta successiva viene eseguita in base alla distanza dall'ultima richiesta. In rete girano buoni pareri riguardo questo scheduler.

    No-op: inserisce tutte le richieste in un’unica coda semplicemente in base al loro ordine di arrivo, raggruppando insieme quelle contigue.

    SIO: è lo scheduler più semplice, non fa alcun tipo di ordinamento, si prefigge solo lo scopo di ottenere una bassa latenza, di ridurre cioè il lasso di tempo che intercorre tra l'istante in cui la richiesta è generata e quello in cui la richiesta è soddisfatta.

    CFQ: ordina le richieste dei processi in code distinte per tipologia e assegna a ciascuna coda uno specifico intervallo di tempo la cui durata dipende dalla priorità assegnata ai processi. Può essere considerato l'Ondemand degli scheduler, è infatti lo scheduler più equilibrato, svolgendo il suo compito in maniera onesta.

    BFQ: è basato sul CFQ ma, invece degli intervalli di tempo, assegna una parte della larghezza di banda del disco a ogni processo in esecuzione in modo proporzionale.

    Anticipatory: ordina le richieste in base a criteri predittivi, mette cioè in pausa le richieste per un brevissimo periodo di tempo in previsione che arrivino altre richieste simili in modo da aggregarle.

    Se incontrate altri tipi di Governor riportateli cosi li aggiungerò a questo primo post.

    Bye.
    Ultima modifica di Lucky76; 28-01-2012 a 16: 33
    CyanoLucky V5 Smart & Ideos:
    Qui
    SmartLucky 3.0 AI Smart:
    Qui
    Dronix 0.5 porting Smart:
    Qui
    Lucky Ultra Sonic V 0.8 x Sonic:
    Qui

  2. I seguenti 2 utenti hanno ringraziato Lucky76 per aver trovato utile questo post:

    gheghe (19-01-2012), pablonik79 (10-06-2012)

  3. #2
    Android L'avatar di gheghe
    Registrato dal
    Nov 2011
    Sesso
    Uomo
    Dispositivo
    HUAWEI SONIC U8650-Xperia Play White
    Operatore
    PosteMobile
    Città
    BRIXIA
    Messaggi
    92
    Grazie!
    3
    Ringraziato 14 volte in 13 post
    Grande Luky76complimenti per l'ottima guida sui governor,ci voleva propio.

  4. #3
    Android L'avatar di Aurodroid
    Registrato dal
    Jan 2012
    Sesso
    Uomo
    Dispositivo
    Huawei Ideos X5
    Operatore
    Vodafone
    Città
    Ravenna
    Messaggi
    42
    Grazie!
    4
    Ringraziato 0 volte in 0 post
    Grazie mille! ottima guida!


Discussioni simili

  1. Esiste un'App per sapere quali programmi sono aperti?
    Da Bestia nel forum Samsung Corby Smartphone (i5500)
    Risposte: 12
    Ultimo messaggio: 10-01-2012, 21: 31
  2. Esistono diversi tipi di backup? Se sì quali sono le differenze?
    Da balta nel forum Firmware e Modding (Vodafone Ideos / Huawei Ideos)
    Risposte: 1
    Ultimo messaggio: 04-04-2011, 11: 41
  3. Quali sono i valori SAR del Defy?
    Da 106rallye1300 nel forum Motorola Defy (MB525) / Defy+
    Risposte: 4
    Ultimo messaggio: 03-03-2011, 18: 42
  4. sincronizzazione rubrica.. quali sono le priorità?
    Da dennydenny nel forum Sony Ericsson Xperia X8
    Risposte: 8
    Ultimo messaggio: 18-12-2010, 07: 02
  5. Migliori tool per Android. Quali sono?
    Da ciso nel forum Applicazioni
    Risposte: 3
    Ultimo messaggio: 23-06-2010, 13: 48

Segnalibri

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •