一种GPU‑BOX服务器VR优化的方法与流程

文档序号:11476390阅读:330来源:国知局

本发明涉及gpu服务器及虚拟现实技术领域,具体地说是一种gpu-box服务器vr优化的方法。



背景技术:

虚拟现实(简称vr)指的是综合利用计算机图形系统和各种现实及控制等接口设备,在计算机上生成的、可交互的三维环境中提供沉浸感觉的技术。其中,计算机生成的、可交互的三维环境称为虚拟环境(即virtualenvironment,简称ve)。虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统的技术。它利用计算机生成一种模拟环境,利用多源信息融合的交互式三维动态视景和实体行为的系统仿真使用户沉浸到该环境中。

vr(虚拟现实)技术可广泛的应用于城市规划、室内设计、工业仿真、古迹复原、桥梁道路设计、房地产销售、旅游教学、水利电力、地质灾害、教育培训等众多领域,为其提供切实可行的解决方案。

在先进制造业领域,虚拟现实实现了跨平台的交互式设计、虚拟展示、虚拟装配、cae数据(computeraidedengineering工程设计中的计算机辅助工程)可视化等功能,大幅提高设计团队的设计效率,使研发人员能及时发现、修正设计缺陷和潜在的工艺问题,提高产品开发的制造成功率。

虚拟现实技术在教育培训领域也大有用武之地。为真实实验不具备或难以完成的教学功能创造条件。在涉及高危或极端的环境、不可及或不可逆的操作,高成本、高消耗、大型或综合训练等情况时,虚拟现实技术能提供可靠、安全和经济的实验项目。华东理工大学的g-magic(大型的可支持多用户的沉浸式虚拟现实产品)虚拟现实实验室,就是高校虚拟现实教学的一个范例。该实验室拥有cave洞穴式虚拟现实系统,可以把大学生设计的作品投影到墙面、天花板和地面上。比如,学生设计了一间淋浴房,他能利用这套系统把它展现在实验室里,和真实的淋浴房一样大小。营造出这种教学环境后,教师就能与学生更方便地交流各个环节的设计优劣,并随时做出修改。

vr现在正处于风生水起的阶段,但是vr的性能一直是大问题,最主要的问题就是响应延迟,玩家改变位置到这一位置的图像被cpu提交,gpu渲染,同步刷新到头部显示设备上,这中间的延迟会导致用户的头晕,减少相应的延迟,是vr从硬件到软件一直在优化的问题。

vr的性能瓶颈来源:

1.vr需要至少同时渲染2张50fps的图像,比常规的pc渲染量都要大。

2.vr对输入延迟性要求很高,因为对输入超过20ms的延迟都会引起用户的不适。



技术实现要素:

本发明的技术任务是针对以上不足之处,提供一种gpu-box服务器vr优化的方法,具体方法如下:

s1、通过vrsli多显卡支持实现gpu资源的有效扩展,缓解资源不足;

s2、使用多分辨率渲染,将边缘位置降低分辨率;

s3、使用异步时间卷曲,减轻用户的不适。

进一步的,优选的方法为,所述的异步时间卷曲,在gpu上配置一个独立的线程进行warp,所述的独立的线程会按照帧率给每个位置的warp,给于最新的基于位置的图像,以使得当gpu卡住时仍能够得到模拟的图像。

进一步的,优选的方法为,所述的s1中,具体的实现方式为,通过api实现了一组drawcall对多个显卡的广播,并为不同显卡设置不同的perspective,以实现左右两眼的drawcall的绘制在两个cpu并行。

进一步的,优选的方法为,实现方法还包括shadowmap。

进一步的,优选的方法为,所述的s2中,通过multi-projection技术实现使用多分辨率渲染,所述的multi-projection技术基于nvidia的maxwell架构的芯片。

进一步的,优选的方法为,所述的multi-projection技术,在显卡层面,在管线中并行多个投影,同时渲染到多个viewport,即一次pipeline绘制到多个viewport;在硬件层面实现多适口多分辨率。

本发明的一种gpu-box服务器vr优化的方法和现有技术相比,有益效果如下:

1、两个cpu并行绘制左右两眼的drawcall,优化了进程,延迟大大节省;

2、利用multi-projection的技术进行多分辨率渲染,可以减少50%的pixel的渲染,提高一倍的效率;

3、异步时间卷曲利用独立线程给出warp,能实现在很卡很卡时依然能够得到模拟的图像;

4、通过对vr的优化,可以大大增强虚拟现实的实用性,减少虚拟现实产品开发周期,降低产品开发成本,推动虚拟现实产品的发展。

具体实施方式

下面结合具体实施例对本发明作进一步说明。

sli全称为“可灵活伸缩的连接接口”(scalablelinkinterface),中文简称速力,是一种可把两张或以上的显卡连在一起,作单一输出使用的技术,从而达至绘图处理性能加强的效果。

