Я работаю с нейронными сетями и в настоящее время изучаю другие способы, кроме моего процессора, для ускорения процесса обучения. Используя Keras с Tensorflow на машине GPU в AWS, я смог действительно ускорить процесс.Обучение нейронных сетей параллельно, теоретическая основа
Как это распараллеливание работает в теории?(Я не рассматриваю кластерное распараллеливание)
Я изо всех сил пытался найти ссылку, поэтому попрошу вас понять, как это работает.
Спасибо заранее
Если вы использовали * одиночный * GPU, то ускорение задается аппаратным ускорением при выполнении умножения матрицы. Не существует параллелизма, кроме методов эффективного вычисления работы нейронной сети на машине GPU. – fabrizioM
Да, это так. Приносим извинения за второй вопрос, надеюсь, что это вас не беспокоит: есть ли что-то вроде openMP, разделяемой памяти для обучения нейронных сетей, как вы знаете? –
@fabrizioM Ускорение работы с графическими процессорами - это распараллеливание, в частности [распараллеливание на уровне инструкций] (https://en.wikipedia.org/wiki/Instruction-level_parallelism). Кроме того, существует незначительное фундаментальное различие между одним GPU и несколькими GPU; в любом случае, это всего лишь куча вычислительных единиц, только в одном случае они соединены вместе на одной плате против нескольких плат. Связано: [SIMD] (https://en.wikipedia.org/wiki/SIMD). – Nat