viernes, 30 de diciembre de 2016

Descargar rápido con Steam en Ubuntu (actualizado)

Estos días Steam está con las ofertas navideñas con interesantes descuentos. Y cómo no, las líneas de Internet están quemándose descargando videojuegos.

Los usuarios de GNU Linux se pueden encontrar con una desagradable sorpresa y es que hay un bug que impide descargar al máximo de velocidad con la conexión que tengas.

El bug en cuestión satura de peticiones DNS la red. Ubuntu incluye por defecto un sistema de DNS con el paquete dnsmasq-base.


Network Manager, que es el programa gestor de red usado en Ubuntu, lanza una instancia del programa dnsmasq, usado para encontrar la dirección IP correspondiente a las direcciones web a las que se quiera acceder.

Hay que activar la caché para este programa. Basta con añadir un archivo en /etc/NetworkManager/dnsmasq.d/ con una línea tal que así:

cache-size=100

Esto permitirá recordar a dnsmasq las IPs de direcciones buscadas previamente. Si navegáis por multitud de páginas distintas, podéis poner un número más grande. Yo lo he dejado en 1000.

Una vez añadido ese archivo (de nombre options.conf por ejemplo), hay que reiniciar el Network Manager:

sudo service network-manager restart

Se puede probar fácilmente. Sabiendo que el comando con el que se ejecuta dnsmasq bajo órdenes de Network Manager es el siguiente:

/usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts --bind-interfaces --pid-file=/var/run/NetworkManager/dnsmasq.pid --listen-address=127.0.1.1 --cache-size=0 --conf-file=/dev/null --proxy-dnssec --enable-dbus=org.freedesktop.NetworkManager.dnsmasq --conf-dir=/etc/NetworkManager/dnsmasq.d 

Sólo tenemos que usar la IP 127.0.1.1 para hacer resolución de nombres. El comando dig permite hacerlo.

dig @127.0.1.1 aguasmenores.blogspot.com
;; Query time: 36 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)

 

dig @127.0.1.1 aguasmenores.blogspot.com
;; Query time: 0 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)

 
El tiempo de respuesta se ve reducido a 0 msec. Sin activar la caché siempre será superior a 0. Si os fijáis, el comando de Network Manager pone la opción --cache-size=0. Lo que hay en el archivo de configuración tiene prioridad por lo que no pasa nada. De otro modo las pruebas con dig no hubieran salido bien.

Configurar Network Manager evita instalar los scripts para correr dnsmasq con systemd a modo de demonio de sistema vinculado a una interfaz de red concreta (es decir, que la resolución de nombres de esa interfaz -típicamente eth0-) se hace vía el dnsmasq arrancado con systemd y no el arrancado por Network Manager, que continua gestionando otras interfaces).

Probado en Ubuntu 16.10.

Este bug de Valve lleva así varios años. Algún día lo corregirán. Mientras habrá que instalar dnsmasq. Si no, la velocidad de red queda limitada a 500KiB/s en vez de decenas de MiB/s.


Si reiniciais el network manager durante una descarga activa en Steam, es posible que Steam se cierre. A mí me ha pasado.
Si no os funciona la caché quizá en vuestra versión de Ubuntu Network Manager no use el plugin DNS para conectar con el dnsmasq local. Para cargar dicho plugin, en el archivo /etc/Network/Manager/NetworkManager.conf debe aparecer la opción dns=dnsmasq en la sección main:
[main]
...
dns=dnsmasq


Si por lo que sea no tenéis Network Manager instalado, entonces instalad dnsmasq a secas. dnsmasq y Network Manager crean conflictos, así que si hay Network Manager entonces sólo dnsmasq-base tiene que estar instalado. Si no hay Network Manager entonces dnsmasq debe estar instalado (que también instalará dnsmasq-base, proveyendo el ejecutable).


Eso es todo.

