7 de julio de 2015

Como medir el rendimiento de nuestra GPU

Ya KZKG^Gaara nos mostró como medir el rendimiento de nuestros discos duros o la CPU de nuestros ordenadores, y ahora les muestro como medir el rendimiento de la GPU (a.k.a Graphics Processor Unit), o Unidad de Procesamiento Gráfico en español.

Para ello podemos usar dos herramientas glmark2 y glx-gear, el cual se incluye dentro del paquete mesa-utils. 

GLX-Gear

GLX-Gear como dije antes es parte del paquete mesa-utils y digamos que es de las dos opciones que muestro hoy la más conocida o popular, sin embargo, no por eso es la mejor. Una vez que tengamos instalado el paquete mesa-utils la lanzamos ejecutando en un terminal:

$ glxgears

lo cual nos mostrará unas ruedas dentadas moviéndose, algo como esto:

GLX-Gears

Mientras tanto en el terminal va arrojando las estadísticas, que en mi caso fueron:

Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
467 frames in 5.0 seconds = 93.200 FPS
385 frames in 5.0 seconds = 76.835 FPS
300 frames in 5.0 seconds = 59.873 FPS
406 frames in 5.0 seconds = 80.952 FPS
438 frames in 5.0 seconds = 87.493 FPS
399 frames in 5.0 seconds = 79.626 FPS
300 frames in 5.0 seconds = 59.871 FPS
300 frames in 5.0 seconds = 59.873 FPS
300 frames in 5.0 seconds = 59.869 FPS
300 frames in 5.0 seconds = 59.868 FPS
413 frames in 5.0 seconds = 82.424 FPS
324 frames in 5.0 seconds = 64.662 FPS

GL Mark 2

Por lo que estuve probando, es mucho más completa que GLX-Gear y mide parámetros como buffer, construcción, texturas, iluminación, sombras, terrenos… etc. Esta herramienta fue desarrollada por el equipo de una distribución enfocada en procesadores ARM llamada Linaro.

Para instalarla en Ubuntu y derivados solo tenemos que ejecutar:

$ sudo apt-get install glmark2

y en el caso de ArchLinux y derivados debemos hacerlo desde AUR:

$ yaourt -S glmark2

posteriormente abrimos un terminal y lanzamos el test escribiendo:

$ glmark2

GLMark2 nos va mostrando una serie de secuencias mientras va imprimiendo en la consola las estadísticas.

GLMark2

 

GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2 GLMark2

En mi caso particular, con una GPU integrada de Intel me devolvió:

=======================================================
    glmark2 2014.03
=======================================================
    OpenGL Information
    GL_VENDOR:     Intel Open Source Technology Center
    GL_RENDERER:   Mesa DRI Intel(R) Ivybridge Mobile 
    GL_VERSION:    3.0 Mesa 10.6.1
=======================================================
[build] use-vbo=false: FPS: 640 FrameTime: 1.562 ms
[build] use-vbo=true: FPS: 641 FrameTime: 1.560 ms
[texture] texture-filter=nearest: FPS: 768 FrameTime: 1.302 ms
[texture] texture-filter=linear: FPS: 786 FrameTime: 1.272 ms
[texture] texture-filter=mipmap: FPS: 866 FrameTime: 1.155 ms
[shading] shading=gouraud: FPS: 506 FrameTime: 1.976 ms
[shading] shading=blinn-phong-inf: FPS: 536 FrameTime: 1.866 ms
[shading] shading=phong: FPS: 496 FrameTime: 2.016 ms
[shading] shading=cel: FPS: 525 FrameTime: 1.905 ms
[bump] bump-render=high-poly: FPS: 226 FrameTime: 4.425 ms
[bump] bump-render=normals: FPS: 915 FrameTime: 1.093 ms
[bump] bump-render=height: FPS: 898 FrameTime: 1.114 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 559 FrameTime: 1.789 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 260 FrameTime: 3.846 ms
[pulsar] light=false:quads=5:texture=false: FPS: 646 FrameTime: 1.548 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 188 FrameTime: 5.319 ms
[desktop] effect=shadow:windows=4: FPS: 365 FrameTime: 2.740 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 363 FrameTime: 2.755 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 498 FrameTime: 2.008 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 385 FrameTime: 2.597 ms
[ideas] speed=duration: FPS: 537 FrameTime: 1.862 ms
[jellyfish] : FPS: 361 FrameTime: 2.770 ms
[terrain] : FPS: 48 FrameTime: 20.833 ms
[shadow] : FPS: 270 FrameTime: 3.704 ms
[refract] : FPS: 73 FrameTime: 13.699 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 750 FrameTime: 1.333 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 800 FrameTime: 1.250 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 774 FrameTime: 1.292 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 791 FrameTime: 1.264 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 811 FrameTime: 1.233 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 794 FrameTime: 1.259 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 798 FrameTime: 1.253 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 764 FrameTime: 1.309 ms
=======================================================
                                  glmark2 Score: 564 
=======================================================

por supuesto, supongo que a mayor FPS (Frames por Segundos), mejor posibilidades tendremos de ejecutar juegos o ver vídeos en altas resoluciones, pero no estoy muy ducho en el tema..

En realidad nos queda una tercera opción, pero es para realizar tests mucho más violentos por decirlo de alguna forma. Para ello debemos descargar unas herramientas que nos ofrece de forma gratuita Unigine.


Fuente: Desde Linux

0 comentarios: