Memoria constante y su caché
Difunda valores de solo lectura de forma eficiente.
Memoria constante y su caché es una lección gratuita de CUDA Academy en CoddyKit. Esta es la lección 3 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de CUDA Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de CUDA Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
A Space for Read-Only Values
Constant memory is a small region built for data that every thread reads but none of them ever writes during a kernel.
Declaring It
You mark a global-scope array with the __constant__ qualifier. It lives outside any function, visible to all your kernels.
__constant__ float weights[256];It Is Genuinely Small
Total constant memory is only 64 KB on typical GPUs. It is meant for coefficients and parameters, not for large datasets.
Filling It from the Host
You write to constant memory from the CPU using cudaMemcpyToSymbol, since kernels themselves cannot modify it.
cudaMemcpyToSymbol(weights, h_w,
256 * sizeof(float));Backed by a Special Cache
Reads flow through a dedicated constant cache on each multiprocessor. A cached value comes back almost as fast as a register.
The Broadcast Superpower
When a whole warp reads the same address, the hardware does one fetch and broadcasts it to all 32 threads in a single step. 📡
Same Address Is the Key
The win depends on uniform access. If threads in a warp read different constant addresses, those reads serialize and the speedup is lost.
Reading It Looks Normal
Inside a kernel you read constant memory like any array. The compiler quietly routes the access through the fast constant cache.
__global__ void k(float *out, int i) {
out[i] = weights[0] * 2.0f;
}A Perfect Fit for Filters
Convolution kernels and lookup tables shine here, because every thread reuses the same small set of coefficients over and over.
Set Once, Reuse Often
You typically upload to constant memory a single time, then launch many kernels that all read those unchanging values cheaply.
When Not to Use It
Skip constant memory if your data is large or if threads read scattered addresses. In those cases plain global memory serves you better.
Quick Check
When does constant memory give its biggest speedup?
Recap: Small, Cached, Broadcast
You learned constant memory is a tiny read-only space whose cache broadcasts uniform reads to a whole warp. Use it for small, shared values. ✨
Preguntas frecuentes
¿La lección «Memoria constante y su caché» es gratis?
Sí — el texto completo de «Memoria constante y su caché» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de CUDA Academy, actualiza a CoddyKit PRO. El curso de CUDA Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Memoria constante y su caché»?
Difunda valores de solo lectura de forma eficiente. Practicas CUDA Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar CUDA Academy?
No se requiere experiencia previa. CUDA Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 3 de 4.
¿Cuánto tiempo toma la lección «Memoria constante y su caché»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de CUDA Academy?
Sí. Cada lección de CUDA Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Registros y memoria local
- Ventajas y costes de la memoria global
- Memoria constante y su caché
- Un modelo mental de la jerarquía