CN116166367B - 提升显示帧缓存图像读取效率的方法 - Google Patents

提升显示帧缓存图像读取效率的方法 Download PDF

Info

Publication number
CN116166367B
CN116166367B CN202310453649.8A CN202310453649A CN116166367B CN 116166367 B CN116166367 B CN 116166367B CN 202310453649 A CN202310453649 A CN 202310453649A CN 116166367 B CN116166367 B CN 116166367B
Authority
CN
China
Prior art keywords
image
frame
cloud desktop
display frame
buffer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310453649.8A
Other languages
English (en)
Other versions
CN116166367A (zh
Inventor
李唯实
孙立明
张铎
谢明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kirin Software Co Ltd
Original Assignee
Kirin Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kirin Software Co Ltd filed Critical Kirin Software Co Ltd
Priority to CN202310453649.8A priority Critical patent/CN116166367B/zh
Publication of CN116166367A publication Critical patent/CN116166367A/zh
Application granted granted Critical
Publication of CN116166367B publication Critical patent/CN116166367B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明涉及提升显示帧缓存图像读取效率的方法,包括如下步骤:在内存中维护上一帧显示帧缓存所对应的图像映射,以及上一帧的云桌面图像缓存;云桌面屏幕刷新前,生成一个与当前显示帧缓存等比缩小的本帧图像映射;将本帧图像映射与上一帧图像映射进行比较,得到图像差异区域;将图像差异区域等比放大为当前显示帧缓存与上一帧显示帧缓存的图像差异区域;从当前显示帧缓存中读取与图像差异区域对应部分的图像数据,将图像数据与上一帧的云桌面图像缓存整合后,得到本帧云桌面图像缓存。本发明能够有效减少减少从宿主机物理显卡中提取云桌面屏幕图像数据所造成的显卡性能损耗,从而提升云桌面的渲染性能。

Description

提升显示帧缓存图像读取效率的方法
技术领域
本发明涉及虚拟化桌面技术领域,具体涉及一种提升显示帧缓存图像读取效率的方法。
背景技术
云桌面是虚拟化和云计算时代的典型应用。用户通过网络远程访问云端的虚拟机,可以获得与本地PC一致的使用体验。为了满足建筑、汽车、船舶、飞机、游戏、动漫设计等3d应用的需求,云桌面往往需要通过显卡直通、显卡分片虚拟化和API转发等显卡虚拟化技术来实现图像3d渲染操作的硬件加速。
显卡虚拟化技术使得云桌面虚拟机可以借由其所在宿主机服务器上的物理显卡来处理3d图像渲染请求,可以极大提升云桌面的图像渲染性能。而当云桌面使用宿主机上的物理显卡来进行3d图像渲染硬件加速时,最终渲染生成的屏幕图像是存放在物理显卡的显示帧缓存中的。当需要将屏幕图像发送给云终端设备呈现时,需要宿主机将屏幕图像数据从物理显卡的显示帧缓存中读取到物理内存中,再通过云桌面传输协议发送给云终端设备。
然而,从读取宿主机物理显卡的显示帧缓存的操作会占用物理显卡较多的执行时间和带宽,造成额外的性能损耗,特别是当一块物理显卡需要负载多个云桌面虚拟机时,随着负载的虚拟机的数量以及虚拟机中云桌面分辨率的增加,性能损耗会同步增加:虚拟机越多、云桌面分辨率越高,则额外性能损耗越大。这种额外性能损耗严重影响了物理显卡的有效利用率和云桌面渲染性能的进一步提升。
针对这种情况,需要找到一种方法,能够有效减少读取显示帧缓存操作的开销,提升物理显卡的有效利用率和云桌面的渲染性能。
中国发明专利“基于SPICE协议的智能支持显卡直通和虚拟显卡的显示方法”(专利号:CN109358951B)。该发明具体涉及一种基于SPICE协议的智能支持显卡直通和虚拟显卡的显示方法。与现有技术相比较,该发明沿用了原有SPICE协议,可自适应物理显卡透传和虚拟显卡两种方式,展示虚拟桌面,与原有系统兼容性高。虚拟机通过virtIO与服务端通信,不直接与客户端通信,提高系统安全性。该发明采用的是显卡直通方式来满足用户的高性能显示需求,而并没有考虑到如何减少读取显卡中的图像数据的开销。
中国发明专利“优化虚拟图形处理单元利用的方法和系统”(专利号:CN102446114B)。该发明提供了用于优化虚拟图形处理单元利用的方法、系统和计算机程序产品。实施例包括为多个虚拟机中的每个虚拟机指定计算密度级别;为多个虚拟机中的每个虚拟机指定优先级级别;针对多个服务器中的每个服务器判定该服务器是否包括可用于执行多个虚拟机的计算密集型任务的虚拟机图形处理单元(VGPU);以及根据虚拟机的计算密集度级别和优先级别以及可用于执行计算密集型任务的VGPU的数据,为多个虚拟机中的一虚拟机指定一个或多个VGPU。该发明主要专注于分片虚拟化的优化,通过优化资源调度,来提高物理显卡的利用率,但适用范围不广,并无法适用于各项GPU虚拟化技术。
中国发明专利“一种多层次细粒度的虚拟化gpu调度优化方法”(专利号:CN108710536B)。该发明公开了一种多层次细粒度的虚拟化GPU调度优化方法,分别用了3种方式来优化调度策略:基于时间和事件的调度,基于流水线的无缝调度,以及混合基于环及基于虚拟机的调度。这3种调度策略分别利用了两个虚拟机切换造成的开销、虚拟机运行分成多个阶段同时运行以及多个虚拟机利用不同环同时工作这三点作为优化方法。该发明通过修改调度器及调度策略,大大降低了切换过程的开销,并且支持了多个虚拟GPU之间的并行执行,因此一个物理GPU共享的多个虚拟GPU的性能都能得到显著的提升,从而提升总体性能,然而,该发明主要专注于通过优化资源配置来提升渲染性能,且与Intel的GVT-g技术深度绑定,仅适用于Inter显卡的分片虚拟化,无法适用于各项GPU虚拟化技术。
中国发明专利“基于AMD显卡虚拟化传输Linux虚拟机屏幕画面的方法及系统”(专利号:CN111240631A)。该发明在显卡虚拟化环境下,利用AMD显卡的显卡驱动API抓取渲染区域的虚拟机屏幕画面,并将抓取的虚拟机屏幕画面在显卡内部直接编码为数据帧后传输到操作系统内存,将操作系统内存中数据帧传送给瘦终端,因此虚拟机屏幕画面数据到达操作系统不需要经过多次拷贝,可以提高获取画面的速度,更快的将虚机画面传送给瘦终端,提供用户体验。该发明通过减少从物理显卡中提取虚拟机屏幕画面数据的开销来提升虚拟机的图形性能,不涉及减少读取显示帧缓存中图像数据的一次性额外开销。
中国发明专利“一种减少VIRTIO‐GPU额外性能损耗的方法”(申请号:CN114968152A)。该发明通过监听VIRTIO-GPU虚拟显卡的渲染命令处理过程,从中提取并分析指定渲染窗口的命令,通过将读取物理显卡帧图像数据的区域限制为渲染窗口区域的方式来减少读取显示帧缓存中图像数据的额外开销。与本发明类似,该发明同样通过读取指定区域的显示帧缓存中图像数据的方式来减少物理显卡的额外开销,但该发明仅适用于VIRTIO-GPU显卡,监听渲染命令处理过程也会带来额外的时间开销,且得到的窗口区域仍可能大于实际的差异图像区域。与之相比,本发明主要是针对显示帧缓存中差异图像区域的查找过程进行了改进和优化,大部分处理过程均在物理显卡中完成,不仅开销小,而且能够准确获取到实际的差异图像区域,确保读取显示帧缓存中图像数据的额外开销降低到最小。此外,本发明不受限于具体的显卡虚拟化实现,可以广泛适用于显卡直通、分片虚拟化以及API转发等各种类型的显卡虚拟化技术,
发明内容
为解决已有技术存在的不足,本发明提供了一种提升显示帧缓存图像读取效率的方法,包括如下步骤:
步骤S1:在内存中维护上一帧显示帧缓存In-1所对应的图像映射In-1’,以及上一帧的云桌面图像缓存Dn-1
步骤S2:云桌面屏幕刷新前,生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’;
步骤S3:将本帧图像映射In’与上一帧图像映射In-1’ 进行比较,得到图像差异区域Rn’;
步骤S4:将图像差异区域Rn’等比放大为当前显示帧缓存In与上一帧显示帧缓存In-1的图像差异区域Rn
步骤S5:从当前显示帧缓存In中读取与图像差异区域Rn对应部分的图像数据Dn’,将Dn’与上一帧的云桌面图像缓存Dn-1整合后,得到本帧云桌面图像缓存Dn
其中,还包括步骤S6:分别以本帧图像映射In’及云桌面图像缓存Dn替代目前内存中所维护的上一帧显示帧缓存In-1所对应的图像映射In-1’,以及上一帧的云桌面图像缓存Dn-1,从而使本帧图像映射In’及云桌面图像缓存Dn分别作为新的上一帧显示帧缓存所对应的图像映射,以及上一帧的云桌面图像缓存,用于下一帧云桌面图像缓存的合成。
其中,所述步骤S2中,在物理显卡内生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’。
其中,所述步骤S3中,在内存中将本帧图像映射In’与上一帧图像映射In-1’ 进行比较,得到图像差异区域Rn’。
其中,所述步骤S2中,通过双线性采样生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’。
其中,所述步骤S2中,根据原图像相邻4个像素的值来计算缩小后的图像映射的对应坐标处像素的值,生成一个与当前显示帧缓存In等比缩小的本帧图像映射In
其中,所述步骤S2中,采用三次等比缩小方式,即将原图像依次等比缩小三次,得到一个数据量仅为原图像数据量1/64的本帧图像映射In’。
本发明能够有效减少减少从宿主机物理显卡中提取云桌面屏幕图像数据所造成的显卡性能损耗,从而提升云桌面的渲染性能。
附图说明
图1:本发明所涉及的显卡虚拟化技术下的云桌面实现流程图。
图2:本发明的提升显示帧缓存图像读取效率的方法的实现流程图。
具体实施方式
为了对本发明的技术方案及有益效果有更进一步的了解,下面结合附图详细说明本发明的技术方案及其产生的有益效果。
本发明涉及到的技术术语约定及解释如下:
云桌面:云桌面又称桌面虚拟化,是虚拟化和云计算时代的典型应用。云桌面通过云计算技术在云端数据中心搭建服务器集群,创建多个虚拟机以提供远程的计算、存储、应用程序等个性化内容的远程服务,用户通过各种云终端设备通过网络连入远程云桌面,获得属于自己的计算、存储、个性化应用和数据内容,实现与本地PC一致的使用体验。为提升显示渲染性能,云桌面可以通过GPU虚拟化来借用虚拟机所在宿主机上的物理显卡进行图像3d渲染操作的硬件加速。
宿主机:宿主机是部署了虚拟化环境的专属物理服务器,一台服务器可以虚拟化出多台云桌面虚拟机供用户使用,利用虚拟化技术来实现服务器硬件的多虚拟机共享。
显卡虚拟化:通过显卡直通、显卡分片虚拟化以及API转发等技术,使得云桌面可以使用虚拟机所在宿主机上的物理显卡来实现图像3d渲染操作的硬件加速。在显卡直通模式下,一个物理显卡只能支持一个云桌面虚拟机;而在显卡分片虚拟化以及API转发模式下,一个物理显卡可以支持多个云桌面虚拟机。
显示帧缓存:存放于显卡显存中的屏幕所显示画面的一个直接映象,又称为位映射图(Bit Map)或光栅。显示帧缓存对应一个屏幕的2维图像,它的每一存储单元对应屏幕上的一个像素,显卡对于屏幕渲染的最终结果都会更新到显示帧缓存中。
线性采样:一种从图像中获取数据时采用的过滤模式,是从图像中与坐标接近的多个值取平均来得到新图像中对应坐标处像素的取值。对于2维图像,线性过滤器取4个最接近的样本求平均,这称为双线性采样(bilinear sampling)。
在采用了显卡虚拟化技术的云桌面虚拟机中,其云桌面实现流程如图1所示。
首先,云桌面虚拟机中的图像渲染命令会被发送到宿主机物理显卡的处理单元上进行处理,物理显卡完成实际的图像渲染操作,并将操作的最终结果即待输出的屏幕图像保存到物理显卡显存中设置的显示帧缓存中;
其次,当云桌面中进行屏幕刷新时,会直接或间接访问物理显卡,读取物理显卡中的显示帧缓存,并将读取得到的屏幕图像保存到内存中;
最后,云桌面传输协议负责将读取到内存中的屏幕图像发送给网络上的云终端设备,并由云终端设备最终呈现云桌面的屏幕图像。
通过上述流程中的第一步,云桌面虚拟机可以借助宿主机的物理显卡来进行图像渲染加速,大大提升了云桌面的图像渲染性能。然而,在后续流程中,为了将屏幕画面发送给云终端设备,需要从物理显卡的显示帧缓存中读取出屏幕图像,这个读取操作会造成较大的显卡性能损耗,且提取的数据量越大,性能损耗越大。经测试,当云桌面的屏幕分辨率为1920x1080、按每秒30帧的频率通过OPENGL接口glReadPixels读取显示帧缓存时,每秒需从物理显卡中读取约240M字节的数据,造成的宿主机物理显卡性能损耗接近10%。当一台宿主机同时开启多台虚拟机时,造成的性能损耗将随着虚拟机数量的增加而线性增加,使得宿主机物理显卡资源并不能得到有效利用。
通过观察实际使用中的云桌面,可以发现并非每帧屏幕画面都完全不同,相邻两帧屏幕画面之间往往只有一小部分差异区域的图像是不一样的(这在窗口化操作时尤其明显)。要实现云桌面的画面刷新,实际上只需要读取这一部分差异区域的图像即可。相对于读取整个屏幕画面而言,读取这一部分差异区域的图像所需的数据量也会大大减少。例如若每帧仅需读取800x600大小的差异区域的图像,每秒需从物理显卡中读取的数据量将从240M字节降低到55M字节,所造成的宿主机物理显卡性能损耗也会大大降低。
在之前CN114968152A的研究中,在API转发方案中,如VIRTIO-GPU虚拟显卡,可以监听渲染命令的处理过程、提取和分析其中指定渲染窗口的命令,通过将读取的显示帧缓存图像区域限制为渲染窗口的方式来减少读取开销。但该方法仍存在几点不足:1)需要监听渲染命令处理过程,因此仅适用于能够方便获取渲染命令处理队列的API转发方案;2)监听渲染命令处理过程会带来额外的监听开销;3)监听得到的渲染窗口仍可能大于实际的图像差异区域,导致额外性能损耗降低偏小。
本发明的目标,是能够适用于显卡直通、分片虚拟化以及API转发等各类显卡虚拟化技术,能够以最小的代价来准确找到本帧的显示帧缓存图像与上一帧显示帧缓存图像之间的图像差异区域,进而在云桌面进行屏幕刷新时,只需要从显示帧缓存中仅读取这一部分差异区域所对应的图像数据,从而尽可能减少屏幕刷新时需要从宿主机物理显卡中读取的图像数据量大小,最大程度减少宿主机物理显卡的额外性能损耗,使宿主机的物理显卡得到有效利用,进一步提升显卡虚拟化的渲染性能。
本发明完整的处理流程如图2所示,本发明的总体思路,是在云桌面屏幕刷新前,先在物理显卡内生成一个与待读取显示帧缓存图像In等比缩小的图像映射In’,在读取In前,预先读取像映射In’到内存中,并与内存中保存的上一帧显示帧缓存In-1的图像映射In-1’进行比较,得到图像差异区域Rn’后,将Rn’等比放大为显示帧缓存图像In与In-1的图像差异区域Rn,仅读取In中与Rn对应部分的图像数据Dn’,然后将Dn’与内存中存储的上一帧云桌面图像缓存Dn-1整合后,就可得到本帧云桌面图像缓存Dn。通过减少从显卡中读取的图像数据量来减少读取显示帧缓存的额外开销。
本发明的处理思路中,主要包含以下几个关键点:
1、通过图像等比缩小,可以得到显示帧缓存图像的一个低分辨率图像映射,根据前后两帧的图像映射的差异对比,可以得到前后两帧显示帧缓存图像之间的图像差异区域的位置和大小;
2、图像等比缩小操作是在显卡中处理的,这一方面避免了将图像从显存复制到内存的复制开销,另一方面,由于物理显卡擅长处理大规模并行数据,物理显卡进行图像的等比缩小的速度要远快于CPU,且开销很小;
3、图像在等比缩小时会损失部分图像精确度,且缩小比例越大、精确度损失越大,精确度的损失会导致图像差异区域的计算也出现偏差,影响最终的画面呈现。为了最大程度避免图像差异区域的计算偏差,本发明在图像等比缩小时采用了双线性采样,双线性采样可以根据原图像相邻4个像素的值来计算缩小后的图像映射的对应坐标处像素的值,当等比缩小比例为1/2时,即缩小后图像映射的长、宽分别为原图像的长、宽的1/2时,图像差异区域基本不会出现偏差;
4、为了进一步获取缩小比例更大的图像映射,本发明采用三次等比缩小方式,即将原图像依次等比缩小三次,每次等比缩小比例均为为1:2,最终得到的图像映射的长、宽分别为原图像的1/8,读取最终图像映射的数据量仅为原图像数据量的1/64,且图像映射能够最大程度保留图像差异区域的细节;
5、由于物理显卡并未提供图像差异对比的接口,前后两帧的图像映射的差异对比工作,仍由CPU在内存中完成,需要把图像映射从显卡中读取到内存中;
6、为进行前后两帧图像映射的差异对比,需要在内存中维护上一帧的图像映射缓存,用于跟本帧的图像映射进行对比;每次对比完图像映射后,上一帧图像映射缓存更新为本帧的图像映射。
7、对比得到的图像差异区域,还需要等比放大为帧缓存图像中的图像差异区域,根据这个等比放大后的图像差异区域,到显卡的显示帧缓存中读取对应异区域的图像数据;
8、为实现最终的待输出图像数据整合,需要在内存中维护一个云桌面图像缓存,每次读取得到显示帧缓存中的图像差异区域图像数据后,都需要将其整合到云桌面图像缓存中。云桌面协议只从云桌面图像缓存中读取云桌面屏幕图像数据。
本发明的一个具体的实现方式如下:
1、宿主机服务器负责最终的云桌面图像的输出,在云桌面的第n-1帧期间,在宿主机服务器内存中维护两个图像缓存:第n-1帧的云桌面图像缓存Dn-1和等比缩小为原尺寸1/64(长、宽各缩小为原尺寸的1/8)的图像映射缓存In-1’;
2、在云桌面的第n帧期间,宿主机接收云桌面虚拟机发送过来的图像渲染命令,并将其转发给物理显卡进行渲染加速,渲染后的云桌面图像存储在物理显卡的显示帧缓存In中;
3、当需要向云终端设备输出第n帧的云桌面图像时,云桌面虚拟机向宿主机发送屏幕刷新命令;
4、宿主机收到云桌面虚拟机的屏幕刷新命令后,首先通知物理显卡将显示帧缓存In进行三次等比缩小操作,每次等比缩小操作均采用线性采样,图像长、宽的等比缩小比例均为为1/2,最终得到缩小后的图像映射In’的长、宽分别为In的1/8,数据量仅为In的1/64,且能够最大程度保留图像差异区域细节;
5、宿主机将缩小后的图像映射In’读取到内存中,并与内存中缓存的上一帧的图像映射In-1’进行对比,得到两个图像映射之间的差异区域Rn’的大小和位置;
6、将缓存的图像映射In-1’更新为图像映射In’;
7、将差异区域Rn’进行等比放大(长、宽分别放大8倍),就得到了显示帧缓存In相对于显示帧缓存In-1的图像差异区域Rn
8、根据图像差异区域Rn的大小和位置,宿主机将物理显卡显示帧缓存In中对应区域的图像数据Dn’读取到内存中,并与内存中缓存的第n-1帧的云桌面图像缓存Dn-1进行整合,得到第n帧的云桌面图像缓存Dn
9、云桌面传输协议定期读取云桌面图像缓存Dn并进行进一步处理,最终发送给云终端设备进行图像呈现;
10、至此,完成了云桌面第n帧屏幕图像的刷新输出,系统返回第1步进行下一帧的渲染和屏幕刷新。
本发明能够实现如下技术效果:
1、在大部分应用场景下能够有效减少减少从宿主机物理显卡中提取云桌面屏幕图像数据所造成的显卡性能损耗,从而提升云桌面的渲染性能;
2、在多云桌面场景下,能够有效缓解多个云桌面造成的宿主机物理显卡性能损耗线性增加的问题,确保宿主机物理显卡得到有效利用。
3、由于本发明仅仅是针对渲染完成后生成的显示帧缓存图像数据进行分析和处理,并不涉及图像渲染的具体过程,因此本发明可以广泛适用于需要通过读取显示帧缓存图像数据来实现远程云桌面的显卡直通、显卡分片虚拟化和API转发等各种显卡虚拟化技术。
虽然本发明已利用上述较佳实施例进行说明,然其并非用以限定本发明的保护范围,任何本领域技术人员在不脱离本发明的精神和范围之内,相对上述实施例进行各种变动与修改仍属本发明所保护的范围,因此本发明的保护范围以权利要求书所界定的为准。

