云系统中的GPU虚拟化与多GPU MapReduce技术
1. 云系统中的GPU虚拟化
1.1 共享文件系统
系统在domain - U和domain - 0之间采用共享文件系统来共享GPU内核代码和数据。当用户要执行GPU程序时,Listener会将包含用户GPU内核代码的目录名传递给Combiner,Combiner会挂载并合并所有内核代码,将其编译成一个可执行文件,最后由Executor执行该可执行文件,并将结果返回给每个虚拟机。
这里选择网络文件系统(NFS)作为共享文件系统,它是一种分布式文件系统协议,允许用户通过网络访问存储在其他机器上的文件,适合在不同虚拟机上共享文件,且能让不同客户端同时共享一个文件。domain - U中的每个虚拟机运行一个NFS服务器,domain - 0中的虚拟机运行一个NFS客户端。domain - U中的每个服务器导出包含用户GPU内核代码的文件系统,domain - 0中的客户端会挂载这些NFS服务器导出的文件系统,以便Combiner可以访问它们。
1.2 系统组件
- Listener :运行在domain - U的每个虚拟机中,负责将共享文件系统导出给Combiner。若用户虚拟机要执行GPU程序,Listener会挂载共享文件系统中的程序目录。用户还需提供其内核的内存使用情况,供Combiner计算合并内核的总内存使用量。当进程成功终止时,Executor会向Listener发送终止消息,Listener收到后会通知用户结果已准备好。
- Combiner :运行在domain - 0的
超级会员免费看
订阅专栏 解锁全文
31

被折叠的 条评论
为什么被折叠?



