Комментарии 6
Отличная статья! Я всегда считал, что понимание различий между CPU и GPU - это ключевой аспект для программистов, особенно в эпоху активного применения глубокого обучения. Интересно, как вы подчеркнули, что несмотря на высокую производительность GPU в параллельных вычислениях, им нужно учитывать задержки. Это понимание действительно помогает при оптимизации кода и ресурсного распределения.
Почему бы просто не делать всё на Taichi?
Конечно, бросаются в глаза косяки автоперевода, часто фразы достаточно малоосмысленные получаются, вплоть до абсолютно неверных. Например:
Есть кэш L2 вне чипа и кэш L1 на чипе
Кэш L2, конечно же, также находится на чипе.
Честно говоря, статья крайне скверного качества, даётся лишь поверхностное описание GPU, которое можно самостоятельно прочитать в документации к CUDA (буквально самые первые главы): https://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html . Отдельные вопросы вызывают цифры и расчёты, приведённые в статье в части про разделение ресурсов (они отчасти правильные, но крайне неполные). Опять же советую посмотреть более качественный разбор архитектуры Hopper: https://developer.nvidia.com/blog/nvidia-hopper-architecture-in-depth/ .
Что должен знать каждый разработчик о вычислениях на GPU