Архитектура Tesla. Программно-аппаратный стек CUDA. Лекторы: Боресков А.В. (ВМиК МГУ) Харламов А.А. (NVidia)
Содержание
- 2. Примеры многоядерных систем На первой лекции мы рассмотрели Intel Core 2 Duo SMP Cell BlueGene/L G80
- 3. Примеры многоядерных систем Мы хотели обратить ваше внимание на следующие особенности: Как правило вычислительный узел –
- 4. Tesla vs GeForce У кого есть вопросы в чем разница?
- 5. План Архитектура Tesla Программная модель CUDA Синтаксические особенности CUDA
- 6. Архитектура Tesla: Мультипроцессор Tesla 8
- 7. Архитектура Tesla Мультипроцессор Tesla 10
- 8. Архитектура Tesla 10 Interconnection Network
- 9. Архитектура Маштабируемость: [+][-] SM внутри TPC [+][-] TPC [+][-] DRAM партиции Схожие архитектуры: Tesla 8: 8800
- 10. Технические детали RTM CUDA Programming Guide Run CUDAHelloWorld Печатает аппаратно зависимые параметры Размер shared памяти Кол-во
- 11. План Архитектура Tesla Синтаксические особенности CUDA Программная модель CUDA
- 12. Программная модель CUDA GPU (device) это вычислительное устройство, которое: Является сопроцессором к CPU (host) Имеет собственную
- 13. Программная модель CUDA Последовательные части кода выполняются на CPU Массивно-параллельные части кода выполняются на GPU как
- 14. Программная модель CUDA Параллельная часть кода выполняется как большое количество нитей Нити группируются в блоки фиксированного
- 15. Программная модель CUDA Десятки тысяч потоков for (int ix = 0; ix { pData[ix] = f(ix);
- 16. Программная модель CUDA Потоки в CUDA объединяются в блоки: Возможна 1D, 2D, 3D топология блока Общее
- 17. Программная модель CUDA Потоки в блоке могут разделять ресурсы со своими соседями float g_Data[gN]; for (int
- 18. Программная модель CUDA Блоки могут использовать shared память Т.к. блок целиком выполняется на одном SM Объем
- 19. Программная модель CUDA Блоки потоков объединяются в сетку (grid) потоков Возможна 1D, 2D топология сетки блоков
- 20. План Архитектура Tesla Синтаксические особенности CUDA Программная модель CUDA
- 21. Синтаксис CUDA CUDA – это расширение языка C [+] спецификаторы для функций и переменных [+] новые
- 22. Синтаксис CUDA Спецификаторы Спецификатор функций Спецификатор переменных
- 23. Синтаксис CUDA Встроенные переменные Сравним CPU код vs CUDA kernel: __global__ void incKernel ( float *
- 24. Синтаксис CUDA Встроенные переменные В любом CUDA kernel’e доступны: dim3 gridDim; uint3 blockIdx; dim3 blockDim; uint3
- 25. Синтаксис CUDA Директивы запуска ядра Как запустить ядро с общим кол-во тредов равным nx? incKernel >>
- 26. Как скомпилировать CUDA код NVCC – компилятор для CUDA Основными опциями команды nvcc являются: -deviceemu -
- 27. Ресуры нашего курса CUDA.CS.MSU.SU Место для вопросов и дискуссий Место для материалов нашего курса Место для
- 29. Скачать презентацию