Inicio > General > Linux vs Windows con x264 64bits

Linux vs Windows con x264 64bits

Domingo, 20 de septiembre de 2009 affar Dejar un comentario Ir a comentarios

Esta es una mini-prueba de fuerza bruta sobre el uso de CPU a la hora de comprimir vídeo.

ORDENADOR UTILIZADO EN AMBOS CASOS

  • CPU: 2.33 QUAD 8200 sin OC
  • RAM: 6GB DDR – 1066
  • T.Gráfica: ATI HD2600 XT
  • Monitor: ASUS / 1920 x 1080 de resolución
  • Disco Duro: 500Gb seagate para Windows 7 y 250Gb para Ubuntu, ambos con SATA.
  • Source de Vídeo: Utilización de los primeros 10.001 frames de Elephants Dreams de la RAW PNG a 1920×1080. Utilizado avs2yuv para convertir los frames en PNG a formato YUV para ser interpretado directamente por el encoder x264 sin la necesidad de un interprete adicional.

LINUX – Ubuntu 9.04 64bits (Instalado)

En Linux no existe la facilidad para encontrar el x264 compilado, así que se ha obtenido compilando con GCC 4.4.0 mediante los siguientes pasos:

sudo apt-get update
sudo apt-get install build-essential subversion git-core checkinstall yasm

cd
git clone git://git.videolan.org/x264.git
cd x264
./configure
make
sudo checkinstall –fstrans=no –install=yes –pkgname=x264 –pkgversion “1:0.svn`date +%Y%m%d`-0.0ubuntu1″ –default

WINDOWS 7 -RTM – 64Bits

En windows he decidido probar dos versiones:

  • Compilado con GCC 4.2.4: gcc 4.3.4 20090220 Komisar make fprofiled
  • Compilado con ICC (Intel C++ Compiler (icc) v11.1.038)

PREPARACIÓN DE EQUIPO

En WINDOWS 7 y en UBUNTU 9.04 esta todo lo no indispensable desactivado:

  • Antivirus
  • Cualquier tipo de mensajería
  • Navegadores
  • Salvapantallas

Y en ambos casos se han realizado las pruebas después de un reinicio, para evitar cualquier problema con programas mal cerrados.

RESULTADOS (Utilizados los Preset Medium y Slow)

Ubuntu – x264 GCC:

Preset Medium

  • x264 –pass 1 –bitrate 4000 –preset medium video.yuv –stats stats.tmp –psnr –ssim -o linux-medium.mkv 1920×1080
  • encoded 10001 frames, 19.93 fps, 4058.74 kb/s
  • x264 –pass 2 –bitrate 4000 –preset medium video.yuv –stats stats.tmp –psnr –ssim -o linux-medium.mkv 1920×1080
  • encoded 10001 frames, 13.21 fps, 4001.25 kb/s

Preset Slow

  • x264 –pass 1 –bitrate 4000 –preset slow video.yuv –stats stats.tmp –psnr –ssim -o linux-slow.mkv 1920×1080
  • encoded 10001 frames, 11.67 fps, 4052.39 kb/s
  • x264 –pass 2 –bitrate 4000 –preset slow video.yuv –stats stats.tmp –psnr –ssim -o linux-slow.mkv 1920×1080
  • encoded 10001 frames, 7.46 fps, 4001.41 kb/s

Windows – x264 GCC:

Preset Medium

x264 –pass 1 –bitrate 4000 –preset medium video.yuv -
-stats stats.tmp –psnr –ssim -o windows-medium.mkv 1920×1080
  • x264 –pass 1 –bitrate 4000 –preset medium video.yuv --stats stats.tmp –psnr –ssim -o windows-medium.mkv 1920×1080
  • encoded 10001 frames, 20.05 fps, 4059.16 kb/s
  • x264 –pass 2 –bitrate 4000 –preset medium video.yuv --stats stats.tmp –psnr –ssim -o windows-medium.mkv 1920×1080
  • encoded 10001 frames, 13.98 fps, 4001.27 kb/s

