利用虚拟桌面和gpu透传实现多用户共享图形工作站的方法

文档序号:7772727阅读:7459来源:国知局
利用虚拟桌面和gpu透传实现多用户共享图形工作站的方法
【专利摘要】本发明涉及一种利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,包括如下步骤:(1).将图形工作站和复数个客户端部署在同一个局域网内;(2).在图形工作站中安装宿主机操作系统、宿主机显卡驱动、虚拟桌面管理模块、显卡透传管理模块、虚拟桌面透传插件、连接协议模块和用户管理模块;(3).在图形工作站中创建多个虚拟机;(4).在虚拟机上安装虚拟机操作系统;(5).在客户端上安装客户端操作系统;(6).支持虚拟桌面和GPU透传的图形工作站上配置有多块物理显卡。本发明的使用虚拟桌面技术实现多个用户共享图形工作站的物理资源。用户可以在任何时间、从任何地点、用任何设备连接到虚拟桌面上进行图形设计工作。
【专利说明】利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法
【技术领域】
[0001]本发明涉及一种实现多用户共享图形工作站的方法,特别是涉及一种使用虚拟桌面技术实现多个用户共享图形工作站的物理资源,每个用户拥有自己独立的桌面;同时,借助于GPU透传技术可以将图形工作站上的多个显卡透传(PASS-THROUGH)分配透传到各个桌面,使得每个用户都拥有确保设计所需要的显卡性能的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法。
【背景技术】
[0002]GPU英文全称Graphic Processing Unit,中文翻译为“图形处理器”。GPU是相对于CPU的一个概念,由于在现代的计算机中(特别是家用系统,游戏的发烧友)图形的处理变得越来越重要,需要一个专门的图形的核心处理器。
[0003]GPU是显卡的“心脏”,也就相当于CPU在电脑中的作用,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。
[0004]NVIDIA公司在1999年发布GeForce256图形处理芯片时首先提出GPU的概念。
[0005]GPU能够从硬件上支持T&L (TransformandLighting,多边形转换与光源处理)的显示芯片,因为T&L是3D渲染中的一个重要部分,其作用是计算多边形的3D位置和处理动态光线效果,也可以称为“几何处理”。一个好的T&L单元,可以提供细致的3D物体和高级的光线特效;只不过大多数PC中,T&L的大部分运算是交由CPU处理的(这就也就是所谓的软件T&L),由于CPU的任务繁多,除了 T&L之外,还要做内存管理、输入响应等非3D图形处理工作,因此在实际运算的时候性能会大打折扣,常常出现显卡等待CPU数据的情况,其运算速度远跟不上今天复杂三维游戏的要求。即使CPU的工作频率超过IGHz或更高,对它的帮助也不大,由于这是PC本身设计造成的问题,与CPU的速度无太大关系。
[0006]GPU是显示卡的“大脑”,它决定了该显卡的档次和大部分性能,同时也是2D显示卡和3D显示卡的区别依据。2D显示芯片在处理3D图像和特效时主要依赖CPU的处理能力,称为“软加速”。3D显示芯片是将三维图像和特效处理功能集中在显示芯片内,也即所谓的“硬件加速”功能。显示芯片通常是显示卡上最大的芯片(也是引脚最多的)。
[0007]透传,是Pass Through的英文翻译,有时也称为直传。在这里是指将物理上连接到宿主机,由宿主机操作系统管理的显示卡从宿主机“解绑”,“挂接”到虚拟机上,由虚拟机操作系统管理,就好像是“物理上”连接到虚拟机的显示卡。
[0008]传统的图形工作站在需要单人单站,除了费用昂贵,更重要的是不方便远程使用。
[0009]为了达到降低成本,同时在实现任何时间、任何地点、通过任何设备都可以访问的目的,需要一台宿主机上可以运行多个不同的虚拟机,从集中的地方即可实现管理。

【发明内容】

