Acerca del servicio
TraducidoSoy un desarrollador de GPU y hago que tareas numéricas pesadas se ejecuten órdenes de magnitud más rápido al moverlas a la tarjeta gráfica. Cuando una simulación, procesamiento de señales o pipeline de ML mantiene la CPU cargada a toda potencia durante horas, perfilo dónde se va realmente el tiempo, reestructuro la sección caliente para miles de hilos paralelos y la reescribo como núcleos CUDA que cargan todos los multiprocesadores de flujo sin tiempo inactivo. Me preocupo no solo por la corrección, sino por el rendimiento: cómo fluye los datos a través de la memoria global, compartida y de registros, cuán coherentes son los warps y qué fracción del ancho de banda teórico el núcleo realmente utiliza en hardware en vivo.
La mayoría de los proyectos comienzan con código de CPU existente que simplemente ha superado su tiempo de ejecución. Porto esa lógica a GPU paso a paso, verificando resultados contra el original en cada etapa para que los números no se desvíen, luego aumento la ocupación, el acceso a memoria coalescida y la superposición de hilos hasta que la aceleración se vuelva real y medible. Trabajo con fluidez con CUDA Toolkit y bibliotecas compañeras — cuBLAS, cuFFT, Thrust — y confío en Nsight y perfiles para demostrar exactamente dónde está el cuello de botella, no adivinar. Ya sea HPC científico, procesamiento de señales o entrenamiento e inferencia de ML, entrego núcleos documentados, reproducibles y listos para integrarse en tu compilación.
Si el código es lento y estás golpeando la pared del procesador, describe la tarea y dónde duele — te diré honestamente cuánto puede ganar la GPU y cómo llegaré allí.
— Desarrollo y optimización de núcleos CUDA
— Portación de algoritmos de CPU a GPU
— Ajuste de memoria y ancho de banda (global, compartida, registros)
— Integración de cuBLAS, cuFFT, Thrust
— Análisis de perfil y cuello de botella de Nsight
— Concurrencia de múltiples GPU e hilos
— Aceleración HPC y aumento de velocidad en entrenamiento/inferencia de ML
La mayoría de los proyectos comienzan con código de CPU existente que simplemente ha superado su tiempo de ejecución. Porto esa lógica a GPU paso a paso, verificando resultados contra el original en cada etapa para que los números no se desvíen, luego aumento la ocupación, el acceso a memoria coalescida y la superposición de hilos hasta que la aceleración se vuelva real y medible. Trabajo con fluidez con CUDA Toolkit y bibliotecas compañeras — cuBLAS, cuFFT, Thrust — y confío en Nsight y perfiles para demostrar exactamente dónde está el cuello de botella, no adivinar. Ya sea HPC científico, procesamiento de señales o entrenamiento e inferencia de ML, entrego núcleos documentados, reproducibles y listos para integrarse en tu compilación.
Si el código es lento y estás golpeando la pared del procesador, describe la tarea y dónde duele — te diré honestamente cuánto puede ganar la GPU y cómo llegaré allí.
— Desarrollo y optimización de núcleos CUDA
— Portación de algoritmos de CPU a GPU
— Ajuste de memoria y ancho de banda (global, compartida, registros)
— Integración de cuBLAS, cuFFT, Thrust
— Análisis de perfil y cuello de botella de Nsight
— Concurrencia de múltiples GPU e hilos
— Aceleración HPC y aumento de velocidad en entrenamiento/inferencia de ML