Claims (5)

1.一种提升显示帧缓存图像读取效率的方法,其特征在于,包括如下步骤:
步骤S1:在内存中维护上一帧显示帧缓存In-1所对应的图像映射In-1’,以及上一帧的云桌面图像缓存Dn-1
步骤S2:云桌面屏幕刷新前,在物理显卡内生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’;
步骤S3:在内存中将本帧图像映射In’与上一帧图像映射In-1’ 进行比较,得到图像差异区域Rn’;
步骤S4:将图像差异区域Rn’等比放大为当前显示帧缓存In与上一帧显示帧缓存In-1的图像差异区域Rn
步骤S5:从当前显示帧缓存In中读取与图像差异区域Rn对应部分的图像数据Dn’, 将Dn’与上一帧的云桌面图像缓存Dn-1整合后,得到本帧云桌面图像缓存Dn
2.如权利要求1所述的提升显示帧缓存图像读取效率的方法,其特征在于还包括步骤S6:分别以本帧图像映射In’及云桌面图像缓存Dn替代目前内存中所维护的上一帧显示帧缓存In-1所对应的图像映射In-1’,以及上一帧的云桌面图像缓存Dn-1,从而使本帧图像映射In’及云桌面图像缓存Dn分别作为新的上一帧显示帧缓存所对应的图像映射,以及上一帧的云桌面图像缓存,用于下一帧云桌面图像缓存的合成。
3.如权利要求1所述的提升显示帧缓存图像读取效率的方法,其特征在于:所述步骤S2中,通过双线性采样生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’。
4.如权利要求3所述的提升显示帧缓存图像读取效率的方法,其特征在于:所述步骤S2中,根据原图像相邻4个像素的值来计算缩小后的图像映射的对应坐标处像素的值,生成一个与当前显示帧缓存In等比缩小的本帧图像映射In’。
5.如权利要求4所述的提升显示帧缓存图像读取效率的方法,其特征在于:所述步骤S2中,采用三次等比缩小方式,即将原图像依次等比缩小三次,得到一个数据量仅为原图像数据量1/64的本帧图像映射In’。
CN202310453649.8A 2023-04-25 2023-04-25 提升显示帧缓存图像读取效率的方法 Active CN116166367B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310453649.8A CN116166367B (zh) 2023-04-25 2023-04-25 提升显示帧缓存图像读取效率的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310453649.8A CN116166367B (zh) 2023-04-25 2023-04-25 提升显示帧缓存图像读取效率的方法

