InicioLinuxRompiendo el mito del "parche magico"

Rompiendo el mito del "parche magico"

Linux•11/23/2010
He escuchado los últimos días mucho ruido acerca de un parche mágico que hace que el kernel funcione mucho mejor, que hace que la maquina funcione mas rápido, que hace que la distro vaya mejor. He visto como se ha hecho un mito alrededor de un simple post en Phoronix y he visto como se han hecho posts y reposts y recontra-reposts hablando de lo mismo siempre con la información incompleta, este texto es con la intención de romper mitos y explicar de una vez por todas que es ese parche, que hace, cuando lo veremos posiblemente y por que no le sirve a la mayoría de los usuarios.
5b415a0a74765006f122f979f487f751

Que es el famoso parche y que diablos hace


Tomado del archivo de configuración del parche mismo:

dijo:

This option optimizes the scheduler for common desktop workloads by automatically creating and populating task groups. This separation of workloads isolates aggressive CPU burners (like build jobs) from desktop applications. Task group autogeneration is currently based upon task tty association.



Traducido:
Esta opción optimiza el planificador para cargas comunes del escritorio mediante la creación y populacion automática de grupos de tareas. Esta separación de cargas de trabajo aísla (aplicaciones) agresivas de tiempo de CPU (como trabajos de compilación) de las demás aplicaciones de escritorio La autogeneracion de grupos de trabajo esta basada actualmente en asociación de tareas por TTY.

Fuente, el archivo de confiugracion: http://pavlinux.ru/krnl/sched_autogroup-2.6.36.patch.bz2


¿existe mejora para los usuarios?

Si y no. Si eres usuario que acostumbra compilar muchas aplicaciones, o usuario de distros basadas en código fuente (Arch Linux, Gentoo, Slackware) y acostumbras compilar desde fuentes seguido y tienes procesadores que sean multi-hilo esta mejora servirá para ti.

Si eres empaquetador de software, haces paquetes deb, rpm o tar.xz.gz entonces tal vez funcione para ti

Si eres administrador de bases de datos, Sysadmin de un servidor o utilizas alguna aplicación que requiera de muchos ciclos del CPU también puede servir para ti.

Si eres un usuario común y corriente, que utiliza una distro basada en paquetes pre compilados (ubuntu/debian/mint/fedora) no te va a servir

Si eres un usuario que utiliza un entorno de escritorio común, y aplicaciones de uso común (firefox, vlc, emesene, pidgin, virtualbox, etc) este parche no hará ninguna mejora para ti.


¿por que el parche no hace ninguna mejora sustancial y visible para usuarios normales?

Un entorno de escritorio
, llámese gnome, kde, xfce, openbox y demás, se ejecuta sobre una sola TTY, así también todas las aplicaciones normales de escritorio se ejecutan sobre la misma TTY. Aquí hay un error de concepto: no confundir emulador de terminal (gnome-terminal, tilda, lxterminal, etc) con TTY de terminal teletipo de computadora. http://en.wikipedia.org/wiki/Data_terminal

Básicamente la agrupación de tareas no afecta a un usuario normal, por que este usuario normal realiza todas sus tareas normales en la misma TTY. Hay una interesante discusión sobre agregar la función a aplicaciones de escritorio de ser ejecutadas en distintas terminales pero su implementacion llevaria años.

Si no sabias que era una TTY, o no utilizas aplicaciones en distintas terminales, entonces el “parche milagroso” no es para ti

Entonces...
¿por que los de Phoronix le dedicaron un post al respecto?

Hay que dejar algo muy claro: Phoronix no es una fuente confiable de información.

Phoronix comento del desarrollo de valve para Linux, ¿fue cierto?
Phoronix comento de que DirectX existiria para Linux (basado en la API de Gallium), ¿acaso esto es cierto?

No es mi intención desvirtuar a Phoronix, pero lo que quiero dar a entender es que no pasa de ser un blog de opinión así que esta sujeto a equivocarse o en este caso, exagerar el titulo de una simple noticia y generar demasiadas expectativas innecesarias.

Mi consejo mas practico es que sigan la fuente de la noticia hasta que encuentren la nota clara y concisa de lo que se trata.

Pero...
¿ y el video que muestran en Phoronix?







El video muestra 3 sencillas cosas: navegación web, reporoduccion de video y compilación, aquí no hay que confundirse, la agrupacion de tareas se ahce efectiva solo que esto no supone una mayor velocidad de compilación, solo una mayor respuesta en el scroll del navegador y menos glitches en la reproduccion del video, nada mas. A todo esto me vienen estas preguntas:

¿Alguien ha hecho o tiene la capacidad de ejecutar un make -j 64?
¿Cuantos compilan programas en situaciones comunes?
¿Hay alguna información de las maquinas utilizadas para ese video?
¿Hay algún benchmark decente que puedan mostrar aparte de glxgears?


