Многопроцессорность в поддержке mxnet gpu - PullRequest
0 голосов
/ 16 октября 2019

У меня есть модель, обученная поддержкой mxnet gpu, и я загружаю эту модель в gpu. Моя проблема заключается в том, что при многопроцессорности я получаю ошибку неверного указателя. Как сделать многопроцессорность в поддержке mxnet gpu?

1 Ответ

1 голос
/ 25 октября 2019

MXNet написан на C ++ и при необходимости использует параллелизм. Вам редко нужно явно обрабатывать его вручную вручную. Вы можете использовать параллелизм для операций передачи данных под управлением процессора (num_workers в глюоне DataLoaders) или при отправке полезных нагрузок логического вывода в массив контекстов, таких как здесь , но при обращении к одному контексту (например,ваш единственный графический процессор), я не думаю, что все будет хорошо, так как кажется, что CUDA борется с многопроцессорностью (см. здесь или здесь )

Что я рекомендуювместо этого - максимально использовать собственный параллелизм MXNet и CUDA, используя:

  • ЦП: используя мультипроцессор DataLoader (через num_workers) в режиме обучения
  • GPU: отправка пакетов в GPU. В режиме обучения это вполне нормально, в режиме логического вывода это означает асинхронную обработку запросов в очереди и отправку пакетов в графический процессор. Современные серверы DL, такие как MMS , позволяют это.
...