Загрузка драйверов:Вход по гиперссылке виден. Набор инструментов CUDA:Вход по гиперссылке виден. cuDNN:Вход по гиперссылке виден.
Что такое GPU?
Концепция GPU была предложена Nvidia в 1999 году. GPU — это чип на видеокарте, так же как процессор — это чип на материнской плате. То есть до 1999 года на видеокартах не было видеокарт? Конечно, была, но тогда никто не называл её, и она не привлекала достаточного внимания людей, а развитие шло относительно медленно.
С тех пор как Nvidia предложила концепцию GPU, GPU вступили в период быстрого развития. Короче говоря, она прошла следующие этапы развития:
1. Только для графического рендеринга, эта функция является первоначальным замыслом GPU, что видно из названия: Graphic Processing Unit;
2. Позже выяснилось, что использование такого мощного устройства, как GPU, слишком расточительно, и его следует использовать для выполнения большей работы, например, для операций с плавающей точкой. Как это сделать? Передача операций с плавающей запятой напрямую на GPU невозможна, так как она может использоваться только для графической обработки (на данный момент). Самое простое — выполнить обработку операций с плавающей запятой, упаковать их в задачи рендеринга графики и затем передать GPU. Это концепция GPGPU (GPU общего назначения). Однако есть и недостаток — нужно разбираться в графике, иначе вы не будете знать, как упаковывать вещи.
3. Поэтому, чтобы дать людям, не понимающим графику, почувствовать возможности GPU-вычислений, Nvidia предложила концепцию CUDA.
Что такое CUDA?
CUDA (ComputeUnified Device Architecture) — это вычислительная платформа, запущенная производителем видеокарт NVIDIA. CUDA — это универсальная архитектура параллельных вычислений, запущенная компанией NVIDIA. Он содержит архитектуру набора команд CUDA и параллельный вычислительный движок внутри GPU. Вы можете разрабатывать программы CUDA, используя язык CUDA C, похожий на язык C, что облегчает использование мощных вычислительных мощностей GPU, вместо того чтобы упаковывать задачу в графическую рендеринговую задачу и передавать её GPU для обработки.
Другими словами, CUDA — это параллельный вычислительный фреймворк, запущенный NVIDIA для собственных графических процессоров, что означает, что CUDA может работать только на GPU NVIDIA и выполнять роль CUDA только тогда, когда вычислительная задача заключается в том, что её можно вычислить в большом числе параллельных вычислений.
Обратите внимание, что не все видеокарты поддерживают CUDA.
Что такое CUDNN?
NVIDIA cuDNN — это библиотека с ускорением GPU для глубоких нейронных сетей. Он делает акцент на производительности, простоте использования и низких накладных затратах на память. NVIDIA cuDNN можно интегрировать в более высокоуровневые фреймворки машинного обучения, такие как Tensorflow от Google — популярное программное обеспечение для кафе в UC Berkeley. Простая разработка плагинов позволяет разработчикам сосредоточиться на проектировании и реализации моделей нейронных сетей, а не просто на настройке производительности, одновременно обеспечивая высокопроизводительные современные параллельные вычисления на GPU.
Если вы хотите обучить модель с помощью GPU, cuDNN не обязателен, но обычно используется как библиотека ускорения.
Какова связь между CUDA и CUDNN?
CUDA рассматривается как верстак с множеством инструментов, таких как молотки, отвёртки и т.д. cuDNN — это библиотека на базе CUDA с ускорением глубокого обучения с помощью GPU, с помощью которой можно выполнять расчёты глубокого обучения на GPU. Он эквивалентен инструменту для работы, например, это гаечный ключ. Но при покупке верстака CUDA не было гаечного ключа. Чтобы запустить глубокую нейронную сеть на CUDA, нужно установить cuDNN, так же как нужно прикрутить гайку и купить ключ назад. Это позволяет GPU работать в глубоких нейронных сетях, которые значительно быстрее, чем у CPU.
|