Pero en “benchmark” de glxgears muestra que el parche si funciona

Lamentablemente alguien dijo que glxgears era un benchmark, nada mas lejos de la realidad:

Glxgear es una utilitaria de la API glx que pretende dar un estimado de los cuadros por segundo que puede dibujar glx en un especifico chipset gráfico

Glxgears no puede ser tomado como un benchmark verdadero por:
Tiene un bajo conteo de polígonos renderizados.
No maneja texturizado
Solo utiliza sombreado suave, ligero para en rendereo
El paso de rendero consta de 21 llamados a la api de OpenGl, tan pocas llamadas no lo pueden convertir en una prueba de estress de chipsets gráficos

Fuentes:
http://en.wikipedia.org/wiki/GLX
http://wiki.cchtml.com/index.php/Glxgears_is_not_a_Benchmark

Mas importante:

por que glxgears no debe ser tomado como referencia para el “parche mágico”

Simple, el parche mágico es una implementacion del kernel, el kernel trabaja con el procesador y utiliza el gráfico tan solo como un modulo, glxgears maneja solo los cuadros pro segundo que el gráfico es capaz de dibujar



Las modificaciones al kernel no pueden afectar directamente al driver gráfico ni influir directamente en su rendimiento en ningún modo.

Mas info aquí: http://wiki.cchtml.com/index.php/Glxgears_is_not_a_Benchmark


Ok todo bien...
pero yo no utilizo el kernel parchado yo utilizo el método de las 4 lineas de código y el bashrc


Pues lamento informarte que ese método tampoco te es muy útil. Así de simple.
Leenart Poettering posteo en las listas de correo esta solución:




editar el .bashrc:

if [ "$PS1" ] ; then 
mkdir -m 0700 /sys/fs/cgroup/cpu/user/$$
echo $$ > /sys/fs/cgroup/cpu/user/$$/tasks
fi


Luego crear el directorio cgroups, tipo cgroups:

mount -t cgroup cgroup /sys/fs/cgroup/cpu -o cpu
mkdir -m 0777 /sys/fs/cgroup/cpu/user


Lamentablemente esto tampoco le es útil a un usuario común y silvestre, por las razones explicadas antes, ni glxgears demuestra nada tampoco por las razones también expuestas.

Aparte he visto que muchos usuarios andan probando un kernel de desarrollo de la rama 2.6.37, aquí voy a poner por que no es buena idea utilizar un kernel de desarrollo en un usuario normal

Por que su nombre lo dice: en desarrollo, no es estable y en la mayoría de los casos no utilizable.
Muchos de los drivers de uso común no funcionaran en el nuevo kernel.
El brinco de versión en muchas distros (ubuntu entre ellas) es muy alto (de 2.6.35 a 2.6.37-rc), lo cual puede provocar un sistema muy inestable.
Siempre es bueno (si no se sabe al 100% lo que se hace) esperar a que se empaquete la versión del kernel para su distro.
Es muy estúpido utilizar una pieza tan clave del sistema operativo en fase tan beta

No te creo, y creo que te puedo comprobar lo contrario

Adelante! Siempre invito a los demás a comprobar por si mismos lo que estoy diciendo, instalen el “kernel mágico” o el “parche mágico” y denme números que prueben lo contrario. Pero ojo: al referirme a números me refiero a un benchmark hecho y derecho, de antes de la implementación y después de la implementación, por favor, sin números de glxgears ni suposiciones de “a mi firefox me anda mas rápido” que eso puede ser efecto placebo, números fríos y concisos de la mejora y una (solo una) razón del por que esos números y esa mejora suponen una mejora para ustedes.

Para hacer benchmarks hay de muchas:

Interbench: http://users.on.net/~ckolivas/interbench/
Linux benchmark suite: http://lbs.sourceforge.net/
Phoronix test suite (no todo lo de ahí es malo): http://www.phoronix-test-suite.com/

Hagamos pruebas y dejemos de repetir las mentiras de alguien mas ¿sale?

Yo hice mi benchmark y descubrí la verdad, aquí el prebench y aquí el post bench. , a quien realmetne este itneresado le puedo explicar que diablso significan esos numeros, a los flojos les puedo decir: es el parche magico aplicado diciendo "no hago milagros!"

Esto lo hago con la intencion de mejorar el material aqui publicado y con ganas de romper un mito que se ha extendido por mas de una semana, basado en rumores y resultados ajenos a las personas qeu lo postean, espero tengan el criterio suficiente para no seguir difundiendo FUD sonre el software libre y simples parches a el.

Saludos
Datos archivados del Taringa! original
0puntos
2,555visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
7visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

L
Lucain🇦🇷
Usuario
Puntos0
Posts18
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.