繁体   English   中英

如何在 C++ 进程中将数据从 CPU 复制到 GPU,并在指向复制的内存的同时在另一个 python 进程中运行 TF?

[英]How do I copy data from CPU to GPU in a C++ process and run TF in another python process while pointing to the copied memory?

我正在开发一个基础架构,该基础架构运行多个 C++ 应用程序,这些应用程序在基于 Python TF 的应用程序池中运行 DL 步骤之前,先处理某些“预处理”步骤。 我想知道是否有一种简单的方法可以让我将所需的模型和数据从 C++ 应用程序复制到 GPU 内存,然后将“GPU 指针”交给 python 应用程序以获取数据并运行 TF。 “预拷贝”数据到 GPU 内存

基本上,我想避免将数据从 C++ 应用程序发送到 python 应用程序的过程,从而避免不必要的复制步骤。 在此处输入图片说明

我可能会使用共享内存将数据传递给 python 进程,但考虑到我将最终运行的 C++ 应用程序和 python 应用程序的数量,我担心共享内存管理可能过于繁琐。 使用共享内存也存在性能问题,因为它需要大量同步。

简单的回答 - 不。因为你想要的是内存攻击,因此被 Linux 禁止。 如果一个程序可以读取另一个程序的堆栈,那么在内存中没有任何秘密是安全的。

另一种方法是引入一个中间件,例如 Memchached 或 Redis,让两个程序共享其中的数据。

暂无
暂无

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

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