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 ↓

Ver Comentario... Tavo dijo el 3-11-2009 a las 21:27 ...

-sapodrilo-

DesaprobarAprobar61-sapodrilo- dijo el 3-11-2009 a las 21:30:

2

aun que muchos digan q es feo, que es dificil etc ect.
es un buen OS

y es lo que hace que algunos competidores se pongan la pilas para que nosotros tengamos algo que realmente valga la pena dentro de nuestros computadres

Gramde LINUX

Ver Comentario... Maux dijo el 3-11-2009 a las 21:34 ...

Ver Comentario... Maux dijo el 3-11-2009 a las 21:36 ...

Rodrigo

DesaprobarAprobar48Rodrigo dijo el 3-11-2009 a las 21:36:

5

Jajaja, que me dio gusto leer esta noticia!…
Bueno, esa es la pega de los sistemas operativos, facilitar de buena forma los recursos de sistema, optimizando cada byte de memoria…

Esa es la gran diferencia y explicación, de por qué si tengo 10 aplicaciones ejecutándose en windows el sistema anda a pedales, y por qué si tengo 10 aplicaciones ejecutándose en linux, es casi como no tener nada abierto aún…

En fin,
Ataques de Windows fanboys en 3…..2…..1…..

Ver Comentario... Felipe Díaz dijo el 3-11-2009 a las 21:43 ...

alvaro

DesaprobarAprobar7alvaro dijo el 3-11-2009 a las 21:43:

7

En mi caso Call of Duty2 me parecía correr mejor en Linux+Wine que sobre Windows xP. La excepción era Firefox q andaba mas lento, pero quedó claro que era por el port.

Leo Jiménez

DesaprobarAprobar22Leo Jiménez dijo el 3-11-2009 a las 21:44:

8

@-sapodrilo- pero ya no es feo ni difícil.

Lo que te tardes describiendo una deficiencia de GNU/Linux, probablemnte ya está resuelto el problema y pasa a ser un mito más manejado solo por los windowseros

Ver Comentario... trabajos esteban dijo el 3-11-2009 a las 21:44 ...

Arkanus

DesaprobarAprobar11Arkanus dijo el 3-11-2009 a las 21:45:

10

Lo interesante de esto es que los beneficios vienen “gratis” para los desarrolladores de linux, sin necesidad de trucos raros como en windows xD (ie. codigo ensamblador).
Lo otro que he notado es que a medida que aumentan los tabs (procesos) la memoria escala mejor en linux que en windows, debe ser por el overhead de los wrappers que desde XP windows pone a todos los procesos para capturar excepciones y errores; que a pesar de todo igual muchos terminan en pantallazos azules.

santiago 9.10

DesaprobarAprobar21santiago 9.10 dijo el 3-11-2009 a las 21:46:

11

que bueno que tengo ubuntu y google chrome, asi puedo entrar mas rapido a fayerwayer

ArKaNtOsDeath

DesaprobarAprobar-2ArKaNtOsDeath dijo el 3-11-2009 a las 21:47:

12

yo desde hace tiempo uso mandriva con Konqueror, firefox, opera y chromiun y me quedo con los dos últimos, curiosamente son los que uso en guindous y los siento a la misma velocidad, de hecho ahora estoy escribiendo con chrome y guindous

asdasda

DesaprobarAprobar10asdasda dijo el 3-11-2009 a las 21:51:

13

la verdad de las cosas?

los desarrolladores de programas para linux deberian ser un poquito mas ambiciosos y preocuparse mas de optimizar sus aplicaciones para linux y no enfocarse en ser multi-extra-mega-super compatible con los demas sistemas operativos….

me refiero a que si el proyecto chromiun es mucho mas rapido en linux y es lento en windows, y por los reclamos se realiza una optimizacion para windows pero se ve afectado el rendimiento en linux, deberian descartar trabajos como esos, ya que asi se gana un plus para linux y asi se tiene un “enganche extra” para usar su sistema operativo.. porque o si no la mayoria (sobre todo los windowseros) diran: “para que usar linux si total este programa me es rapido en windows”

falta un poco mas de ambicion y no ser “tan buenos” con los demas sistemas operativos. bien por proyecto chromiun y su rendimiento en linux que siga asi :)

Ver Comentario... Beck dijo el 3-11-2009 a las 21:51 ...

xtremox

DesaprobarAprobar1xtremox dijo el 3-11-2009 a las 21:52:

15

yo tengo gnewsense ojala pueda instalar el chronium :)

Antigueño

DesaprobarAprobar1Antigueño dijo el 3-11-2009 a las 21:53:

16

Buenísima nota. Buenísimo para dar el salto, más ahora que ubuntu quedó mucho mejor

MoonCitylex

DesaprobarAprobar7MoonCitylex dijo el 3-11-2009 a las 21:59:

17

Da gusto ver como progresa linux…

Jonathan Contreras

DesaprobarAprobar-11Jonathan Contreras dijo el 3-11-2009 a las 21:59:

18

Que bueno que sea mas rapido el linux :D

…sigo con win7

Ver Comentario... TurboMAC dijo el 3-11-2009 a las 22:02 ...

Soulwave

DesaprobarAprobar2Soulwave dijo el 3-11-2009 a las 22:05:

20

Usando chromium 4.0.226.0 en ubuntu, y no me quejo, realmente veloz.

Pero, eso creo que es lo de menos de chrome, lo que me gusta, es que ahora siento que mi pantalla en verdad esta siendo utilizada a full, antes firefox me restaba un monton de espacio (trate con plugins para remover cosas, pero firefox no se puede usar bien así).

elBarto

DesaprobarAprobar4elBarto dijo el 3-11-2009 a las 22:19:

21

franco, y que pasa con FF?, siempre he leido que el rendimiento es bastante pobre en relacion a windows(java script, parte grafica), y que los usuarios de linux serian ciudadanos de seunda clase.

Davor

DesaprobarAprobar2Davor dijo el 3-11-2009 a las 22:35:

22

@Franco:

Cada Tab del navegador es un proceso? Si es así, entonces no es extraño que pase lo que describes.

En general, en los Unix es más rapido crear un proceso que en los NT. Pero crear un thread es más rápido en los NT. Por lo menos hasta donde recuerdo era así, no se si han cambiado el manejo de threads en Linux.

Ahora, crear UN proceso POR Tab, es como medio raro o_O No conozco la arquitectura de este navegador. Pero es raro.

- Davor

Leumas

DesaprobarAprobar5Leumas dijo el 3-11-2009 a las 22:40:

23

@trabajos esteban = Troll!!
Hijo, siga descargando con Ares no más, y presuma de su cuenta premium en chilebt con sus amigos, pero no olvide no molestar más en este foro.

LuisAlberto

DesaprobarAprobar0LuisAlberto dijo el 3-11-2009 a las 22:50:

24

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

:(

(_--)a[

DesaprobarAprobar4(_--)a[ dijo el 3-11-2009 a las 22:51:

25

Con razon, ahora mismo tengo abierto dolphin, akregator, openoffice, skype, opera, firefox, xchat, amarok, deluge y k3b (estoy quemando dvds) y nada, mas el kde 4.3.2 con composite por defecto (transparencias, efectos) y la maquina corriendo como si nada, con un procesador amd xp de 1.8Ghz de 32bits, ram de 1.7GB DDR (nada de DDR 2 o 3) mas una nvidia gforce6 agp. Por lo mismo, no me extraña como el navegador de google mire para atras, a lo Usain Bolt, las otras versiones de los demas sistemas operativos.
Interesante la nota.

Franco Catrin

Franco Catrin dijo el 3-11-2009 a las 22:55:

26

@Davor

Cada Tab del navegador es un proceso? Si es así, entonces no es extraño que pase lo que describes.

http://blog.marcchung.com/2008/09/05/chromes-process-model-explained.html

En general, en los Unix es más rapido crear un proceso que en los NT. Pero crear un thread es más rápido en los NT. Por lo menos hasta donde recuerdo era así, no se si han cambiado el manejo de threads en Linux.

Cambió hace como 4 años o más!!
http://en.wikipedia.org/wiki/Native_POSIX_Thread_Library

Guatón Campero

DesaprobarAprobar15Guatón Campero dijo el 3-11-2009 a las 22:59:

27

La otra solución es hacerlo que sea más lento en Linux para que se parezca a Windows o Mac.

Nikkolazo

DesaprobarAprobar-4Nikkolazo dijo el 3-11-2009 a las 22:59:

28

a mi me corre practicamente igual…siendo que mi pc (con win) es mucho mas rapido que mi notebook (con linux) :S

Davor

DesaprobarAprobar0Davor dijo el 3-11-2009 a las 23:17:

29

@Franco:

Si, si conocía de NPTL. De lo que no estoy al tanto es si han mejorado más su performance.

De acuerdo al link que pusiste, al parecer así lo hacen en este navegador, un proceso por TAB. Es raro. Es algo así como si juntaras varias aplicaciones y las haces aparecer como una sola. Al menos es novedoso el enfoque :D

(En cada proceso utilizan threads, pero lo novedoso es como tratan algo que generalmente se implementaría solo con threads).

Con threads igual puedes lograr seguridad entre ellos. Por eso me extraña que si NPTL ha logrado buena performance no la utilicen en algo así como un navegador. Aún cuando la creación de procesos sea rápida en Linux, el thread es más liviano y tiene otras ventajas (más liviano, comunicación entre ellos y compartir, por ejemplo).

- Davor

Ver Comentario... Tavo dijo el 3-11-2009 a las 23:23 ...

Deja tu Comentario

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

Previsualizar comentario?