CUDA Academy · Lección

La jerarquía de hilos

Los hilos se agrupan en bloques y los bloques, en una cuadrícula.

Lección 1 de 413 pasos

La jerarquía de hilos es una lección gratuita de CUDA Academy en CoddyKit. Esta es la lección 1 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.

Muchos hilos, un solo trabajo

Un kernel de CUDA se ejecuta en paralelo en muchos hilos, y cada hilo realiza el mismo trabajo sobre su propia parte de los datos. 🧵

Los hilos necesitan estructura

Lanzar millones de hilos independientes sería caótico. CUDA los organiza en una jerarquía clara para que el hardware pueda planificarlos correctamente.

Los hilos forman bloques

Los hilos se agrupan en un bloque. Todos los hilos de un bloque ejecutan el mismo kernel y pueden cooperar estrechamente con sus vecinos.

Los bloques forman el grid

Todos los bloques de un lanzamiento forman el grid. Por tanto, la cadena es sencilla: los hilos viven en bloques y los bloques viven en el grid.

¿Por qué dos niveles?

El diseño de dos niveles permite que un kernel se adapte desde una GPU pequeña hasta una enorme. Usted describe el trabajo una vez y el grid se ajusta al tamaño necesario.

Elegir la forma en el lanzamiento

Elija cuántos bloques y cuántos hilos por bloque habrá directamente en el lanzamiento, mediante la sintaxis de los corchetes angulares triples.

myKernel<<<numBlocks, threadsPerBlock>>>(data);

Un ejemplo concreto

Suponga que lanza 4 bloques de 256 hilos. Eso le proporciona 4 por 256, es decir, 1024 hilos ejecutándose a la vez.

Los bloques son independientes

Los distintos bloques no pueden asumir ningún orden ni comunicarse directamente entre sí. Precisamente esta independencia permite que la GPU los ejecute en cualquier secuencia.

Los hilos de un bloque cooperan

Dentro de un bloque, los hilos pueden compartir memoria rápida del chip y sincronizarse entre sí. Ese trabajo en equipo es la gran ventaja de un bloque.

Los grids y los bloques pueden ser 3D

Tanto el grid como cada bloque pueden ser 1D, 2D o 3D. El tipo dim3 permite adaptarlos de forma natural a imágenes o volúmenes.

dim3 block(16, 16);
dim3 grid(32, 32);

Un hilo, un elemento

El objetivo común es asignar exactamente un elemento de datos a cada thread. La jerarquía solo indica cómo llegar a esa correspondencia.

Comprobación rápida

Comprobemos cómo encajan las piezas.

Resumen: la jerarquía

Ha aprendido la estructura de CUDA: los threads forman un block y los blocks forman la grid. Los blocks independientes permiten escalar, mientras que los threads dentro de un block cooperan. 🎯

Gratis para empezar

Aprende C++ con un tutor de IA — gratis

Escribe y ejecuta código real en tu navegador, obtén ayuda instantánea de un tutor de IA disponible 24/7 y continúa donde lo dejaste en la web o en la aplicación.

Cursos
30
Lecciones
120

Preguntas frecuentes

¿La lección «La jerarquía de hilos» es gratis?

Sí — el texto completo de «La jerarquía de hilos» 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 «La jerarquía de hilos»?

Los hilos se agrupan en bloques y los bloques, en una cuadrícula. 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 1 de 4.

¿Cuánto tiempo toma la lección «La jerarquía de hilos»?

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

  1. La jerarquía de hilos
  2. threadIdx, blockIdx, blockDim
  3. Por qué existen los bloques
  4. Elegir hilos por bloque
← Volver a CUDA Academy