Como algunos de mis lectores saben, en mi trabajo, el principal problema con el que me encuentro es el manejar grandes cantidades de datos de forma eficiente.
Necesito trabajar con varios Gigabytes de imágenes y visualizarlas en tiempo real. Por suerte no necesito visualizarlas todas a la vez.

Como es de suponer, no puedo almacenar toda esa cantidad de información en la memoria RAM del ordenador, ni mucho menos en la de la GPU, por lo que hemos implementado una caché tipo LRU .
El problema reside en que cada frame he de dibujar una docena de imágenes nuevas (que he de cargar del disco, si no están en la caché). Suponiendo un frame-rate de 30 FPS, nos deja tan solo 33.3 ms para cargar las nuevas imágenes, es decir unos 2.5 ms por imágen a cargar.

Como supondreis, las imágenes estan comprimidas en disco por lo que en esos 2.5 ms hemos de cargar la imagen, descomprimirla y enviarsela a la GPU. Tambien hay que tener en cuenta que si un frame no nos da tiempo a cargar todas las nuevas imágenes, en el siguiente tendremos más a cargar…

Por eso, me pregunto ¿cómo hace ésta gente para mover estas cantidades de datos en tiempo real?


El video pertenece a una conferencia del TED2007.
Link a la charla: http://www.ted.com/index.php/talks/view/id/129



Comments

  1. 1
    kraptor
    Junio 26th, 2007 at 10:18 am

    ¡Lo mejor del vídeo es la camiseta con el helado! ¡Quiero una como esa!

    Ahora en serio, menuda pasada!

  2. 2
    pplux
    Julio 26th, 2007 at 8:07 am

    Oh si! esto es genial, ni campos de L*Z ni leches.

Leave a Comment

blank