Perché Unity è un ambiente desktop "lento"?


39

sfondo

Prima di tutto, questa non è una domanda sulle opinioni. Suppongo che stiamo parlando di Unity 3D e su un computer con una buona configurazione grafica. Per "ambiente desktop", presumo la definizione generalmente accettata di cosa significhi un DE.

Ho visto molti confronti e molte persone affermano che Unity è l'ambiente desktop più lento su Ubuntu (rispetto ad altri come Gnome, XFCE, LXDE ecc.). Non so se la gente abbia preso in considerazione o meno KDE.

Domanda

  • Perché Unity è lento rispetto ad altri ambienti desktop? È solo a causa dell'alta grafica utilizzata in Unity o qualcos'altro? (Non so cosa sia nell'unità che rallenta.).
  • Quali modifiche possono essere / vengono apportate a Unity per renderlo più veloce / migliorarne le prestazioni?

Sulla base degli attuali benchmark, non credo che la tua premessa sia corretta.
belacqua,

Penso che questo commento sarebbe stato più utile se fornissi collegamenti a quegli attuali benchmark di cui parli. Va inoltre tenuto presente che questa domanda è stata posta oltre un anno e mezzo fa.
Bharadwaj Srigiriraju l'

Punti di riferimento per la pre-release 13.04 nella risposta di Luis Alvarado. Vedi anche lo stesso sito Phoronix / articoli correlati per quelli più recenti. Il fatto che questa sia ora una domanda più vecchia è esattamente il motivo per cui ho messo il caveat sui parametri "attuali" lì.
Belacqua,

La tua home directory è controllata da NIS? Recentemente ho incontrato Unity molto povera, ma solo per il mio login NIS la cui home directory è su una condivisione di rete. Per un utente locale, le prestazioni sembravano migliori.
Stephen Quan,

Risposte:


41

La risposta dipende in larga misura da 3 fattori principali che contribuiscono alla sensazione di "lento" o meglio, meno FPS:

  • Versione di Ubuntu (aggiornata, non solo lasciata com'era quando è stata rilasciata)
  • Scheda video (Ati, Intel, Nvidia)
  • Versione del driver (proprietario, open source, versione effettiva)

Spiegherò ogni punto:

Versione di Ubuntu

Per la versione di Ubuntu, è noto che l'utilizzo di 11.10 con Unity farà schifo. Letteralmente fai schifo il PC ad aprire anche Gedit o Nautilus nella maggior parte dei casi. Cercare di giocare in OpenGL o tramite Wine con DirectX o OpenGL avrà come risultato un FPS inferiore al normale, anche rispetto a qualsiasi altro DE. Questo cambia drasticamente in 12.04 e poi di nuovo in 12.10 dove il conteggio degli FPS inizia a salire.

Poiché l'ultimo è il 12.10, dovrei menzionare che per alcuni l'utilizzo di 12.10 senza aggiornamenti non risolve diversi problemi chiave che sono stati risolti in Compiz e Unity circa un mese dopo il rilascio. Quindi, qualsiasi utente 12.10 deve eseguire l'aggiornamento per ricevere questi vantaggi. Questo perché le 2 parti più importanti di cui si parla quando vengono in mente le prestazioni di FPS e OpenGL sono Unity e Compiz (Compiz è la più importante quando si tratta di un impatto sulle prestazioni).

I vantaggi e i miglioramenti che entrambi, il progetto Compiz sta ottenendo in tutta la serie 0.9.8 e la serie 0.9.9 e Unity nella serie 7.x sono in realtà molto impressionanti.

I test su Phoronix e alcuni dei miei hanno dimostrato che per le schede Nvidia (gli unici test che potevo effettivamente fare erano con le schede Nvidia) le prestazioni sono aumentate. E non solo 3 o 4 FPS ma da 20 a 70 FPS a seconda della scheda video e del driver.

Questo è importante, poiché, a seconda della versione di Ubuntu utilizzata dall'utente, dipenderà anche dalla versione di Compiz e Unity disponibile e dal costo delle prestazioni che ne deriva.

Poiché Unity ha bisogno di Compiz, questa sarà la principale causa di un basso numero di FPS, ma non molto come prima, o almeno 2 versioni fa. Gestire l'utility Benchmark di Compiz durante la riproduzione di videogiochi in Wine o Open Source mi ha dato un ottimo FPS in 12.10 e anche di più mentre sto testando 13.04 con l'ultima serie 313.xx di Nvidia.

Va notato che le prestazioni video sono uno dei punti che verranno trattati in 13.04 (e in larga misura in 12.10 e 12.04) a causa dell'impegno che Ubuntu ha per i suoi utenti e Steam (Valve). Ubuntu e Valve non stanno solo lavorando su questo, ma Nvidia e Intel si sono uniti anche a molti aggiornamenti che hanno fatto saltare di volta in volta il conteggio degli FPS. Se stai seguendo i miglioramenti che stanno arrivando al kernel 3.7 e 3.8, ne vedrai alcuni.

Scheda video e versione del driver

È noto che per quanto riguarda le prestazioni, Nvidia è al primo posto, seguito da Intel e Ati (questo non deve essere confuso con la facilità d'uso, poiché Intel è molto meglio). Gli ultimi driver per Nvidia (ad esempio 306.64 , 310.19 e 313.09 ) hanno apportato tutti miglioramenti delle prestazioni OpenGL specificamente per Unity. In particolare il 313.09 che viene utilizzato per migliorare ulteriormente Compiz .

Ora, Nvidia non sta solo facendo molto lavoro per migliorare la strada per Compiz / Unity. Intel sta inoltre lavorando sodo (molto duramente) su diverse funzionalità chiave di Mesa, che dovrebbero migliorare le prestazioni in generale per tutte le schede video Intel, in particolare le serie 965, 2000 HD, 3000 HD e 4000 HD. Infine, Ati / AMD ha anche apportato diversi aggiornamenti che risolveranno molti bug e problemi con Compiz.

Quindi, in generale, avere il driver più recente per ciascuno migliorerà le prestazioni, ma avere una scheda Nvidia lo migliorerà di più, seguito da Intel e Ati.

Dopo aver letto tutto ciò, quali modifiche vengono apportate per migliorare le prestazioni in generale, ecco alcune:

  • Nvidia sta lavorando da diverse versioni fa per migliorare le prestazioni di Unity con un miglioramento di oltre il 50% in generale rispetto alle versioni precedenti

  • Intel collabora con Mesa per migliorare le prestazioni di Unity

  • Ubuntu e Valve stanno lavorando per migliorare le prestazioni di Compiz e Unity

  • Come visto in Launchpad, ci sono diversi problemi fissi su Compiz per migliorare la reattività e le migliori prestazioni in generale (incluso l'uso della memoria e della cpu)

  • Come visto in Launchpad, Unity ha ricevuto molte correzioni per quanto riguarda la maggior parte dei problemi riscontrati dagli utenti finali

  • Compiz ha ridotto di oltre il 50% la quantità di memoria utilizzata un anno fa.

  • Unity è più veloce e leggero rispetto alla versione utilizzata un anno fa.

  • C'è del lavoro svolto da Sams Spilsbury per l'ultimo Compiz e Unity che affronterà alcuni problemi comuni noti con Unity.

  • Le versioni del kernel 3.7 e 3.8 porteranno miglioramenti video in generale

Come puoi vedere, c'è molto lavoro da fare per migliorare Unity e Compiz. Ad essere onesti, confrontare Unity con Xfce o Lxde non è giusto. È come confrontare una bici con un'auto. Entrambi possono fare alcune cose meglio. Compiz offre ad esempio alcuni effetti molto chiari che Xfce o Lxde non fanno e anche se la maggior parte di noi non li usa, sono un'opzione (come l'accendisigari all'interno dell'auto).

Lo stesso vale per il confronto tra KDE, Gnome3 e qualsiasi altro DE con DE di fascia bassa. Sono di fascia bassa per un motivo. Tendono a evitare di apportare enormi cambiamenti che influiranno sulle prestazioni, mentre DE di fascia alta proverà ad aggiungere funzionalità che potrebbero richiedere più risorse all'inizio. Ad esempio, con i widget, la possibilità di ruotare una finestra il più possibile, con un effetto di sfocatura che nasconde lo sfondo o con uno sfondo animato. Ci sono opzioni che alcuni usi godono che sono offerti da alcuni desktop che altri DE non hanno bisogno o utilizzano poiché sono più orientati verso un sistema di fascia bassa.

Con questo in mente, chiunque abbia testato KDE dalla versione 4.0 sa quali enormi miglioramenti ha ricevuto fino all'ultima versione 4.9. Enormi davvero. Chiunque abbia testato Gnome 3.0 fino all'ultima versione 3.8 è a conoscenza degli enormi cambiamenti nelle prestazioni che ha ricevuto e chiunque abbia testato Unity dalla 3.x alla 6.x (e presto 7.x) saprà come le prestazioni sono aumentate. Per esempio mi manca gnome2, ad esempio, ma ci sono molti casi in cui non posso usare gnome2 poiché Unity è molto più gentile e veloce nell'aiutarmi a raggiungere alcuni di questi casi.

Quindi quali consigli potrei dare per migliorare le prestazioni?

Bene installare Compiz Config Settings Manager (ccsm)

e gioca con il plugin OpenGL:

inserisci qui la descrizione dell'immagine

Alcune di queste opzioni miglioreranno le prestazioni, altre avevo bisogno per evitare problemi con i video. Se qualcuno trova la domanda su questo, sarò felice se modificheranno questa risposta per includere un link qui. Non riesco a trovarlo in questo momento ma so che c'era una risposta che ne parlava.

Altro sta aggiornando i driver e, se possibile, usando Nvidia. A parte questo, aspettare 13.04 sarà utile.

Per alcune recensioni, ecco alcuni benchmark di Phoronix che controllano le prestazioni di Unity su 11.04, 12.04, 13.04 e 13.10:

Benchmark desktop 11.04

Benchmark desktop 12.04

Benchmark desktop 13.04

Benchmark desktop 13.10

E questo è quello che è successo con Nvidia negli ultimi mesi

Anche alcuni articoli su Ati / AMD QUI , QUI , QUI e QUI

Infine, Intel, Mesa e Opengl QUI , QUI e QUI


1
Felice di aiutare @BullfrogBlues ^^. Consiglio sempre di provare tutti i gusti di Ubuntu, in questo modo apprendi ogni desktop e come sono stati pensati.
Luis Alvarado,

Ritornando all'unità nel 13.04 da Gnome 3 nel 12.04, posso dire che l'unità è ora più veloce. Inoltre, gnome-shellè pieno di bug, massimizzando la CPU anche quando è inattivo. La mia unica lamentela con Unity è quella barra delle icone.
user117
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.