Aumentar la velocidad de Ubuntu, Arch Linux y Fedora agregando 4 lineas de código

Ubuntu

Hace poco les posteamos aquí una entrada donde explicábamos por encima el asunto del parche de 200 lineas de código que mejoraba el rendimiento de los sistemas linux al momento de lidear con tareas simultaneas. Por otro lado, hoy leyendo el blog de Usemos Linux me encontré con esta noticia que nos explica rápidamente en que siguió la novela del parche milagroso:

Para hacer la historia corta, hace unos días uno de los desarrolladores del kernel subió un patch (de 200 líneas de código) que permitía mejorar considerablemente (casi una 10 veces) el rendimiento del sistema, especialmente al lidiar con el multitasking durante la ejecución de una tarea pesada (como compilar el kernel). Linus felicitó a este desarrollador por su gran aporte. No obstante, un desarrollador de Red Hat, Lennar Poettering, no estaba de acuerdo en implementar esa mejora directo desde el kernel; para él era mejor hacer los cambios en el espacio de usuario (~/.bashrc). Linus se enojó e increpó a este desarrollador, diciéndole que los resultados hablaban por sí mismos. Lennar, en vez de responder con palabras duras, se sentó e ideó una alternativa (que no precisa de parchear el kernel) y que ocupa apenas 4 líneas. En definitiva, le cerraron el pico a Linus…

Y bueno, lejos de ser para nosotros (los usuarios) un asunto que perjudique, bien tenemos aquí otra alternativa al multicitado parche y disponible para usuarios Ubuntu, Fedora y Arch Linux.

En Fedora:

1.- Editá el archivo ~/.bashrc.

gedit ~/.bashrc

2.- Pegá el siguiente código al final del archivo:

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

3.- Ejecutá los siguientes comandos:

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

En Ubuntu:

1.- Editá el archivo rc.local con este comando:

mkdir -p /dev/cgroup/cpu
mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
mkdir -m 0777 /dev/cgroup/cpu/user
echo «/usr/local/sbin/cgroup_clean» > /dev/cgroup/cpu/release_agent

2.- Guardá el archivo y otorgale permisos de ejecución:

sudo chmod +x /etc/rc.local

3.- Editá el archivo ~/.bashrc:

gedit ~/.bashrc

4.- Pegá el siguiente código al final del archivo:

if [ «$PS1» ] ;
then mkdir -m 0700 /dev/cgroup/cpu/user/$$
echo $$ > /dev/cgroup/cpu/user/$$/tasks
echo «1» > /dev/cgroup/cpu/user/$$/notify_on_release
fi

5.- Modificá el archivo cgroup_clean:

sudo gedit /usr/local/sbin/cgroup_clean

6.- Pegá el siguiente código al final del archivo:

#!/bin/sh
rmdir /dev/cgroup/cpu/$*

7.- Guardá el archivo y otorgale permisos de ejecución:

sudo chmod +x /usr/local/sbin/cgroup_clean

8.- Reiniciá el sistema.

En Arch Linux:

Vía | Usemos Linux

4 comentarios en “Aumentar la velocidad de Ubuntu, Arch Linux y Fedora agregando 4 lineas de código”

  1. me asalta una duda
    i.- Editá el archivo rc.local con este comando:
    mcdir -p /dev/cgroup/cpu
    mount -t cgroup cgroup /dev/cgroup/cpu -o cpu
    mcdir -m 0777 /dev/cgroup/cpu/ser
    echo ?/usr/local/sbin/cgroup_clean? > /dev/cgroup/cpu/rel

    agrego estos comandos o lo uso. ya que el primer paso es algo ambiguo

  2. En Fedora, cuando coloco los comandos

    mount -t cgroup cgroup /sys/fs/cgroup/cpu -o cpu
    mcdir -m 0777 /sys/fs/cgroup/cpu/serm

    e aparece:

    mount: el punto de montaje /sys/fs/cgroup/cpu no existe

    mcdir: no se puede crear el directorio «/sys/fs/cgroup/cpu/ser»: No existe el fichero o el directorio

    ¿qué hago? Gracias.

Responder a monitolinux Cancelar respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *