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:CUDA

    (Puntos:0)
    por pobrecito hablador el Jueves, 08 Agosto de 2013, 09:58h (#1344271)

    Hay varios errores en tu argumentación. El más obvio: CUDA y OpenACC se parecen lo que un huevo a una castaña, no tienen absolutamente nada que ver el uno con el otro. El segundo, NVIDIA lleva idea de cargarse CUDA en favor de OpenCL, en cuyo desarrollo participa a través del Chronos Group, es una generalización de CUDA y es a lo que tiende CUDA versión a versión.

    Por otro lado, para sacarle partido a CUDA no hace falta, pero ni muchísimo menos, una GPU de 1000€. Incluso en las de gama baja, que tienen menos SMPs, se puede sacar bastante ventaja de CUDA.

    ¿Qué es lo que probablemente veamos con este movimiento? Seguramente que se extienda el soporte de OpenACC (PGI tenía la exclusiva) y, mucho más importante, que mejore sustancialmente el rendimiento.

    OpenACC no está pensado para sustituir cosas tipo CUDA/OpenCL, está pensado para ofrecer facilidades tipo OpenMP para programar aceleradoras. Ni la programación multi-thread manual ha sustituido a OpenMP ni OpenCL sustituirá a OpenACC. Si algo lleva a OpenACC a la extinción, será precisamente OpenMP.

    [ Padre ]
  • Re:CUDA

    (Puntos:2)
    por rufo007 (24722) el Jueves, 08 Agosto de 2013, 10:07h (#1344272)
    De pm tengo acciones en NVidia.
    [ Padre ]
    • Re:CUDA de pobrecito hablador (Puntos:0) Jueves, 08 Agosto de 2013, 11:31h
  • Re:CUDA

    (Puntos:0)
    por pobrecito hablador el Jueves, 08 Agosto de 2013, 12:12h (#1344284)
    Creo que querías decir ni OpenMP ha sustituido a la programación multithread manual, ni OpenACC sustituirá a OpenCL. En lo de que si algo lleva a la extinción de OpenACC (del que no sólo PGI tenía la exclusiva, ya que CAPS Compilers también lo implementa, así como el compilador experimental accULL, de la Universidad de La Laguna) será, precisamente, OpenMP, estoy de acuerdo. Y veremos qué pasa con OpenHMPP, por el cual apuesta fuerte PathScale. A mí, como usuario, la verdad es que me gustaría verlo todo bajo un estándar único. OpenMP, ni más ni menos. Y veremos también si NVIDIA acaba ofreciendo los compiladores de PGI como freeware para proyectos no comerciales, como hacen Intel y Oracle.
    [ Padre ]
    • Re:CUDA de pobrecito hablador (Puntos:0) Jueves, 08 Agosto de 2013, 17:16h
      • Re:CUDA de pobrecito hablador (Puntos:0) Jueves, 08 Agosto de 2013, 17:50h
        • Re:CUDA de pobrecito hablador (Puntos:0) Jueves, 08 Agosto de 2013, 19:09h
          • Re:CUDA de pobrecito hablador (Puntos:0) Jueves, 08 Agosto de 2013, 20:01h
  • Re:CUDA

    (Puntos:2)
    por klim8 (573) el Jueves, 08 Agosto de 2013, 22:22h (#1344334)
    ( http://barrapunto.com/ )
    Pues en tu argumentación hay unos cuantos errores más.

    El segundo, NVIDIA lleva idea de cargarse CUDA en favor de OpenCL, en cuyo desarrollo participa a través del Chronos Group, es una generalización de CUDA y es a lo que tiende CUDA versión a versión.
    Cómo va a querer NVIDA cargarse CUDA? OpenCL se arrastra detrás de CUDA, versión a versión. Dynamic parallelism? Acceso remoto a otras memorias? Punteros? Soporte de C++?

    OpenCL no lo usa ni el tato por tres sencillas razones:
    1- Es demasiado low-level para desarrollar aplicaciones. Detectar plataformas y dispositivos, crear contextos y colas de comandos, compilar el código en runtime, hacer una llamada para cada parámetro que se pasa al kernel... Guardar el código en un string! Estamos locos?
    2- Es demasiado high-level para desarrollar runtimes. No tiene soporte para manejo de memoria. La memoria está asociada a un contexto que, a su vez, puede estar asociado a unos cuantos dispositivos. La alocatacón de memoria se realiza de forma lazy por el runtime. El rendimiento de las copias de memoria varía para cada runtime; algunos prefieren clEnqueue{Read/Write}Buffer, otros clEnque{Map/Unmap}
    3- En teoría es un lenguaje de programación universal, pero para tener un rendimiento razonable hay que escribir una versión para cada dispositivo.

    Por otro lado CUDA está orientado a programadores finales.
    [ Padre ]
    • Re:CUDA de pobrecito hablador (Puntos:0) Viernes, 09 Agosto de 2013, 15:49h
      • Re:CUDA de klim8 (Puntos:2) Sábado, 10 Agosto de 2013, 04:41h