Потоки, блоки и сетки
Модель выполнения GPU.
«Потоки, блоки и сетки» — бесплатный урок Mojo Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Mojo Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Mojo Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
The Smallest Worker
A GPU runs your kernel as many tiny workers. Each single worker is a thread, and it usually handles one piece of data.
Grouping Threads
Threads are organized into a block. Threads in the same block can cooperate and share fast on-chip memory.
All Blocks Together
All the blocks for one kernel launch form the grid. The grid is the full set of workers handling your whole problem.
A Simple Hierarchy
The model nests neatly: threads live in blocks, and blocks live in a grid. Three levels describe every launch.
Each Thread Has an ID
Every thread can ask where it sits. Its index tells it which element of the data it is responsible for.
var tid = thread_idx.xEach Block Has an ID Too
Blocks are numbered as well. A thread combines its block id with its local id to find a unique spot.
var bid = block_idx.xComputing a Global Index
The classic formula maps each thread to one global element. This global index is how kernels split an array.
var i = block_idx.x * block_dim.x + thread_idx.xChoosing Block Size
You pick how many threads sit in a block. A good size keeps the hardware busy without wasting resources.
Choosing Grid Size
The grid must cover all your data. You size it so threads times blocks reach every element you need.
var blocks = (n + 255) // 256Guarding the Edges
The grid often launches a few extra threads. A simple bounds check stops them from touching memory past the end.
if i < n:
out[i] = a[i] + b[i]Why This Shape Helps
Blocks let groups share memory and sync, while the grid scales to any size. The structure maps work onto hardware cleanly.
Quick Check
A thread needs the position of its element across the whole array.
Recap
Threads group into blocks, blocks form the grid, and combining their ids gives each worker a unique global index. 🧵
Часто задаваемые вопросы
Урок «Потоки, блоки и сетки» бесплатный?
Да — полный текст урока «Потоки, блоки и сетки» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Mojo Academy, подпишись на CoddyKit PRO. Курс Mojo Academy содержит 4 уроков всего.
Чему я научусь в уроке «Потоки, блоки и сетки»?
Модель выполнения GPU. Ты практикуешь Mojo Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Mojo Academy?
Предыдущий опыт не требуется. Mojo Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Потоки, блоки и сетки»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Mojo Academy?
Да. Каждый урок Mojo Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем нужны графические процессоры для рабочих нагрузок искусственного интеллекта
- Потоки, блоки и сетки
- Написание функции ядра GPU
- Передача данных на устройство и обратно