在通过云场景的请求/响应中,是否可以让多台低端计算机分别对位于中央服务器上的GPU进行CUDA调用?让这些低端计算机拥有一个“虚拟”的GPU。
发布于 2013-02-02 23:17:32
我有一个类似的问题要解决。
数据库位于低端计算机中,而我在本地网络上有一组GPU可供使用。
我做了一个小客户机(在低端机器上)来解析数据库,使用google protocol buffers序列化数据,并使用zmq sockets将数据发送到服务器。对于数据分发,您可以使用异步发布/订阅套接字。
在服务器端,您对数据进行反序列化,并使用CUDA程序来运行计算(它也可以是一个守护应用程序,因此您不必每次都启动它)。
一旦数据在服务器上就绪,您就可以从客户端发出同步消息(请求/回复套接字),当服务器接收到消息时,它会调用CUDA内核的函数包装器。
如果您需要在客户端处理返回的结果,则可以按照相反的路线将数据发送回客户端。
如果数据已经在服务器中,那就更容易了。您只需要使用请求/应答套接字来发送消息和调用函数。
查看zmq手册,他们有很多不同编程语言的例子。
https://stackoverflow.com/questions/14653744
复制相似问题