Ah, una cosa más. Si quieres que las compras que hagas en Steam cuenten como compra realizada para GNU Linux, debes descargar el programa en GNU Linux y arrancarlo bajo GNU Linux unos minutos. Si no lo haces, es decir, si solo lo compras y antes de ejecutarlo en GNU Linux lo haces en Windows entonces contará para Windows ;-(

jueves, 22 de diciembre de 2016

Firefox con multiproceso, extensión Add-on Compatibility Reporter

Firefox lleva ya unos meses implementando multiproceso. Pero aún hay usuarios que no tendrán multiproceso activo por tener extensiones incompatibles. Si ese es el caso hay dos opciones:
  • Quitar esas extensiones
  • Continuar sin multiproceso
  • Notificar a los creadores de esas extensiones + cualquiera de las dos opciones anteriores
Este post va de la última opción. Para notificar a los creadores de las extensiones podemos instalarnos el Add-on Compatibility Reporter. Esto nos dejará un botón con forma de pieza de puzzle en la barra de herramientas.


Puedes reportar las extensiones incompatibles como que no funcionan marcando la X. Luego le das a submit. Por cada extension marcada como que no funciona te indicará que pongas un comentario. Basta con un "extension is not compatible with multiproces".
Se puede hacer lo mismo desde el cuadro de diálogo Herramientas->complementos:




Esta extensión también te permite saber si tu navegador tiene el multiproceso activo o no. Firefox multiproceso (o con Electrolysis) es más rápido y más estable. La propia Mozilla informa de una mejora del 36% en estabilidad.

miércoles, 14 de diciembre de 2016

AMD Zen @ 3.4 Ghz vs. Core i7 2630QM @ 2.3 Ghz

AMD ha hecho hoy una preview de los procesadores que lanzará en el primer trimestre de 2017. Un par de benchmarks medidos y luego una serie de demos mostrando que es un chisme a la altura de Intel. Frecuencias finales, precio, etc. aún quedan por saberse.

Mientras, en la web de AMD se puede descargar el modelo 3D usado en la demo de Blender:


Editado: La web en español de AMD no contiene el enlace para descargar el modelo 3D que aparece en la imagen de arriba. En la web inglesa sí que aparece. Y el link al archivo Blender.
Editado: AMD va actualizar el archivo que tienen colgado en la web para que venga preconfigurado a 150 muestras por píxel en vez de 200. El valor de 150 es el usado en la preview. Los chicos de HardOCP se pusieron en contacto con AMD al no poder reproducir los resultados con un Core i7 6900K, el usado en la demo comparativa. Los tiempos y speedup han cambiado, así como las frecuencias de TurboBoost. También incluyo una tabla con el resto de modelos previstos de la gama Ryzen.

He hecho una prueba (Ubuntu 16.10 LTS) y el procesador que uso habitualmente ha tardado 1 minutos y 52 segundos versus los 35.5 segundos en la demo comparativa con Windows 10 (Cycles Render). Eso es 3.15x veces más rápido. Superior a la mejora en número de núcleos por mejora en frecuencia (2*1.44 ~= 2.89x). Por tanto debe de tener también un IPC mejor.
Aceleración de Ryzen, 8 núcleos 16 hilos, sobre el Core i7 quadcore, 4 núcleos 8 hilos


En el caso de la preview, lo nuevo de AMD iguala o supera al homólogo de Intel a pesar de funcionar con una frecuencia más baja. En HardOCP fijaron el 6900K a 3.5 Ghz y obtuvieron el mismo tiempo.

Además, según filtraciones recientes el top de AMD costará 500 dólares versus los 1100 dólares del Intel. Esto significaría 8 núcleos para las masas 9 años después de salir el primer 4 núcleos en el año 2007, el Core 2 Quad Q6600. Según esa filtración también habrá opciones más baratas, véase la tabla siguiente:


Zen SR7Zen SR7Zen SR5Zen SR3
L2 Cache 4MB4MB 3MB2MB
L3 Cache 16MB 16MB12MB8MB
Cores 8 864
Threads 16 16128
Power 95W 95W65W65W
Core Clock 3.2GHz 3GHzTBATBA
Turbo Clock 3.5GHz 3.2GHz TBATBA
MSRP $499 $349 $249$149
Launch Enero EneroMarzoMarzo

Uno de 8 nucleos con menor frecuencia y luego uno de 6 y otro de 4. Esta tabla es anterior a la preview que hizo AMD el 13 de diciembre de 2016. La frecuencia actual es de 3.4 Ghz de base para 8 núcleos, no 3 Ghz. Aún puede aumentar. Todo bajo un TDP de 95W. El Core i7 6900K tiene un TDP de 140W.

¿Estará basado en el chip de verdad?

lunes, 5 de diciembre de 2016

Cambiar el color de fondo y del documento en LibreOffice 5

En LibreOffice se puede personalizar la interfaz. Una de las posibles personalizaciones es los colores.
La interfaz normal de LibreOffice luce tal que así:


Pero se puede poner así, menos dañino a la vista:

Para hacerlo, basta con ir al menú Herramientas->Opciones:


Nótese que esto no son las propiedades del documento. Es decir, si lo imprimís, las páginas no se imprimirán con dichos colores. Hay varios componentes de la interfaz y cada uno se puede poner con el color elegido. Podéis guardar el esquema de colores para poder cambiar fácilmente entre los valores por defecto y los que hayáis puesto vosotros.

sábado, 3 de diciembre de 2016

Steam en Ubuntu 16.10

Si usáis Steam y os encontráis con que no podéis abrirlo en la última versión de Ubuntu, no os preocupéis porque es normal. Hay una serie de bibliotecas que Steam lleva consigo y que son incompatibles con Ubuntu por ser demasiado antiguas. Steam sigue usando bibliotecas de Ubuntu 12.04, de cuando salió para GNU Linux. Y además, en 32 bits.

Para solucionarlo, vamos a reinstalar Steam y poner en una lista negra (eliminar) las bibliotecas que Steam usa, para forzar la carga de las que lleva consigo Ubuntu 16.10. Si os queréis ahorrar este post, el mismo procedimiento lo podéis encontrar en Reddit.

  1. Eliminar el lanzador actual de Steam:
    sudo apt purge steam-launcher
  2. Eliminar el repositorio de steam:
    sudo rm /etc/apt/sources.list.d/steam.list.distUpgrade
  3. Hacer una copia de seguridad de los datos locales, para no tener que volver a descargar los videojuegos:
    cp -r ~/.local/share/steam/steamapps ~/Escritorio
    cp -r ~/.local/share/Steam/userdata ~/Escritorio
  4. Borrar los directorios locales: 
    rm -rf ~/.steam && rm -rf ~/.local/share/Steam
  5. Actualizar la información de paquetes disponibles:
    sudo apt update
  6. Instalar Steam desde los repositorios de Ubuntu:
    sudo apt install steam
  7. Añadir las bibliotecas en la lista negra:
    sudo vim /usr/games/steam
    find $runtime -name libgcc_s.so\* -delete
    find $runtime -name libxcb.so\* -delete
  8. Si usáis un portátil con Optimus, añadir el comando optirun al acceso directo:
    sudo vim /usr/share/applications/steam.desktop
    Exec=optirun /usr/games/steam %U
  9. Recuperar los videojuegos:
    cp -r ~/Escritorio/steamapps ~/.local/share/steam/
    cp -r ~/Escritorio/userdata ~/.local/share/Steam/
  10. Lanzar Steam.