[0010]针对上述问题,本发明的主要目的在于提供一种使用虚拟桌面技术实现多个用户共享图形工作站的物理资源,每个用户拥有自己独立的桌面;同时,借助于GPU透传技术可以将图形工作站上的多个显卡透传(PASS-THROUGH)分配透传到各个桌面,使得每个用户都拥有确保设计所需要的显卡性能的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法。
[0011]本发明是通过下述技术方案来解决上述技术问题的:一种利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,所述方法包括如下步骤:
[0012](I).将图形工作站和复数个客户端部署在同一个局域网内,在图形工作站上配置和客户端数量一样的物理显卡,图形工作站和客户端之间通过网络协议实现相互通信;
[0013](2).在图形工作站中安装宿主机操作系统、宿主机显卡驱动、虚拟桌面管理模块、显卡透传管理模块、虚拟桌面透传插件、连接协议模块和用户管理模块;
[0014](3).在图形工作站中创建多个虚拟机;
[0015](4).在虚拟机上安装虚拟机操作系统,在虚拟机操作系统中,安装有透传的显卡所对应物理显卡的虚拟机显卡驱动,虚拟机操作系统中还安装有桌面连接协议服务,以方便用户通过特定协议,从客户端直接连接虚拟桌面,以使用在虚拟机操作系统上安装的图形应用程序;
[0016]安装有虚拟机操作系统、虚拟机显卡驱动、图形应用程序和桌面连接协议服务的虚拟桌面,称为已实现显卡透传的虚拟机;
[0017](5).在客户端上安装客户端操作系统,在客户端操作系统中安装桌面连接协议客户端管理模块;
[0018]安装有客户端操作系统和桌面连接协议客户端管理模块的客户端,被称为能连接虚拟桌面的客户端;
[0019](6).支持虚拟桌面和GPU透传的图形工作站上配置有多块物理显卡,管理员创建多个虚拟桌面并分配给不同的用户,同时将物理显卡分别透传到虚拟桌面中,形成透传的显卡,不同的用户使用自己的账号和密码,在能连接虚拟桌面的客户端上登录,即连接到自己的虚拟桌面,如同使用本地桌面一样,可以进行图形方面的开发设计工作。
[0020]在本发明的具体实施例子中:在步骤(2)中虚拟桌面管理模块将图形工作站变成一个虚拟化平台,管理员通过虚拟桌面管理模块创建虚拟机、为虚拟机安装系统、基于虚拟机制作模板、以及基于模板创建相同配置的虚拟机。
[0021]在本发明的具体实施例子中:在步骤(2)中显卡透传管理模块对物理显卡进行管理,列出宿主机中所有的物理显卡,记录哪些显卡已经透传到虚拟机以及透传到哪个虚拟机,执行透传和取消透传。
[0022]在本发明的具体实施例子中:在步骤(2)中虚拟桌面透传插件在虚拟机启动前和停止后执行特定的钩子代码,在启动前,它通过显卡透传管理模块检查是否有闲置的物理显卡,若有,则执行透传到本虚拟机,在停止后,它通过显卡透传管理模块检查是否有物理显卡被透传给本虚拟机,若有则取消透传。
[0023]在本发明的具体实施例子中:在步骤(2)中用户管理模块允许管理员创建多个本地用户,或者导入现有用户数据库中的用户,并将虚拟桌面分配给用户,或从虚拟桌面回收用户,通过连接协议模块,这些用户可以从特定客户端连接到已经创建好,并且分配给用户的虚拟桌面上进行工作,如同使用本地桌面一样。[0024]在本发明的具体实施例子中:在步骤(3)中,虚拟机被启动之前,借助于显卡透传管理模块和虚拟桌面透传插件,物理显卡最终被从宿主机上解绑,挂接到虚拟机中,如同显卡被物理上连接到该虚拟机,称为透传的显卡;
[0025]虚拟机被停止之后,借助于显卡透传管理模块和虚拟桌面透传插件,物理显卡最终被从虚拟机上解绑,挂接到宿主机中;透传的显卡不再存在;
[0026]在虚拟机运行过程中,透传的显卡由其负责管理,支持虚拟桌面和GPU透传的图形工作站不再管理对应物理显卡。
[0027]本发明的积极进步效果在于:本发明提供的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法具有以下优点:本发明的使用虚拟桌面技术实现多个用户共享图形工作站的物理资源,每个用户拥有自己独立的桌面。同时,借助于GPU透传技术可以将图形工作站上的多个显卡透传(PASS-THROUGH)分配透传到各个桌面,使得每个用户都拥有确保设计所需要的显卡性能。用户可以在任何时间、从任何地点、用任何设备连接到虚拟桌面上进行图形设计工作。
【专利附图】

