繁体   English   中英

mxnet 中的多处理 gpu 支持

[英]Multiprocessing in mxnet gpu support

我有一个由 mxnet gpu 支持训练的 model 支持,我将这个 model 加载到 Z0AA0BE2A866411D9FF40351 上。 我的问题是,当我进行多进程时,我得到一个无效的指针错误。如何在 mxnet gpu 支持中进行多进程?

MXNet 是用 C++ 编写的,并且在相关时本机使用并行性。 您应该很少需要手动显式地多处理它。 您可以将并行性用于 CPU 主导的数据传输操作( num_workers DataLoaders中的 num_workers ),或者在将推理有效负载发送到诸如此处的上下文数组时,但是当面对单个上下文(例如您的单个 GPU)时,我不认为事情会表现得很好,因为 CUDA 似乎与多处理作斗争(请参阅此处此处

我建议通过以下方式尽可能利用原生 MXNet 和 CUDA 并行性:

  • CPU:在训练模式下使用多处理DataLoader (通过num_workers
  • GPU:发送批次到 GPU。 在非常正常的训练模式下,在推理模式下,这意味着异步排队请求并将批次发送到 GPU。 现代 DL 服务器(例如MMS )允许这样做。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM