Estoy tratando de entender cómo ejecutar el cálculo para el procesamiento de imágenes en Javascript usando GPU.
Tengo dos listas de bytes, 24 millones de bytes cada una, cada imagen tiene 4_000 por 6_000 = 24_000_000.
Solo quiero comparar image1 con image2 píxel por píxel.
Lo hago con la CPU así:
let image1: number[] = [ // 24 millions bytes ] let image2: number[] = [ // another 24 millions bytes ] let difference = 0 for (let i = 0; i < image1.length; i ++){ if (image1[1] === image2[2]) continue difference ++ } console.log(`Diffence is ${(difference /image1.length).toFixed(2) }`)Esto toma unos segundos en la CPU.
Pero, ¿cómo hacerlo en GPU para que sea más rápido? Podríamos desglosar la lista en partes y hacer la comparación de cada parte en un núcleo de GPU.
No pude encontrar un código de ejemplo en línea