时间扭曲(timewarp),时间扭曲是一种图像帧修正的技术,在使用虚拟现实眼睛设备时,由于头部运动过快,而造场景渲染的延迟,即头已经转过去了,但是图像还没有渲染出来,或者渲染的是上一帧的图像,时间扭曲它通过扭曲一副被送往显示器之前图像,来解决这个延迟问题。最基础的时间扭曲是基于方向的扭曲,这种只纠正了头部的转动变化姿势,这种扭曲对于2d图像是有优势的,它合并一副变形图像不需要花费太多系统资源。对于复杂的场景,它可以用较少的计算生成一个新的图像帧。timewarp正是利用了这个特性,在保证位置不变的情况下,把渲染完的画面根据最新获取的传感器朝向信息计算出一帧新的画面,再提交到显示屏.由于角度变化非常小,所以边缘不会出大面积的像素缺失情况.

异步时间扭曲是指在一个线程(称为atw线程)中进行处理,这个线程和渲染线程平行运行(异步),在每次同步之前,atw线程根据渲染线程的最后一帧生成一个新的帧。假设垂直同步时,当前帧还没有渲染完毕,这时如果要进行timewarp的话,就需要驱动提供一种高优先级的异步调用,这就是异步timewarp的由来:timewarp操作与场景渲染并行执行,如果没有新的渲染画面,就继续使用上一帧的画面进行timewarp。

在基本所有图形引擎中,每次引擎准备数据并通知gpu的过程称为一次drawcall,即opengl的描绘次数。

api(应用程序编程接口);viewport(视口);multi-projection(多口投影);high-prioritycontext(高优先级背景);perspective(透视)

实施例1:

本发明为一种gpu-box服务器vr优化的方法。

第一步为,vrsli多显卡支持,通过增加显卡,增加渲染性能。

即显卡0和显卡1轮流渲染第n帧和第n1帧,但是要求cpu要提交的足够快,因为cpu还是要提交两份drawcall,cpu不能成为瓶颈。

让显卡0和显卡1负责绘制左右两眼,而cpu为两个显卡提供一模一样的drawcall,因为在vr的两眼绘制的东西基本是一样的,除了perspective矩阵不一样。而vrworks通过其应用程序编程接口,实现了一组drawcall对多个显卡的广播,并可以为不同显卡设置不同的perspective。这样cpu一份drawcall对于两眼,而两眼的绘制在两个cpu并行,延迟大大节省。另外可以优化的设计为shadowmap。

第二步,multyresolutionrendering多分辨率渲染。

vr的图像为了适应眼镜的变形要做卷曲,需要对vr的图像做不同分辨率的渲染,即中心区域用比较高的分辨率,而边缘位置用较低的分辨率,极限情况下,将大部分边缘降低分辨率,可以减少50%的pixel的渲染,提高一倍的效率。

常规的渲染管线,要这样做,得不偿失,因为你要切分这个区域,定义多个不同大小的viewport,然后将物体依次渲染到多个视口上;本发明的nvidia的maxwell架构的芯片,支持多口投影技术,即在显卡层面,支持同时运行多个视口和投影,不同于常规管线,在管线中并行了多个投影,同时渲染到多个viewport,pipeline还是一次,只是在后面将这些像素绘制到多个viewport,这就是硬件层面的多适口多分辨率。

第三步,asyncchronoustimewarp异步时间卷曲。

timewarp也是vr很经典的优化,如果没有timewarp,我们会感觉很大的延时和眩晕。因为就算帧率再高,我们看到影响的那一刹那,渲染的也是过去某个时刻的图像,和我们当时所处的位置是不一样的,这种不一致随着帧渲染耗时的增长而增长,这种timewarp的做法是,在gpu绘制结束,扫描给显示屏前,将这个图像做一个图像空间的位移,以校准我们当前的位置,也就是说处于p0位置渲染的图像,在p1位置绘制好给我们,我们需要将其校准成p1位置的样子,这种校准有很多算法,都是在图像处理上做的平移,这样我们会感觉到看见的和我们的位置是同步的。在传统的渲染中,这些工作是在一个流水线上的,也就是同步的,当某一帧很耗时很卡时,用户会迟迟收不到当前位置校准的图片,一直停留在上一帧的图片,因为gpu卡住了,后面的校准也不能进行,用户会感觉强烈的卡和眩晕。而本发明的异步时间卷曲指的是在gpu上有一个独立的线程做这个warp,不管主线程渲染卡状态,这个独立的线程会按照帧率给每个位置的warp,给于最新的基于位置的图像,这能解决很卡很卡时依然能够得到模拟的图像。vrworks加入了这个高优先级背景的功能,允许用户启动一个优先级最高的线程最warp,独立于常规渲染线程。

本发明的一种gpu-box服务器vr优化的方法通过对vr的优化,可以大大增强虚拟现实的实用性,减少虚拟现实产品开发周期,降低产品开发成本,推动虚拟现实产品的发展。

通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的几种具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1