No hay una gran demanda de CUDA, pero siempre hay algunas compañías que buscan. La advertencia es que el simple hecho de saber cómo implementar CUDA funcionalmente es insuficiente: debe tener una conciencia íntima de cómo extraer el rendimiento de las GPU . El punto, después de todo, es obtener mucho más rendimiento de la GPU que un sistema superescalar y multinúcleo.
NVIDIA y otras compañías son conscientes de que la mayoría de los desarrolladores no saben cómo ajustar el rendimiento de las aplicaciones para procesadores específicos. Es por eso que proporcionan bibliotecas de GPU que presentan una interfaz para varios conjuntos de aplicaciones. Tanta gente usa manipulaciones matriciales y álgebra, algoritmos básicos de aprendizaje automático, etc., que vale la pena el tiempo de NVIDIA para construir una biblioteca para que más personas solo compren GPU y nunca necesiten aprender CUDA. Cuando tiene un problema específico que no tiene una biblioteca, debe escribir su propio código CUDA.
En cuanto a la segunda pregunta, los trabajos que requieren conocimientos de CUDA y GPU (de los que me contactaron el año pasado):
- ¿Por qué es tan barato externalizar un proyecto de software a la India?
- ¿Qué tan difícil es, cuánto tiempo tomaría y qué precio para los ingenieros de software decentes crear un sitio web como Medium.com?
- ¿Puede un probador de software entrar en la industria del automóvil?
- ¿Qué son las pruebas del sistema en las pruebas de software y cuáles son algunos ejemplos?
- ¿Cuál es el mejor software para que un principiante aprenda a ingresar a la industria de efectos visuales?
- Empresas que fabrican GPU: NVIDIA, Qualcomm, Samsung, Apple. Más trabajo de compilación y controladores que la escritura real de CUDA, a menos que esté escribiendo bibliotecas.
- Empresas que necesitan construir sus propias bibliotecas CUDA. Recientemente me contactó Applied Materials, por ejemplo. Equipos muy específicos en Google y Facebook también hacen este trabajo, pero conocer CUDA es solo una herramienta en una gran bolsa de herramientas para estas personas: muchos doctores especializados en rendimiento informático.