Me gustaría llevar un algoritmo de simulación de física a la GPU utilizando OpenCL para el rendimiento; No tengo experiencia con OpenCL, y estoy buscando. Los cálculos son en su mayoría pequeños productos de matriz densa (3x3) y vectores, productos cruzados, etc.biblioteca de matriz opencl
¿Hay alguna biblioteca "estándar"/recomendada para tales operaciones básicas? Desde luego, no quiero codificar multiplicaciones de matrices e inversiones a mí mismo (no el tiempo, y sería inefficent)
Como OpenCL no tiene clases, la sobrecarga de operadores, etc., tengo que escribir
mmul(a,mtrans(b))
en lugar de, por ejemplo,a*b.transpose()
?¿Existen algunas extensiones (planificadas)/evolución de OpenCL (o pre-procesador, para el caso) para hacer que la notación sea más matemática? Tengo la impresión de regresar a Fortran años. (Sé que hay CUDA, pero es independiente del proveedor ligada)
Disculpa, tuve en mente a Fortran en los días previos a la presentación (no es que estuviera programando en ese momento), es decir, antes de que alguien hiciera una buena implementación en lugar de que todos la escribieran por sí mismos. Por analogía, creo que una razón por la cual Python es un lenguaje tan popular: "baterías incluidas". – eudoxos