• Складчины
  • Программирование

[Udemy] Освоение параллельного программирования на GPU с CUDA: [HW & SW] [Hamdy egy]

Найти складчину
  • Дата начала Вчера в 17:31
Цена: 150 РУБ
Показать больше
Записаться и Купить Записаться
Скачать курс
Скачать Скачать Скачать
Aноним
  • Вчера в 17:31
  • #1

[Udemy] Освоение параллельного программирования на GPU с CUDA: [HW & SW] [Hamdy egy]

Ссылка на картинку
Освоение параллельного программирования
Оптимизация и анализ производительности для высокопроизводительных вычислений

Это практический курс, который показывает, как использовать огромную мощность параллельной обработки современных GPU с помощью CUDA. Вы начнёте с основ аппаратной части GPU, проследите эволюцию ключевых архитектур — Fermi, Pascal, Volta, Ampere, Hopper — и через практические задания научитесь писать, профилировать и оптимизировать высокопроизводительные CUDA kernels.

Это независимый обучающий материал. Он не спонсируется, не одобрен и не аффилирован с NVIDIA Corporation. Названия CUDA, Nsight и кодовые названия архитектур являются товарными знаками NVIDIA и используются только в справочных целях.

Чему вы научитесь:
  • получите комплексное понимание архитектуры GPU по сравнению с CPU
  • изучите историю графических процессоров GPU вплоть до самых современных решений
  • разберётесь во внутренней структуре GPU
  • поймёте различные типы памяти и их влияние на производительность
  • изучите современные технологии внутренних компонентов GPU
  • освоите основы программирования CUDA на GPU
  • начнёте писать программы для GPU с использованием CUDA в Windows и Linux
  • поймёте наиболее эффективные способы распараллеливания
  • освоите профилирование и настройку производительности
  • научитесь использовать shared memory
Что вы освоите:
  • основы различий GPU и CPU и причины доминирования GPU в задачах параллельной обработки данных
  • развитие архитектур GPU по поколениям и аппаратные особенности, влияющие на производительность
  • установку CUDA Toolkit в Windows, Linux и WSL
  • базовые концепции CUDA: threads, blocks, grids и иерархия памяти
  • профилирование и оптимизацию через Nsight Compute и nvprof
  • двумерную индексацию для работы с матрицами
  • методы оптимизации: работа с данными, размер которых не равен степени двойки, использование shared memory, повышение пропускной способности, снижение warp divergence
  • отладку и обработку ошибок через runtime API checks
К концу курса вы сможете проектировать, анализировать и тонко настраивать CUDA kernels, которые эффективно работают на современных GPU и подходят для сложных научных, инженерных и AI-задач.

Для кого этот курс:
  • для всех, кто интересуется GPU и CUDA
  • для студентов инженерных направлений
  • для исследователей
  • для всех, кто хочет глубже разобраться в параллельном программировании на GPU
Требования:
  • базовые знания C и C++
  • базовые знания Linux и Windows
  • базовые знания архитектуры компьютера
Содержание курса:
  • 12 разделов
  • 58 лекций
  • 23 ч 3 мин общей продолжительности
Программа курса:

Введение в аппаратную часть Nvidia GPU

  • GPU vs CPU
  • История Nvidia: как компания начала доминировать в секторе GPU
  • Связь архитектур и поколений: Hopper, Ampere, GeForce, Tesla
  • Как определить архитектуру и поколение
  • Разница между GPU и чипом GPU
  • Архитектуры и соответствующие им чипы
  • Архитектуры Nvidia GPU от Fermi до Hopper
  • Параметры для сравнения разных архитектур
  • Half, single и double precision operations
  • Compute capability и использование GPU
  • Volta, Ampere, Pascal, SIMD
Установка CUDA и других программ
  • Какие возможности устанавливаются вместе с CUDA Toolkit
  • Установка CUDA в Windows
  • Установка WSL для использования Linux в Windows
  • Установка CUDA Toolkit в Linux
Введение в программирование на CUDA
  • GitHub-репозиторий курса
  • Сопоставление программной части CUDA с аппаратной частью
  • Hello World program: threads и blocks
  • Компиляция CUDA в Linux
  • Hello World program: Warp_IDs
  • Сложение векторов и шаги для любого CUDA-проекта
  • Индексация блоков и потоков
  • Уровни параллелизма при работе с очень большими векторами
Профилирование
  • Получение свойств устройства через Runtime API
  • Nvidia-smi и его конфигурации
  • Occupancy и скрытие задержек на GPU
  • Количество активных блоков на один SM
  • Сколько блоков можно выполнять одновременно на одном SM
  • Начало работы с Nsight Compute
  • Инструменты профилирования Nvidia: Nsight Systems, Nsight Compute, nvprof
  • API для проверки ошибок
  • Анализ производительности через командную строку
  • Графический Nsight Compute в Windows и Linux
Анализ производительности предыдущих приложений
  • Анализ производительности
  • Сложение векторов с размером, не являющимся степенью двойки
Двумерная индексация
  • Сложение матриц с использованием двумерных блоков и потоков
  • Почему L1 hit-rate равен нулю
Shared Memory и Warp Divergence
  • Shared memory
  • Quiz 1
  • Warp divergence
Инструменты отладки
  • Отладка с использованием Visual Studio
Vector Reduction
  • Vector reduction только с использованием global memory
  • Разбор кода и профилирование vector reduction
  • Оптимизация vector reduction
  • Race condition и возможности отладки
  • Оптимизация использования потоков
  • Оптимизация через shared memory и unrolling
  • Оптимизация через shuffle operations
Roofline Model
  • Roofline analysis: приложения, ограниченные вычислениями и памятью
Читать далее...
Показать больше
 
Зарегистрируйтесь , чтобы посмотреть скрытый контент.
Поиск по тегу:
Теги
hamdy egy udemy освоение параллельного программирования
Похожие складчины
Скачать [udemy] Освоение объектно-ориентированного программирования на Python: генеративный искусственный интеллект [Metla Sudha Sekhar]
  • 4 Янв 2026
  • в разделе: Программирование
Скачать [Udemy] Язык программирования Python [Виктор Черемных]
  • 19 Фев 2022
  • в разделе: Программирование
Скачать [Udemy] Машинное обучение с использованием программирования на Python [Sujithkumar MA]
  • 8 Мар 2023
  • в разделе: Программирование
Скачать [Udemy] Язык программирования PHP [Исмаил Усеинов]
  • 14 Авг 2021
  • в разделе: Программирование
Скачать [Udemy] Освоение Python, Pandas, Numpy для начинающих [Varma Pericherla]
  • 21 Ноя 2023
  • в разделе: Программирование

Войдите или зарегистрируйтесь!

Учетная запись позволит вам участвовать в складчинах и оставлять комментарии

Регистрация

Создайте аккаунт. Это просто!

Регистрация

Вход

Вы уже зарегистрированы? Войдите.

Войти
  • Складчины
  • Программирование
  • Russian (RU)
  • Обратная связь
  • Условия и правила
  • Политика конфиденциальности
  • Справка