miércoles, 2 de marzo de 2011

Comparador de performance online para CPU, GPU, etc.

No sé si es un hallazgo, pero no dejó de impresionarme tener tanta información para poder decidir sobre uno u otro producto:

http://www.anandtech.com

martes, 1 de marzo de 2011

¿Priorizando relación precio-prestaciones? No siempre.

Estuvimos analizando las tablas comparativas de las distintas placas. El análisis resultante es el siguiente:

Serie Tesla: precios muy elevados. Gama muy alta de placas sin siquiera salida de video (son sólo para procesamiento). Tienen soporte para escalar horizontalmente (más placas) por driver. Cuenta con buena performance para doble precisión (DP) -de aprox. 1/2 respecto de simple precisión- y soporte ECC para la memoria (un problema bastante frecuente en GPGPU es la alta tasa de error en memorias) en varios modelos.

Serie Quadro: uso compartido entre cálculo y gráficas de alta calidad. Al igual que la Tesla, tienen soporte ECC para algunos modelos (aunque el costo es mucho más elevado) y buen manejo de DP.

Serie Quadro FX: muy mala en comparación con la anterior. Orientada a video juegos por completo. Los costos no disminuyen en todos los casos.

Serie GTX500: muy buena relación precio-prestaciones. Son modelos nuevos bastante competitivos con buenas velocidades, cantidad de memoria, ancho de banda, cores CUDA, etc. Lamentablemente no tienen soporte DP de calidad (1/8 respecto de simple precisión. Ver Ref.) ni ECC en ningún caso. La 580 está algo sobrevaluada por ser la más nueva de las placas. La 560 es la más barata y aún así no reduce mucho las características.

Serie GTX400: al parecer va a quedar obsoleta. Prestaciones similares a la serie 500 con costos más elevados. Quejas de usuarios por performance, ruidos molestos ¿? :), etc.

Serie GTS450: muy buena opción económica. El precio es muy bueno para las características generales. Lamentablemente estamos buscando un nivel más alto de paralelismo.


Conclusiones finales:
Tesla descartada por excesivo. Quadro se vuelve muy caro por importación y las tarjetas con ECC de por sí duplican el costo. En cualquiera de los casos no se prevé hacer uso intensivo de DP de cálculo con lo cual se opta por series GTX500 o GTX400. 
Dado que la serie 500 posee mejores perspectivas a futuro, nos quedamos con ella. Se descarta la placa 580 por ser la última de la serie y tener un costo excesivo. Finalmente nos quedamos con la GTX570 sobre la 560 por tener mejores prestaciones. Aunque se reconoce que la 560 posee una mejor relación precio-características se opta por el modelo siguiente para tener una PC más competitiva y amortizar durante un lapso más grande (meses) el tiempo invertido en la compra, instalación, puesta a punto, capacitación y pruebas.


miércoles, 23 de febrero de 2011

Buscando la placa

Primera lista de opciones:
  • Propuestas por en "GPUs, a new tool of acceleration in CFD: Efficiency and reliability on Smoothed Particle Hydrodynamics methods": GTX 260, TESLA M1060, GTX 285, GTX 480
  • Propuestas por contactos de España: GTX580, GTX570
  • Propuestas por amigos de Argentina: GTX480, QUADRO6000, GTX560
  • Propuesta por contactos de Exactas: GT450
