best counter
El milagro de las 200 líneas de código - MuyLinux
MuyLinux

El milagro de las 200 líneas de código

16/11/2010| por | 54 comentarios

Interesantísimo el artículo de Phoronix en el que nos explican cómo un pequeño parche de apenas 200 líneas de código podría suponer una mejora crítica en el rendimiento de nuestros sistemas gracias a un dramático incremento de los tiempos de respuesta a la hora de manejar multitarea.

 kernellinuxEl milagro de las 200 líneas de código

Esta modificación ha sido creada por Mike Galbraith, y está siendo revisada por Linus Torvalds, que parece realmente alucinado con las mejoras conseguidas gracias a dicha modificación:

Tengo que decir que estoy (agradablemente) sorprendido por lo pequeño que este parche ha acabado siendo, y como no es ni intrusivo ni feo en ningún modo.

También estoy contento con lo que logra hacer con el rendimiento interactivo. Tengo que admitir que mi caso de prueba es realmente trivial (leer email en un navegador web, desplazarme con el scroll un poco, además de hacer un ‘make -j64′ en el núcleo al mismo tiempo), pero es un caso de prueba que es muy relevante para mí. Y la mejora es impresionante.

Es una mejora para cosas como el scroll, pero lo que he descubierto que es más interesante es cómo parece que hace que parezca que las páginas web se carguen mucho más rápido. Puede que eso no debiera ser sorprendente, pero siempre he asociado eso con el rendimiento de la red. Pero está claro que hay carga de CPU cuando cargamos una nueva página web y desde luego mucha más cuando cargamos más de 50 al mismo tiempo, algo que provocará que la CPU se quede sin recursos en el proceso de carga, y que probablemente también provoque que las peticiones HTTP no se procesen lo suficientemente rápido.

Así que creo que este es desde luego uno de esos parches con “mejoras reales”. Buen trabajo. La planificación en grupos se convierte de algo “útil para ciertas cargas específicas en el servidor” a “esta es una característica alucinante”.

La idea es la crear grupos de tareas por TTY en un esfuerzo para mejorar la interactividad del escritorio bajo cargas de trabajo exigente, y en 224 líneas es posible modificar el planificador para que en estos escenarios la mejora de la interactividad sea impresionante.

En Phoronix han probado ambas versiones (con y sin el parche) y han constatado que la mejora es impresionante, y de hecho enlazan a dos vídeos que incluimos a continuación y que demuestran que la diferencia entre activar el parche y no activarlo es sencillamente brutal.

Se espera incluso que el parche se aplique al kernel 2.6.37, pero seguro que podéis currároslo un poco para compilaros el kernel por vosotros mismos con esta modificación. Habrá que buscar información sobre los pasos detallados, pero no parece una tarea demasiado compleja.

Mientras tanto, os dejamos con los vídeos, el primero con la mejora desactivada, y el segundo con la mejora activada.

You need to a flashplayer enabled browser to view this YouTube video

You need to a flashplayer enabled browser to view this YouTube video

Hay 54 comentarios

  1. 1
    zcully dice:

    Pues por lo visto es de lo mejor que le ha podido pasar a Linux diría que en años, en mi opinión. Seguro que mejora nuestra experiencia de uso muchísimo.

    Muchisimas gracias Mike Galbraith

  2. 2
    manuti dice:

    Increíble, no me lo puedo creer.

  3. 3
    1antares1 dice:

    Mike Galbraith = Otro colaborador, desarrollador y gran hombre en apoyo al Software Libre.

    Ésto es muy relevante, importante, sorprendete.

    200 Líneas de código para que él funcionamiento trabaje de ésta manera? Si que noto la diferencia.

    Linus Torlvalds está muy agradecido y aparte, todo tu trabajo no fue en vanos. Me imagino el tiempo que duraste esforzándote en ésto, no sólo hacer líneas, sino pensarlas bien y lo buen programador que eres.

    Si que te mereces unas buenas donaciones, espero que los que puedan y o quieran, puedan ayudar a éste gran colaborador, o también aportando código. Si pudiera y tuviera, lo haría.

    Cada vez la ideología real del GNU/Linux llega más rápido a la mente del usuario. Saludos, reitero mis gracias Mike.

    • 7
      Anonimus dice:

      Uno siempre puede y tiene. Y más viendo que te gastas una pasta en la internet todo el día.

      • 17
        Dark_Saito dice:

        El problema es que hay plata…pero no hay dolares….F###!!!!! Que problemon el de venezuela

        • 26
          1antares1 dice:

          Anonimus, primero identifícate, antes de esconderte, no seas hipócrita.

          Y 2do, es hablar bien fácil así cuando no Vives en Venezuela.

          Vivo solo con mi hermano y me mantengo a punta de Beca estudiantil. Mi mama sufrio una ACV y esta en recuperación con su familia que pueda mantenerla en otro estado. Mi papa nos mantiene la comida y los servicios.

          Y el Internet aquí es carísimo = 45 $ por 1MB de Conexión. A veces duramos debiendo 2 meses y con mi beca, pago el Internet, y me queda solo el pasaje del Autobus y como en el comedor de la universidad.

          ¿Crées que aún es fácil donar a alguien de afuera?

          Aun teniendo los millones que tenga, no podré hacerlo. Ya que primero necesitas tarjeta de crédito que te la otorgan en 1 año y luego 6 meses para que te habiliten el Cupo de Dólares (400 $ por año) y si es que te lo habilitan.

          Ahora ¿Crées que en Venezuela es fácil donar y más a una persona de afuera? Cuando no puedes tener cuenta PayPal acá y si la consigues, no puedes sacar el dinero de allí.

          Podrás ser anónimo (Nadie), pero un anónimo charlatán y hablador.

          • 27
            1antares1 dice:

            Disculpen por extenderme tanto jeje! Pero es que lo que comentan es sólo una estupidez sin saber la realidad, en vez de agradecer por lo menos de boca lo que hace éste tremendo desarrollador.

            No más entran para criticar y ya. Que gran sentido común tienen éstos.

            Disculpen de verdad por mi gran historia jeje! pero es verdad :S

            Saludos!

          • 28

            En España muchos se quejan de la famosa crisis, pero acá en latinoamerica normalmente vivimos en crisis :P

          • 30
            Anonimus dice:

            En primer lugar, deja de lloriquear. En segundo lugar, será que 1antares1 es un nombre que te identifica… 1antares1 es tan Nadie como Anonimus.

          • 31
            Anonimus dice:

            En tercer lugar, con tal de no aflojar un poco cualquiera puede inventarse cualquier excusa. Por eso para tantos Libre == Gratis.

          • 32
            zcully dice:

            No gastes tus fuerzas con el, reservalas para mi, recuerda que aqui soy yo con el que hay que meterse siempre, que soy el malo mas malo de todos !

          • 34
            Nicolás dice:

            Lector de nick (apodo) 1antares1 tú también hablas de otros países, culturas, personas, cosas, empresas, organizaciones… ¿por qué se debería censurar y no permitir la libertad de expresión y pensamiento de las demás personas, por qué tu tendrías que poseer todos los derechos y las otras personas tendrían que carecer de varios de sus derechos?, ¿que autoridad y poder escondes y quién eres realmente?…

      • 33
        Nicolás dice:

        Hay posibilidades de que el lector de nick 1antares1 sea un salariado más de Canonical…

        • 38
          1antares1 dice:

          Por la simple razón, de que si tiene cultura, es persona y tiene libertad de expresión, no creo que sea necesidad de esconderse tras un nick “Anónimo”.

          Y por supuesto, no vez que es un usuario de acá de MuyLinux, sólo que se cambia el nick para parlamentar con mayor espacio y libertad, ésa como la que dices.

          Si consigues en algún momento en éste artículo que he privado la libertad de expresión de alguien, antes de que el usuario “Anonimus” llegara con necesedades, avísame!

          Ah! No ando escondiéndome en un nick como “Anónimo” ¿Ok Zcully? = Bueno, éste es el nick que más utiliza, mi estimado Anonimus.

          • 39
            Anonimus dice:

            Podrás encontrar multiples comentarios de Anonimus en este blog. Y vuelvo y te repito, Anonimus es un nick tan anónimo como 1antares1 que tampoco es que te identifique plenamente.

          • 43
            Nicolas dice:

            Lector de nick (apodo) 1antares1 tú también hablas de otros países, culturas, personas, cosas, empresas, organizaciones… ¿por qué se debería censurar y no permitir la libertad de expresión y pensamiento de las demás personas, por qué tu tendrías que poseer todos los derechos y las otras personas tendrían que carecer de varios de sus derechos?, ¿que autoridad y poder escondes y quién eres realmente?…

  4. 4
    Anónimo dice:

    Me alegra ver lo rápido que resulta. Tal vez esa mejora de rendimiento permita que flash no me tire tantos frames en megavideo… ¬¬

    • 21
      Jortecus dice:

      yo prefiero pausarlo y abrir el que está cargándose en la carpeta tmp con Totem

      • 23
        CHuLoYo dice:

        ¿Con totem? Utiliza VLC hombre! Con totem, por ejemplo, no puedes ir viendo los vídeos descargándose en .part de firefox, porque una vez lo abres, sólo has abierto el trozo que llevaba descargado, en cambio VLC continúa.

        Es una gran diferencia. Hay ciertos vídeos flash en los que pasa lo mismo (incluídos algunos de megavideo, según resolución o calidad y la forma de cargaç)

        saludos.

    • 50
      otaku dice:

      libre no quiere decir que sea gratis -.-

  5. 5
    Lin-Tux dice:

    Bueno yo todavia soy nuevo en esto. eso es lo bello de ser Linuxero, que muchos desarrolladores pueden contribuir con algo de codigo mejorando nuestro sistema.
    Bueno pues felicidades amigos linuxeros…………………………..

  6. 6
    Andrés dice:

    Im-pre-sio-nan-te

  7. 8
    nonamed- dice:

    .en el segundo video parece que el raton no hace los mismos movimientos

    este tipo de tests deberian hacerlos con un programa que grabe los movimientos y clicks de raton para volver a reproducirlos exactamente, asi se notarian mejor las diferencias

    • 9
      Sergio dice:

      Joder no hace falta ver que cuando está moviendo la ventana en círculosn en uno el make y el glxgears se paran y en el otro no.

  8. 10
    chambertuX dice:

    Sabe alguno donde me lo puedo descargar?

    • 12
      Andrés dice:

      de momento, creo, tendrías que bajar una versión git del kernel, o el rc de la versión 2.6.37, actualmente está la rc2, me imagino que este cambio lo incorporarán para la 2.6.37-rc3, y cuando hagas el make menuconfig tienes que buscar la opción sched autogroup y activarla.

      Lamentablemente pasarán varios meses para que aparezca la versión 2.6.37 oficial, pasarán varios meses más para que esa versión sea parchada y empaquetada para las distribuciones, y aún más meses para que los que mantienen el paquete del kernel en la distro para que trabajan consideren que sea prudente dejar esta opción habilitada por defecto.

      Hay muchas distros que son muy conservadoras al respecto y no habilitan una nueva característica de buenas a primeras, por ejemplo, he visto distros que no tienen la opción KSM habilitada por defecto y en su momento se le dio caleta de bombo.

      Así que, de momento, tocará esperar :(

      • 19
        Goyito dice:

        Pues esperemos que dada la importancia del parche hagan una excepción y lo adelanten, eso si sería un buen regalo de Navidad :-)

    • 14
      Andrés dice:

      en todo caso aquí está el parche:
      http://lkml.org/lkml/diff/2010/11/15/450/1

    • 46
      Gaspar dice:

      Aquí he publicado una guía para descargar e instalar el parche:
      http://totaki.com/poesiabinaria/2010/11/instalando-el-parche-milagroso-para-linux-sched_autogroup/

  9. 11
    Lendon dice:

    Os la han meneado, pero metiendo la de Phoronix que queda más cool…

  10. 13

    [...] Fuente: MuyLinux [...]

  11. 15
    Santy dice:

    Me a dejado con el c**o torcido, ya me pondré a buscar como compilar mi kernel con al mejora.

  12. 16
    haldrik dice:

    Es increíble uno pensaría que le están tomando del pelo, es como pasar de un procesador de 2 núcleos de 32bits, a uno de 4 núcleos de 64bits.

  13. 18
    Alexddr dice:

    desde hace años que vengo reclamando el mal rendimiento de linux cuando hay varios procesos que consumen mucha cpu, como por ejemplo una animacion flash que consume mucho(dado la baja optimizacion del plugin en linux) en una pagina web y apreciar claramente como el computador se pone lento y de baja respuesta del scroll del navegador etc etc. Siempre pense que era un problema de Xorg, que aunque lo sigo encontrando pasado de moda, parece que no era el mayor culpable.
    espero salga luego un ppa con el kernel para probarlo, ya que enquipos de baja potencia como un netbook sera muy bueno, puesto que ahi cualquier programa puede llegar a consumir mucho para un atom, lo que no se traduciria en lentitud del escritorio completo y seria mucho mas agil de cara al usuario final de escritorio

    • 35
      Nicolás dice:

      Creo que una gran parte de la responsabilidad del plug in “privativo” (ver filosofía GNU.org para entender todo lo que está pasando) es la empresa Adobe, problemas de eficiencia y eficacia, problema de calidad, es Adobe…

      • 36
        Nicolás dice:

        gnu.org/philosophy/philosophy.es.html

  14. 20
    juan dice:

    ¿bueno y a que esperan para incorporarlo como actualizacion critica en todas las distribuciones?
    sobre todo las 64 bit.
    estamos esperando

  15. 22
    MagoBlanco dice:

    WOW…

    sólo eso…

    Agradecidísmo a MG..

    MB

  16. 24
    mike dice:

    Ejem, ejem… ¿para cuándo ya lo vamos a tener incluído? jaja

  17. 25
    sos-fan dice:

    Buaaa, ya quiero tenerlo en mi ubuntu ;_;
    ni modo a esperar

  18. 29

    [...] Jonarano y el parche de 200 líneas para el kernel de la V3 que hace maravillaswww.muylinux.com/2010/11/16/el-milagro-de-las-200-lineas-de-… por me_joneo_pensando_en_ti hace 6 segs [...]

  19. 37

    Gran aporte, muy buen código aportó esta persona y ahora todos los sistemas Linux ganan un buen empujoncito de más a la hora de la multitarea. Bravo! :D

    Ya hacía falta algo de mejora en la velocidad; se concentran mucho en la compatibilidad, seguridad y estabilidad, lo cual también se agradece ñ_ñ

    Saludos!
    JaD! | Ferrer

  20. 40
    jalp dice:

    ¿Se sabe si hay ya algún ppa para maverick con kernels compilados con el parche ese?

  21. 41
    da3m0n dice:

    Parcheado en Android, benchmarks: http://pastebin.com/hS8EScDV

    Vía Twitter de @charansingh

  22. 42

    [...] Articulo completo en muylinux.com [...]

  23. 44

    [...] noticia fué replicada por la gente de muyLinux bajo el nombre de “El milagro de las 200 líneas de código” [...]

  24. 45
    ninjamon dice:

    Que sorpresa… es como hallar una veta de oro =D

  25. 47

    [...] | escrito por: anónimo #0 El parche para Linux de apenas 200 líneas que hace milagros – http://www.muylinux.com/2010/11/16/el 16/11/2010 15:06 | anónimo dice: #1 Me pregunto cuánto tiempo tardará este parche en [...]

  26. 48

    [...] multitarea, es decir, realizar más de una tarea a la vez. Según pudimos constatar a través de MuyLinux, la idea de este parche es crear grupos de tareas por TTY (consolas linux) con el objetivo de [...]

    • 51
      Nollie dice:

      Ya learn smtoehing new everyday. It’s true I guess!

    • 52
      eryovn dice:

      nv1S6G utuottgkcaaz

  27. 49

    [...] ha integrado la famosa mejora que dio la sorpresa en todos los medios Linux al conocerse que con tan solo 200 líneas de código se podía mejorar el rendimiento del sistema de forma muy relevante en ciertos [...]

  28. 53

    [...] pasado día 10 de este mismo mes) que introduce numerosas mejoras entre las que no entra el famoso parche de las 200 líneas, el cual ha sido añadido aparte por los desarrolladores de la distribución (acaba de salir [...]

  29. 54

    [...] hablando del célebre parche de las 200 líneas de código para aclarar un poco la situación con respecto a ese método alternativo que acaba de aparecer y [...]

Escribe tu comentario