Historias
Slashboxes
Comentarios
 
Este hilo ha sido archivado. No pueden publicarse nuevos comentarios.
Mostrar opciones Umbral:
Y recuerda: Los comentarios que siguen pertenecen a las personas que los han enviado. No somos responsables de los mismos.
  • Re:Opinión a primera vista

    (Puntos:1, Interesante)
    por pobrecito hablador el Jueves, 11 Diciembre de 2008, 14:47h (#1107357)
    Hay una diferencia clara entre CUDA y OpenCL, y es que el primero esta ligado a una arquitectura especifica y el segundo puede ser compilado no solo para gráficas si no también para: DSP, CELL, SuperComputadores... sin cambiar nada del código.
    [ Padre ]
    Puntos de inicio:    0  puntos
    Moderación   +1  
    Modificador extra 'Interesante'   0  

    Total marcador:   1  
  • por pobrecito hablador el Jueves, 11 Diciembre de 2008, 16:48h (#1107408)
    Pero tanto las GPUs CUDA, como los DSPs (no sé cómo se podría portar OpenCL a un DSP cualquiera, tal vez a uno concreto pero no a cualquiera), como el Cell son procesadores de propósito específico. Hasta tal punto que si no son programados de una forma muy determinada y haciendo uso de unos recursos específicos de cada una de las arquitecturas, se vuelven casi inútiles.

    Cuando programas ese tipo de arquitecturas tan dirigidas, si no haces uso del hardware específico del que dispones, por lo general el rendimiento es paupérrimo. Para poder hacer uso de ese hardware específico (la memoria compartida, las unidades de texturas, los distintos espacios de memoria de una GPU, por ejemplo), ese hardware tiene que ser expuesto. Y aquí tienes dos opciones: o lo expones y tu lenguaje ya no es portable (caso de CUDA), o no lo expones y el rendimiento es una basura (caso, sospecho, de OpenCL).

    Si el objetivo de estos aparatos fuese conseguir que las cosas corrieran en ellos, pues algo como OpenCL sería válido. Pero lo que queremos es que corran tan rápido como sea posible, y eso solo se puede conseguir con lenguajes muy específicos o generalizando la estructura (de forma que lo que tengamos sean implementaciones diferentes de la misma idea estructural del computador). Y como digo, no creo que ahora ATI se ponga a diseñar las tarjetas para que sean similares a las CUDA de nvidia. Mucho menos (porque ya no tendría sentido siquiera) que lo hagan con otro tipo de dispositivos que no sean para gráficos (como un DSP o Cell).
    [ Padre ]