Publications (2)

Publication Number Publication Date
CN116166367A CN116166367A (zh) 2023-05-26
CN116166367B true CN116166367B (zh) 2023-07-04

Family

ID=86418615

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310453649.8A Active CN116166367B (zh) 2023-04-25 2023-04-25 提升显示帧缓存图像读取效率的方法

Country Status (1)

Country Link
CN (1) CN116166367B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105788542A (zh) * 2014-08-08 2016-07-20 华为技术有限公司 一种显示设备的刷新控制方法及装置
CN109697102A (zh) * 2017-10-23 2019-04-30 阿里巴巴集团控股有限公司 一种实现虚拟机桌面访问的方法及装置
WO2021129886A1 (zh) * 2019-12-23 2021-07-01 威创集团股份有限公司 一种屏幕显示的控制方法及电子设备
CN114968152A (zh) * 2022-04-29 2022-08-30 麒麟软件有限公司 减少virtio-gpu额外性能损耗的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105788542A (zh) * 2014-08-08 2016-07-20 华为技术有限公司 一种显示设备的刷新控制方法及装置
CN109697102A (zh) * 2017-10-23 2019-04-30 阿里巴巴集团控股有限公司 一种实现虚拟机桌面访问的方法及装置
WO2021129886A1 (zh) * 2019-12-23 2021-07-01 威创集团股份有限公司 一种屏幕显示的控制方法及电子设备
CN114968152A (zh) * 2022-04-29 2022-08-30 麒麟软件有限公司 减少virtio-gpu额外性能损耗的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于飞腾平台的GPU图形加速技术研究及应用;李荣振;《中国优秀硕士学位论文全文数据库 信息科技辑》;全文 *

