Navegador Chromium es más rápido en Linux

chrome-othersAún no hay versión oficial de Google Chrome para Linux, pero al ser desarrollado en forma abierta, desde hace tiempo que se puede usar mediante las versiones que se publican diariamente de Chromium, el proyecto de código abierto detrás de Chrome.

En el grupo de discusión de los desarrolladores, uno de ellos planteó la inquietud de por qué el navegador se percibe ridículamente más rápido en Linux comparado a las versiones para Windows y Mac, lo que originó un interesante debate acerca de cómo el sistema operativo influye en una aplicación de este tipo.

En la discusión se exponen algunos detalles de implementación que hacen que en Linux algunas aplicaciones corran con ventaja gracias a decisiones de diseño tanto por el lado del sistema operativo como de la misma aplicación.  Por ejemplo indican que crear un proceso en Windows es mucho más caro en términos de uso de recursos y esto afecta la creación de nuevos tabs, ya que justamente en Chrome se trata de nuevos procesos.  En el caso de Linux, el sistema en general es más ligero y por lo tanto hace menos cosas en operaciones de este tipo.  Una de las posibles soluciones planteadas es tener siempre un proceso creado en forma anticipada, de tal forma de que cuando se necesite no tenga que esperar el proceso de inicialización.

X.org comienza a mostrar su nueva cara

Otro aspecto importante es la forma en que se manejan los gráficos.  En el caso de Windows se pueden usar dos tipos de gráficos : DIB (independientes del dispositivo) y DDB (dependientes del dispositivo).  En el primer caso se crean en memoria normal y luego se copian a la memoria de video, con el problema adicional de que se deben aplicar transformaciones desde una representación genérica a la representación física o final que se requiere y no siempre puede usar aceleración por hardware.  En el segundo caso, los DDB,  no se requiere tal transformación y una copia puede hacerse con un simple comando ejecutado por la GPU (bitblt), pero el diseño de Windows pone un límite artificial a la cantidad de gráficos que se pueden manejar como DDB, lo que lo convierte en un recurso escaso y poco apetecible por los desarrolladores de aplicaciones.

En el caso de Linux y pese a todo lo que la intuición puede decirnos acerca del tamaño y complejidad de X.org, este tipo de operaciones está muy optimizado, sobre todo en la última generación de drivers que utilizan gestión de memoria unificada en el kernel (GEM), específicamente usando la arquitectura de aceleración UXA.  En este caso las copias de bloques de memoria se reducen al mínimo, y dejar disponible un gráfico en la GPU es una operación acelerada por hardware.  Es tanto así que cuando se inició el desarrollo experimental de UXA en X.org se midieron mejoras en el rendimiento de hasta un 60%.

Por otra parte, según los mismos desarrolladores de Chromium, la forma en que se están creando los gráficos no siempre usa aceleración por hardware, mientras que en el caso de Linux, gracias a las nuevas arquitecturas de aceleración, primero EXA y luego UXA, todas las operaciones comunes se realizan con aceleración por hardware.

En el caso de Mac, los desarrolladores de Chromium dicen que aún no se han enfocado en optimizar el rendimiento, por lo que no tiene mucho sentido discutirlo en este momento.  De todas formas, los usuarios de Windows no deben preocuparse porque ya se han creado los registros en el sistema de seguimiento de bugs de Chromium para solucionar los problemas de rendimiento percibidos.

Links:
- Why is Linux Chrome so fast? (Chromium-dev)
- GEM The Graphics Execution Manager (LWN.net)
- Chrome más rápido en Linux que en Windows y Mac OS (CHW.net)

Compartir Compartir
Publicado por Franco Catrin el 3 de November 2009 en la categoría Destacados, Software con los tags , , , , , , , , , . Tiene 75 comentarios.

75 Comentarios

Navegador Chromium es más rápido en Linux

Deja tu Comentario ↓
waX

DesaprobarAprobar2waX dijo el 3-11-2009 a las 23:27:

31

@Davor

pero en compartir la memoria puede estar su desventaja en la seguridad.. en cambio usando procesos independientes, si una pagina se muere por alguna razon, solo moriria ese tab y no el navegador completo

Daniel Escobar

DesaprobarAprobar0Daniel Escobar dijo el 3-11-2009 a las 23:46:

32

Técnicamente le favorece la plataforma. Pero al menos en mi caso se sigue mareando con el flash… :S

Saludos.

Davor

DesaprobarAprobar1Davor dijo el 3-11-2009 a las 23:50:

33

@waX: Depende de la implementación. Tu puedes lograr seguridad entre threads, quizás no toda la que obtienes con procesos diferentes, pero puede ser suficiente para lograr que no se caiga toda la aplicación y la seguridad que buscas en un navegador.