Resumen de las características y disponibilidades:



    Procesadores
    Performance
    Memoria
    Modelo
    Cores
    Clock [Mhz]
    (c/u)
    Single [Gflops]
    Double [Gflops]
    Tam. [GB]
    Clock [Ghz]
    Ancho de Banda
    [GB/sec]
    Tipo
    Precio estimado [us$]
    Link
    TeslaM20504481.15103051531.55148GDDR5 ECC>us$ 2400 (amazon)Nvidia
    TeslaM10602401.39337840.8102GDDR3>us$ 1600 (amazon)Nvidia
    Quadro50003520.5137183592.50.75120GDDR5 ECCus$ 1800 (amazon)Nvidia
    Wiki
    Quadro40002560.47548624320.789GDDR5us$ 810 (amazon)Nvidia
    Wiki
    GTX5805121.515811.52192GDDR5us$ 790Nvidia
    Wiki
    GTX4804801.413441.51.8177GDDR5us$ 650Nvidia
    Wiki
    QuadroFX1800640.5502640.7680.838.4GDDR3us$ 600Nvidia
    Wiki
    GTX5704801.4614051.281.9152GDDR5us$ 560Nvidia
    Wiki
    GTX5603841.6412631?128GDDR5us$ 410Nvidia
    Wiki
    GTS4501921.560111.857.7GDDR5us$ 220Nvidia
    Wiki



    Los números en rojo para los GFlops resultan muy extraños en comparación con las placas de gama alta. Dado no hay soporte para doble precisión salvo en gama alta, es de esperar que para comparar con gama alta haya que tomar ambos GFlops (SP y DP) y aplicar un factor de escala.
    Las placas Quadro FX580 y el Quadro FX4500 (disponibles en Argentina) se descartan por tener pocas prestaciones.







    Cambio de planes: sin sensores, con imágenes

    Al parecer la solución con sensores podría traer muchas complicaciones:

    • son necesarios en cantidad con lo cual la instalación demanda tiempo
    • son muy intrusivos, el fluido puede variar del comportamiento original
    • el ruido que conllevan puede ser muy elevado en momentos donde los actuadores de plasma estén funcionando
    Para que la experiencia sea realizable, se opta por tomar y procesar imágenes del fluido descartando otro tipo de sensores. Del procesamiento se obtendrá la información requerida, como ser el campo de velocidades, y se realizará el feedback que necesita el controlador.
    Pero el empleo de grandes imágenes como origen de datos requiere de mayor tiempo de CPU aplicado a su procesamiento. Dado que se plantea realizar un sistema real-time no se puede dejar de tomar este punto como un futuro problema. La posible solución recae en paralelizar el procesamiento de las imágenes, dividiéndolas y obteniendo información rápida para actuar en el lazo de control. Para poder aplicar el nivel de procesamiento indicado será necesario utilizar programación de GPU. Ver http://en.wikipedia.org/wiki/GPGPU.

    Si bien esto no es parte de la tesis original dá un vuelco completo al posible título. Además, es necesario elegir el hardware adecuado e instalarlo. Esto posiblemente lleve algunas semanas.

    El problema inicial

    Lugar: Laboratorio de Fluidodinámica - Facultad de Ingeniería - UBA

    Participantes:
    • Guillermo Artana
    • Ada Camilleri
    • Thomas Duriez
    • Resto del personal del laboratorio.

    Problema: realizar un sistema que controle de forma automática el fluido bajo cierta experiencia pautada. Se plantea el uso de un experimento prototípoco con un cilindro en el tunel de viento con el objetivo de reducir las turbulencias en la estela que se forma.

    Solución: los sistemas de lazo cerrado real-time sobre fluidos no suelen implementarse con buenos resultados, básicamente por sus problemas de performance. Se desea intentar este tipo de solución con la ayuda de una placa gráfica que permita el speed-up suficiente para montar la experiencia con buenos resultados.

    El laboratorio cuenta con una experiencia de simulación realizada en colaboración por Ada Camilleri y Lionel Mathelin sobre un sistema de control de fluido basado en la identificación del sistema con un modelo ARX. La idea es llevar esta simulación a la implementación real de la experiencia.

    martes, 1 de febrero de 2011

    Los primeros pasos

    Pasos para hacer una tesis de Ingeniería en Informática:

    • juntar coraje
    • buscar un tema. Admite diversas variantes: teórica, de aplicación ingenieril o de aplicación científica. Me quedé con la última.
      • tomar nota de los posibles laboratorios a visitar. Lleva un tiempo leer las reseñas de todos: Laboratorios en FIUBA
      • recorrer los laboratorios que te resulten más interesantes preguntando por las experiencias y líneas de investigación que tienen.
      • tomar nota de todo.
      • pedir algunas referencias o papers para investigar las mejores alternativas.
      • optar por una que resulte interesante, la gente del laboratorio esté disponible y parezca alcanzable.
    • conseguir un tutor
    • arrancar
    • armar un blog