Идеальный дуэт: гибкость Python + мощность CUDA. Научитесь их совмещать для суперкомпьютерной производительности на рабочем столе!
Эта книга — ваш быстрый старт в мир высокопроизводительных вычислений на GPU. Написанная для программистов на Python, она показывает, как преодолеть ограничения CPU и использовать видеокарту для ускорения расчётов. Вы на практике освоите ключевые шаги: профилирование кода для поиска узких мест, настройка окружения, написание собственных ядер (kernels) на CUDA C и их интеграция с Python, использование библиотек NVIDIA (cuBLAS, cuFFT). В финале вы создадите глубокую нейронную сеть, использующую GPU. Идеально для data scientists, исследователей и разработчиков, желающих добавить в свой арсенал мощный навык.
Книга предлагает быстрое погружение в программирование GPU. Вы узнаете, как применять закон Амдала, использовать профилировщик для определения узких мест в коде на Python, настроить окружения для программирования GPU. По мере чтения вы будете запускать свой код на GPU и писать полноценные ядра и функции на CUDA C, научитесь отлаживать код при помощи NSight IDE и получите представление об известных библиотеках от NVIDIA, в частности cuFFT и cuBLAS. Вооружившись этими знаниями, вы сможете написать с нуля глубокую нейронную сеть, использующую GPU, и изучить более основательные темы. Книга предназначена для разработчиков и специалистов по обработке данных, которые хотят познакомиться с основами эффективного программирования GPU для улучшения быстродействия, используя программирование на Python. Желательно общее знакомство с базовыми понятиями математики и физики, а также опыт программирования на Python и любом основанном на С языке программирования.