Bueno, son desiciones de diseño que se hacen. El tema es que ocupar procesos diferentes tiene sus desventajas frente a threads. Si requieres comunicación entre ellos, es algo pesado. Independiente si estás en Linux en el cual crear procesos es relativamente “barato”.

Si les funciona bien, OK. Quizás hicieron un diseño novedoso que atenua las desventajas que menciono. Pero al menos va a ser un diseño que no va a estar extento de críticas. Total, criticar es gratis :D

- Davor

Gaudy

DesaprobarAprobar0Gaudy dijo el 3-11-2009 a las 23:56:

34

en FileHippo.com me he descargado version por version de GoogleChrome y literalmente se actualiazan cada 4 dias y claramente se nota q su rendimiento ha aumntado bastante, incluso al abrirlo se demora menos de un segundo en abrirse a aplicacion.

Claro…. q la version 4 Beta existe desde el 18 de agosto y en este momento ya van por el 13º Beta de la version 4 (para q vean q se actualizan cada 4 dias)

Aun asi creo q me Quedaré con FireFox porq es un navegador muy completo, pero con el ritmo acelerado q van los de GoogleChrome, puede q algun dia me cambie a ese navegador.

Saludos !!

Ver Comentario... Ravenman dijo el 4-11-2009 a las 00:24 ...

ivancyber

DesaprobarAprobar0ivancyber dijo el 4-11-2009 a las 00:32:

36

yo tengo Chromium en mi ubuntu y funciona bastante bien al igual que con opera, lametablemente cpn firefox usa mas recursos en el procesador de mi notebook por eso uso estas alternativas y que bueno que hayan mas alternativas mas cocnocidas

amar0

DesaprobarAprobar1amar0 dijo el 4-11-2009 a las 00:46:

37

Nada que decir ya soy feliz con mi unix asi que mas noticias buenas solo hacen que este mas feliz.

como siempre franco excelente articulo te ganaste un poroto

supreme

DesaprobarAprobar2supreme dijo el 4-11-2009 a las 01:30:

38

Excelente la nueva arquitectura gráfica de Linux.

Pero yo solo pido que vuelva xorg.conf completo, nada más, como en los viejos tiempos.

Carlos

DesaprobarAprobar1Carlos dijo el 4-11-2009 a las 01:58:

39

Hola,

Otro más que usa ubuntu, y chromium hace tieeeeeeeeeempo.

Lo único que le faltaba era el soporte para flash, y listo, pero ya tengo flash así que es casi perfecto.

Aún hay algunas pifias de visualización, pero son pequeñas cosas realmente poco importantes, comparado con su velocidad.

Y para @Tavo, que pregunta “Y???”, te lo metí.

Fakeroot

DesaprobarAprobar0Fakeroot dijo el 4-11-2009 a las 02:05:

40

@FRanco: que hicieron en el xorg xserver 1.6.5 que hace que el plugin de flash corra bien a pantalla completa?? por ahi lei que era culpa del xorg esos numers lags de flash y el consumo exagerado de cpu a full screen . Pero en karmic incluyeron por default el xserver 1.6.4 que tiene problemas de rendimiento a fullscreen y flash o es la mala Implementacion de Ubuntu??

Para los que tengan problemas con flash en youtube a pantalla completa prueben OPENSUSE 11.2 o MANDRIVA 2010 (que son los que he probado) que viene con el xserver 1.6.5 y el flash consume lo (% de CPU) mismo a pantalla completa que en ventana , osea el bug esa corregido

PAra los que odien el selector de archivos de gnome como yo, en opensuse 11.2 firefox y openoffice viene parchado para usar los dialogos de KDE osea tenemos al fin miniaturas de las imagenes al subirlas a alguna pagina web o enviarlas por correo.

Por lo que desde hoy pese a que opensuse no es tan clicky como ubuntu me cambio de nuevo por esas simples razones. Viva la diversidad de distros

saludos

SAmmy

DesaprobarAprobar2SAmmy dijo el 4-11-2009 a las 03:02:

41

ahora estoy usando Chrome en UB 9.10 nada mas que decir, funciona aun mas rápido que FF. solo le falta el ADBLOCK y WOT.

pero en cargas de paginas, todo OK.

trollerblade

DesaprobarAprobar16trollerblade dijo el 4-11-2009 a las 05:02:

42

@Ravenman:

Si es por dar crédito a quien lo merece, te faltan las licencias MIT, BSD, Apache, Artística y un montón de otras más. Así que un sistema Linux debiera ser llamado más bien Apache/Artistic/BSD/GNU/IETF/MIT/Mozilla/TeX/Public domain/…/Linux.