【附图说明】
[0028]图I为图形工作站的应用部署图。
[0029]图2为图形工作站内部模块图。
[0030]图3为图形工作站的物理显卡被透传到虚拟机的示意图。
[0031]图4为图形工作站虚拟机内部模块图。
[0032]图5为客户端内部模块图。
[0033]图6为多用户共享使用图形工作站的示意图。
【具体实施方式】
[0034]下面结合附图给出本发明较佳实施例,以详细说明本发明的技术方案。
[0035]图I为图形工作站的应用部署图。如图I所示:图形工作站101和多个客户端501部署在同一个局域网内,基于网络协议实现相互通信。在图形工作站101上配置有多块物理显卡102。
[0036]图2为图形工作站内部模块图。如图2所示:在图形工作站101中安装有宿主机操作系统201。在宿主机操作系统201中,安装有针对物理显卡102的显卡驱动202。此夕卜,在宿主机操作系统201中安装有虚拟桌面管理模块203,将图形工作站101变成一个虚拟化平台。管理员可以通过虚拟桌面管理模块203创建虚拟机、为虚拟机安装系统、基于虚拟机制作模板、以及基于模板创建相同配置的虚拟机等工作。
[0037]配合虚拟桌面管理模块203 —起工作的有连接协议模块206和用户管理模块207。用户管理模块207允许管理员创建多个本地用户,或者导入现有用户数据库中的用户,并将虚拟桌面分配给用户,或从虚拟桌面回收用户。通过连接协议模块206,这些用户可以从特定客户端连接到已经创建好,并且分配给他/她的虚拟桌面上进行工作,如同使用本地
桌面一样。
[0038]为了实现显卡透传,即从宿主机上解绑,挂接到虚拟机中使用。在宿主机操作系统201上还需要额外的显卡透传管理模块204和虚拟桌面透传插件205。显卡透传管理模块204对物理显卡进行管理,例如列出宿主机中所有的物理显卡,记录哪些显卡已经透传到虚拟机以及透传到哪个虚拟机,执行透传(从主机上解绑,挂接到虚拟机)和取消透传(从虚拟机上解绑,挂接到宿主机)。虚拟桌面透传插件205在虚拟机启动前和停止后执行特定的钩子代码。在启动前,它通过显卡透传管理模块204检查是否有闲置的物理显卡,若有,则执行透传到本虚拟机。在停止后,它通过显卡透传管理模块204检查是否有物理显卡被透传给本虚拟机,若有则取消透传。
[0039]安装有宿主机操作系统201、宿主机显卡驱动202、虚拟桌面管理模块203、显卡透传管理模块204、虚拟桌面透传插件205、连接协议模块206和用户管理模块207的图形工作站,被称为支持虚拟桌面和GPU透传的图形工作站110。
[0040]图3为图形工作站的物理显卡被透传到虚拟机的示意图。如图3所示,在支持虚拟桌面和GPU透传的图形工作站110上,管理员创建多个虚拟机301,也即虚拟桌面。
[0041]虚拟机301被启动之前,借助于显卡透传管理模块204和虚拟桌面透传插件205,物理显卡最终被从宿主机上解绑,挂接到虚拟机中。如同显卡被“物理上”连接到该虚拟机,称为透传的显卡302。
[0042]虚拟机301被停止之后,借助于显卡透传管理模块204和虚拟桌面透传插件205,物理显卡最终被从虚拟机上解绑,挂接到宿主机中。透传的显卡302不再存在。
[0043]在虚拟机301运行过程中,透传的显卡302由其负责管理,支持虚拟桌面和GPU透传的图形工作站110不再管理对应物理显卡102。
[0044]图4为图形工作站虚拟机内部模块图。如图4所示,在虚拟机301上安装有操作系统,称为虚拟机操作系统401。在虚拟机操作系统401中,安装有透传的显卡302所对应物理显卡的虚拟机显卡驱动302,用于驱动透传的显卡。虚拟机操作系统401中还安装有桌面连接协议服务406,以方便用户通过特定协议,从特定的客户端直接连接虚拟桌面301,以使用在虚拟机操作系统401上安装的图形应用程序403。
[0045]安装有虚拟机操作系统401、虚拟机显卡驱动402、图形应用程序403和桌面连接协议服务206的虚拟桌面301,被称为已实现显卡透传的虚拟机(桌面)310。
[0046]图5为客户端内部模块图。要连接到已实现显卡透传的虚拟机(桌面)310,用户必须使用特定的客户端,即在客户端上安装相应的软件。如图5所示,在客户端501上安装有操作系统,称为客户端操作系统601。在客户端操作系统601中,安装桌面连接协议客户端模块606。
[0047]安装有客户端操作系统601和桌面连接协议客户端管理模块606的客户端501,被称为能连接虚拟桌面的客户端510。
[0048]图6为多用户共享使用图形工作站的示意图。通过支持虚拟桌面和GPU透传的图形工作站、已实现显卡透传的虚拟机(桌面)、能连接虚拟桌面的客户端,就可以很方便地实现多用户共享图形工作站。
[0049]其过程如图6所示,支持虚拟桌面和GPU透传的图形工作站110上配置有多块物理显卡102,管理员创建多个虚拟桌面310并分配给不同的用户707,同时将物理显卡102分别透传到虚拟桌面310中,形成透传的显卡302,不同的用户707使用自己的账号和密码,在能连接虚拟桌面的客户端510上登录,即连接到自己的虚拟桌面,如同使用本地桌面一样,可以进行图形方面的开发设计工作。[0050]以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内,本发明要求保护范围由所附的权利要求书及其等效物界定。
【权利要求】
1.一种利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:所述方法包括如下步骤: (1).将图形工作站和复数个客户端部署在同一个局域网内,在图形工作站上配置和客户端数量一样的物理显卡,图形工作站和客户端之间通过网络协议实现相互通信; (2).在图形工作站中安装宿主机操作系统、宿主机显卡驱动、虚拟桌面管理模块、显卡透传管理模块、虚拟桌面透传插件、连接协议模块和用户管理模块; (3).在图形工作站中创建多个虚拟机; (4).在虚拟机上安装虚拟机操作系统,在虚拟机操作系统中,安装有透传的显卡所对应物理显卡的虚拟机显卡驱动,虚拟机操作系统中还安装有桌面连接协议服务,以方便用户通过特定协议,从客户端直接连接虚拟桌面,以使用在虚拟机操作系统上安装的图形应用程序; 安装有虚拟机操作系统、虚拟机显卡驱动、图形应用程序和桌面连接协议服务的虚拟桌面,称为已实现显卡透传的虚拟机; (5).在客户端上安装客户端操作系统,在客户端操作系统中安装桌面连接协议客户端管理模块; 安装有客户端操作系统和桌面连接协议客户端管理模块的客户端,被称为能连接虚拟桌面的客户端; (6).支持虚拟桌面和GPU透传的图形工作站上配置有多块物理显卡,管理员创建多个虚拟桌面并分配给不同的用户,同时将物理显卡分别透传到虚拟桌面中,形成透传的显卡,不同的用户使用自己的账号和密码,在能连接虚拟桌面的客户端上登录,即连接到自己的虚拟桌面,如同使用本地桌面一样 ,可以进行图形方面的开发设计工作。
2.根据权利要求1所述的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:在步骤(2)中虚拟桌面管理模块将图形工作站变成一个虚拟化平台,管理员通过虚拟桌面管理模块创建虚拟机、为虚拟机安装系统、基于虚拟机制作模板、以及基于模板创建相同配置的虚拟机。
3.根据权利要求1所述的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:在步骤(2)中显卡透传管理模块对物理显卡进行管理,列出宿主机中所有的物理显卡,记录哪些显卡已经透传到虚拟机以及透传到哪个虚拟机,执行透传和取消透传。
4.根据权利要求1所述的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:在步骤(2)中虚拟桌面透传插件在虚拟机启动前和停止后执行特定的钩子代码,在启动前,它通过显卡透传管理模块检查是否有闲置的物理显卡,若有,则执行透传到本虚拟机,在停止后,它通过显卡透传管理模块检查是否有物理显卡被透传给本虚拟机,若有则取消透传。
5.根据权利要求1所述的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:在步骤(2)中用户管理模块允许管理员创建多个本地用户,或者导入现有用户数据库中的用户,并将虚拟桌面分配给用户,或从虚拟桌面回收用户,通过连接协议模块,这些用户可以从特定客户端连接到已经创建好,并且分配给用户的虚拟桌面上进行工作,如同使用本地桌面一样。
6.根据权利要求1所述的利用虚拟桌面和GPU透传实现多用户共享图形工作站的方法,其特征在于:在步骤(3)中,虚拟机被启动之前,借助于显卡透传管理模块和虚拟桌面透传插件,物理显卡最终被从宿主机上解绑,挂接到虚拟机中,如同显卡被物理上连接到该虚拟机,称为透传的显卡; 虚拟机被停止之后,借助于显卡透传管理模块和虚拟桌面透传插件,物理显卡最终被从虚拟机上解绑,挂接到宿主机中;透传的显卡不再存在; 在虚拟机运行过程中,透传的显卡由其负责管理,支持虚拟桌面和GPU透传的图形工作站不再管理对应物理显卡。
【文档编号】H04L29/08GK103491188SQ201310461144
【公开日】2014年1月1日 申请日期:2013年9月30日 优先权日:2013年9月30日
【发明者】敖青云, 蒋迪 申请人:上海沃帆信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1