Preset Slow

  • x264 –pass 1 –bitrate 4000 –preset slow video.yuv --stats stats.tmp –psnr –ssim -o windows-slow.mkv 1920×1080
  • encoded 10001 frames, 11.70 fps, 4054.04 kb/s
  • x264 –pass 2 –bitrate 4000 –preset slow  video.yuv --stats stats.tmp –psnr –ssim -o windows-slow.mkv 1920×1080
  • encoded 10001 frames, 7.88 fps, 4001.36 kb/s

Windows – x264 ICC:

Preset Medium

  • x264-r1259_64b.[ICC] –pass 1 –bitrate 4000 –preset medium video.yuv –stats stats.tmp –psnr –ssim -o windows-medium-IC.mkv 1920×1080
  • encoded 10001 frames, 20.16 fps, 4058.75 kb/s
  • x264-r1259_64b.[ICC] –pass 2 –bitrate 4000 –preset medium video.yuv –stats stats.tmp –psnr –ssim -o windows-medium-IC.mkv 1920×1080
  • encoded 10001 frames, 14.40 fps, 4001.25 kb/s

Preset Slow

  • x264-r1259_64b.[ICC] –pass 1 –bitrate 4000 –preset slow video.yuv –stats stats.tmp –psnr –ssim -o windows-slow-IC.mkv 1920×1080
  • encoded 10001 frames, 11.98 fps, 4052.61 kb/s
  • x264-r1259_64b.[ICC] –pass 2 –bitrate 4000 –preset slow video.yuv –stats stats.tmp –psnr –ssim -o windows-slow-IC.mkv 1920×1080
  • encoded 10001 frames, 8.21 fps, 4001.46 kb/s

CONCLUSIÓN

Es complicado determinar un ganador a la hora de realizar una comparativa de este tipo. El compilador que se utilice a la hora de crear el encoder x264, será el que determine que SO será mas veloz. En las pruebas presentadas windows vence a Linux (Ubuntu 9.04 – 64b), tanto utilizando el compilador gratuito GCC como el de pago de Intel ICC. Pero la diferencia es mínima (1%-2%), por no decir inapreciable.

Cabe reseñar despues de las pruebas, que las diferencias que existen en ambos SO a la hora de comprimir no son tanto como se pueda pensar, quedando prácticamente igualados en este campo, la fuerza bruta de la CPU.

PROGRAMAS UTILIZADOS PARA LAS PRUEBAS

Categories: General Tags:
  1. Martes, 11 de enero de 2011 a las 17:48 | #1

    Muy buena comparativa. Yo también he hecho mis pruebas utilizando las mismas presets medium con la rev.1834 GCC. El resultado:
    Ordenador: AMD Phenom II X6 1090T, 16GB DDRIII 1800, nVidia 9600GT
    Linux (Fedora Core 14 x64):
       38.23 fps / 26.41 fps
    Windows (7 x64 Ultimate):
       37.72 fps / 26.18 fps
     
    Curiosamente a mi me va mas lento en Windows, aunque como has dicho, la diferencia es inapreciable. Lo que si que hay que reseñar es que en ambos casos las pruebas las hice con el SO recién instalado, lo que en Fedora significa todo lo necesario ya está instalado y en ejecución, y en Windows aún habría que ponerle un antivirus y firewall decentes como mínimo…

  2. affar
    Martes, 11 de enero de 2011 a las 19:01 | #2

    Gracias por adjuntar tu propia experiencia. Ya ha pasado un tiempo desde que hice esta pequeña comparación y quizás haya cambiado todo desde entonces.

    Como se puede ver en tu prueba, efectivamente la diferencia entre un sistema y otro es realmente pequeño. Y donde esto importa es a efectos productivos de industria, quedando a nosotros simple usuarios como algo anecdótico.

    Saludos

  1. Sin trackbacks aún.