Luis Alberto

DesaprobarAprobar0Luis Alberto dijo el 4-11-2009 a las 10:04:

43

@Franco
Esto da para una nota y debatirlo, claro…. suponiendo que Fayerwayer busca la objetividad

Linux: Some Early Adopters Stung By Ubuntu’s Karmic Koala
http://linux.slashdot.org/story/09/11/03/2211231/Some-Early-Adopters-Stung-By-Ubuntus-Karmic-Koala

En mi caso solo he tenido un problemas con el sonido en comparacion con la 9.04 y la verdad se vuelve molesto. Al principio pense que algo paso entre los upgrade desde las versiones Alpha a la BETA,RC y Final… pero luego de una instalacion limpia el problema persiste. He mirado en foros pero no se ve nada claro.

Con Grub 2 no he tenido problemas, considerando equipos con Windows Vista/Seven y Ubuntu instalado o otro con Seven y Ubuntu 9.10

eso!

Brouwer

DesaprobarAprobar0Brouwer dijo el 4-11-2009 a las 10:31:

44

@Franco

Estoy usando Ubuntu Karmic MOBLIN, y el navegador integrado es muy similar a Chrome. Tu sabes si es el mismo?? Al menos no usa WebKit.

Ravenman

DesaprobarAprobar-5Ravenman dijo el 4-11-2009 a las 10:38:

45

@Trollerblade: La explicación es sencilla, debe llamarse GNU/Linux porque GNU es el origen, al igual que Linux (que está casi desde el principio). Es como si eres de nacionalidad chilena, pero tienes ciudadanía canadiense, francesa e italiana; no se dice que eres chilenocanadiensefrancoitaliano, eres chileno, porque hace alusión a tus orígenes. Además que el GNU es para recordarnos que más que un producto (sistema operativo GNU/Linux) debemos recordar la filosofía que dió origen a dicho producto (Free software). El problema aquí es que muchos equiparan Freeware = Free Software, Ubuntu = GNU/Linux, Linux = GNU/Linux, Copias ilegales = necesidad/recursividad, etc. Debemos destruir el motor que impulsa el crecimiento de la estupidez humana: la ignorancia, este ha sido mi pequeño aporte a la causa.

Ver Comentario... lector decepcionado dijo el 4-11-2009 a las 11:09 ...

Marcel

DesaprobarAprobar7Marcel dijo el 4-11-2009 a las 11:18:

47

Estimado lector decepcionado, el articulo no es sobre un comentario de un usuario en una lista de correo, sino sobre las respuestas de los desarrolladores de Chrome.

Sobre el tema de Firefox, es verdad corre lento y mal pero el contraste que tiene con el caso de Chrome y especialmente las razones técnicas detrás de la velocidad de este en Linux, hace que sea evidente que el problema está en manos de los desarrolladores de Firefox, pero creo que son los desarrolladores de Firefox quienes deberían de explicar por que ellos no logran los mismos resultados que los desarrolladores de Chrome.

iperich

DesaprobarAprobar4iperich dijo el 4-11-2009 a las 11:36:

48

Es realmente cierto, y sobretodo pensando que Firefox en Linux APESTA, porque es terriblemente pesado y lento, Chrome es LA opción que se viene en navegador para Linux. Yo lo uso hace varios meses ya para navegar (para desarrollar sigo usando FF, por el maravilloso Firebug) pero Chrome abre casi automáticamente al hacer click en el ícono, frente a los cerca de 10 segundos que le toma a FF estar listo para navegar. Además, es simplemente hermoso que si algo falla se cuelguen las pestañas, pero no el programa entero (se cierra la pestaña y listo). Creo que Google ha hecho un gran trabajo con Chrome, y aunque es una versión de prueba aún en Linux y algunas veces se cae el Flash (en plugins relacionados a Webcam, generalmente) en general no da problemas, veo videos de Youtube, juego en addictinggames.com, etc, etc. Lo recomiendo 100%.

Rodrigo

DesaprobarAprobar4Rodrigo dijo el 4-11-2009 a las 12:28:

49

Uso Chromium + Linux desde hace algunos meses. Coincido con el comentario general, Chromium es muy veloz en Linux, el gran pero es el soporte de Flash para Linux de 64-bit. Aún cuando uso una versión alpha nativa del plugin de Flash de 64-bit la reproducción de video y animaciones se nota muy lenta en Chromium, es considerablemente más rápida en Firefox. Una vez que el plugin de Flash funcione como corresponde, no veo razón para dejar atrás a Firefox y mudarse a Chromium con camas y petacas.

zuperpailon

DesaprobarAprobar0zuperpailon dijo el 4-11-2009 a las 12:58:

50

Es impresionante lo rapido que anda chromium en karmic. Por otra parte, con flash y fullscreen no he tenido ningun problema, anda a toda raja y eso que mi tarjeta es una atix1250… el unico problema es q con chromium no puedo jugar quakelive :P

vladimir prieto

DesaprobarAprobar0vladimir prieto dijo el 4-11-2009 a las 13:39:

51

por este post bajé el Chromium en Ubuntu y va de pelos. es rápido…muy rápido.

el problema que he notado, es que eso de generar un proceso por tab hace que a la larga FF sea más efeciente con la memoria. me explico: FF es más lento al comienzo y usa más memoria que Chromium, pero luego de estar navegando un rato por varias páginas (sin cerrarlas), la acumulación de tabs (procesos) hace que Chromium use harta más ram que FF.

ahora lo que me está cagando con las extensiones de FF, que a estas alturas se hacen indispensables :S

vladimir prieto

DesaprobarAprobar0vladimir prieto dijo el 4-11-2009 a las 13:49:

52

@Luis Alberto #43:

al parecer se está haciendo mucho ruido de algo que no está bien analizado. leer este comentario (del mismo link que diste)

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:24:

53

@Luis Alberto

Tanto lo pulicado en Slashdot, y en otros sitios como The Register, Boycott Novell hay que tomarlo con mucho cuidado. En este caso en particular, los problemas reportados me parecen más bien de “capa 8″ que de la misma distribución. Hasta ahora entre la gente que ha actualizado el sistema no he recibido un feedback negativo como lo reportan estos sitios.

Por ejemplo, es muy dudoso que el sistema instale un kernel antiguo como lo reportan, porque esos paquetes simplemente no vienen en la distribución. Lo más probable es que al hacer el update queda la opción para entrar con el nuevo kernel o el antiguo como es usual en GRUB, y el usuario está seleccionando el antiguo. BTW hice las pruebas instalando desde cero y actualizando desde 9.04 sin mayores problemas.

También ojo con lo que dice @vladimir prieto en comentario #52

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:26:

54

@iperich

En mi caso, no sé si es por Firefox 3.5 o por la corrección en los drivers de Intel, pero Firefox ahora funciona mucho mejor que en 9.04

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:27:

55

@lector decepcionado

Esas noticias son super viejas y ya las analizamos.

http://www.fayerwayer.com/2009/02/linux-sale-mal-parado-en-benchmark-de-javascript/

El problema sólo está comprobado en Firefox 3.0 y no en 3.5 que se está usando ahora.

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:28:

56

@vladimir prieto

Sobre el uso de memoria. Es percepción, intuición o tienes datos a la mano?
Respecto a uso de memoria no debería haber gran diferencia entre usar procesos y usar threads separados.

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:35:

57

@Fakeroot

Hay muchos factores que influyen, y no creo que sea un problema de X.org. En mi equipo con Ubuntu 9.10 el consumo de CPU es lo mismo en ventana y fullscreen.

El rendimiento de video en Flash en general es MALO. Una prueba sencilla es reproducir los videos con cualuquier otro reproductor y verás que el uso de CPU es mínimo.

Respecto al modo fullscreen, también influye si tienes configurada la opción “unredirect windows on fullscreen” en Compiz (o similar). Lo que hace es desactivar la composición cuando usas una aplicación fullscreen, porque no es necesario y entorpece más que ayudar.

Por otra parte, en x.org 1.6.5 solo veo bugfixes que no son relevantes para el problema que mencionas:

http://lists.freedesktop.org/archives/xorg/2009-October/047687.html

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:35:

58

@supreme

Para que necesitarias xorg.conf hoy?

Franco Catrin

Franco Catrin dijo el 4-11-2009 a las 14:39:

59

@Davor

En que caverna estabas que te perdiste el lanzamiento de Chrome? Una de las caracerísticas más aplaudidas fue la separación de procesos. Hay que recordar que un thread no lo puedes matar desde fuera del thread padre (o si?) por lo que que aislar es más complejo y/o imposible.

Además la programación con threads es mucho más compleja y vulnerable a errores de programación que usar simples procesos separados.

L

DesaprobarAprobar0L dijo el 4-11-2009 a las 15:56:

60

Sigo prefiriendo Chromium-browser , motivos actualizaciones.
Y si, Chromum y chromium-browser son mucho más rapidos en Linux que en W$

Deja tu Comentario

XHTML: Puedes usar: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>

Previsualizar comentario?