Also Published As

Publication number Publication date
CN116166367A (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN109582425B (zh) 一种基于云端与终端gpu融合的gpu服务重定向系统及方法
EP2293192B1 (en) Methods and systems for remoting three dimensional graphics
US9619916B2 (en) Method for transmitting digital scene description data and transmitter and receiver scene processing device
US20040189677A1 (en) Remote graphical user interface support using a graphics processing unit
JP2009545825A (ja) 拡張型頂点キャッシュを備えたグラフィック処理装置
US20220139017A1 (en) Layer composition method, electronic device, and storage medium
JP2014089727A (ja) デプスエンジンの動的な再配置を用いたグラフィックシステム
CN114968152B (zh) 减少virtio-gpu额外性能损耗的方法
CN116821040B (zh) 基于gpu直接存储器访问的显示加速方法、装置及介质
KR100490401B1 (ko) TC(Thin-Client)환경에서 영상 처리 장치 및 방법
CN116166367B (zh) 提升显示帧缓存图像读取效率的方法
CN115934383A (zh) Wayland合成器下多显卡渲染方法
US10271097B2 (en) Dynamic resolution determination
CN115988265A (zh) 一种显示画面的渲染方法、装置和终端设备
CN114089896A (zh) 一种渲染图像截取方法及装置
CN111127296B (zh) 一种在大屏可视化系统中高效图片渲染方法
WO2023020124A1 (zh) 数据处理方法、装置、计算设备和系统
US11605364B2 (en) Line-based rendering for graphics rendering systems, methods, and devices
CN115857860B (zh) Wayland合成器中的镜像屏优化方法
KR101337558B1 (ko) 고해상도 영상 또는 입체 영상의 허브기능을 구비한 모바일단말기 및 그 모바일단말기를 이용하여 고해상도 영상 또는 입체 영상 제공 방법
CN115223516B (zh) 图形渲染与lcd驱动一体化芯片及相关方法和设备
US20230134779A1 (en) Adaptive Mesh Reprojection for Low Latency 6DOF Rendering
CN112218003B (zh) 一种桌面图像采集方法、装置及电子设备
CN115865908A (zh) 远程桌面系统启动控制方法及相关设备
CN116382838A (zh) gpu虚拟化实施方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant