CN116485628B - 图像显示方法、装置及系统 - Google Patents
图像显示方法、装置及系统 Download PDFInfo
- Publication number
- CN116485628B CN116485628B CN202310711213.4A CN202310711213A CN116485628B CN 116485628 B CN116485628 B CN 116485628B CN 202310711213 A CN202310711213 A CN 202310711213A CN 116485628 B CN116485628 B CN 116485628B
- Authority
- CN
- China
- Prior art keywords
- image
- state
- display
- image data
- control signal
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 230000005540 biological transmission Effects 0.000 claims abstract description 24
- 230000011664 signaling Effects 0.000 claims abstract description 3
- 238000009877 rendering Methods 0.000 claims description 41
- 230000008569 process Effects 0.000 claims description 27
- 238000004590 computer program Methods 0.000 claims description 12
- 230000008707 rearrangement Effects 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 4
- 238000013461 design Methods 0.000 abstract description 3
- 239000000872 buffer Substances 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 238000012545 processing Methods 0.000 description 15
- 239000008186 active pharmaceutical agent Substances 0.000 description 14
- 238000011161 development Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 238000012938 design process Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000001902 propagating effect Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1407—General aspects irrespective of display type, e.g. determination of decimal point position, display with fixed or driving decimal point, suppression of non-significant zeros
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本公开涉及计算机技术领域,尤其涉及一种图像显示方法、装置及系统。方法包括:在确定虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则控制状态机进入工作状态;在确定状态机处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止状态寄存器写入;从状态寄存器中读取当前存储的图像参数,并根据图像参数调用对应的第一接口读取图像数据并存储;调用显示API显示图像数据;若确定图像数据对应的目标图像显示完成,则发出中断控制信号并控制状态机进入等待状态。以解决GPU设计中难以排错问题、结果图像显示格式支持问题、图像种类支持问题以及图像内存排布支持问题、实时显示困难问题等。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种图像显示方法、装置及系统。
背景技术
在GPU(图形处理器,graphics processing unit)设计的过程中,需要使用虚拟化技术来提供中间平台,在中间平台上部署GPU的软件模型,以便相关软件工程提前展开,便于并行开发。在基于虚拟化平台的软件开发过程中,软件开发人员需要实时的帧缓冲显示或纹理图像显示来判断渲染是否正常。相关技术中,仅能对渲染完成的图像进行显示,不能实时对渲染过程中的产生的图像进行显示,而且对图像显示的格式等存在限制。
发明内容
有鉴于此,本公开提出了一种图像显示方法、装置及系统。
根据本公开的一方面,提供了一种图像显示方法,应用于虚拟机,所述方法包括:
在确定所述虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则进入工作状态;
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止所述状态寄存器的写入;
从所述状态寄存器中读取当前存储的图像参数,并根据所述图像参数调用对应的第一接口读取图像数据并存储;
调用显示API显示所述图像数据;
在确定所述图像数据对应的目标图像的显示完成的情况下,发出中断控制信号并控制所述状态机进入等待状态;
其中,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的信息。
在一种可能的实现方式中,所述方法还包括:
在确定所述图像数据对应的图像的显示未完成的情况下,继续从所述状态寄存器中读取当前存储的图像参数以及之后的步骤。
在一种可能的实现方式中,所述方法还包括:
在完成图像数据存储的预设的时间间隔之后,若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。
在一种可能的实现方式中,所述方法还包括:
根据所述图像参数确定所述目标图像对应的图像数据总数据量;
在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成;或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。
在一种可能的实现方式中,所述方法还包括:
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,则重新进入所述等待状态。
在一种可能的实现方式中,所述方法还包括:
在确定所述状态机进入工作状态的情况下,将显示状态控制信号设置为忙碌。
在一种可能的实现方式中,所述方法还包括:
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,控制所述状态机重新进入所述等待状态之前先将所述显示状态控制信号设置为空闲。
在一种可能的实现方式中,所述方法还包括:
在确定所述状态机处于等待状态的情况下,若确定状态寄存器并未写入控制数据传输结束控制信号,则控制所述状态机进入更新状态;
在所述状态机处于更新状态下,更新所述状态寄存器中存储的图像参数。
根据本公开的另一方面,提供了一种图像显示装置,应用于虚拟机,所述装置包括:
状态切换模块,用于在确定所述虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则进入工作状态;
写入控制模块,用于在确定处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止所述状态寄存器的写入;
数据获取模块,用于从所述状态寄存器中读取当前存储的图像参数,并根据所述图像参数调用对应的第一接口读取图像数据并存储;
图像显示模块,用于调用显示API显示所述图像数据;
所述状态切换模块,还用于在确定所述图像数据对应的目标图像的显示完成的情况下,发出中断控制信号并进入等待状态;
其中,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的信息。
在一种可能的实现方式中,所述数据获取模块,还用于在确定所述图像数据对应的图像的显示未完成的情况下,继续从所述状态寄存器中读取当前存储的图像参数。
在一种可能的实现方式中,所述装置还包括:
内存重排模块,用于在完成图像数据存储的预设的时间间隔之后,若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。
在一种可能的实现方式中,所述状态切换模块,还用于根据所述图像参数确定所述目标图像对应的图像数据总数据量;
在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成;或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。
在一种可能的实现方式中,所述状态切换模块,还用于在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,则控制所述状态机重新进入所述等待状态。
在一种可能的实现方式中,所述状态切换模块,还用于在确定所述状态机进入工作状态的情况下,将显示状态控制信号设置为忙碌。
在一种可能的实现方式中,还用于在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,重新所述状态机进入所述等待状态之前先将所述显示状态控制信号设置为空闲。
在一种可能的实现方式中,所述状态切换模块,还用于在确定所述状态机处于等待状态的情况下,若确定状态寄存器并未写入控制数据传输结束控制信号,则进入更新状态;
所述装置还包括:数据更新模块,用于在所述状态机处于更新状态下,更新所述状态寄存器中存储的图像参数。
根据本公开的另一方面,提供了一种图像显示系统,包括:客户侧装置、图像显示装置和图像渲染模型,所述图像显示装置应用于虚拟机,
所述图像渲染模型,用于响应于用户操作对目标图像进行渲染;
所述客户侧装置,用于响应于用户操作向所述图像显示装置发送控制数据传输结束控制信号;
所述图像显示装置,用于接收所述控制信号,并根据所述控制信号调取所述图像渲染模型对目标图像进行渲染的过程中产生的图像数据以及对应于所述图像数据的图像参数,调取显示API显示所述图像数据,在根据所述图像参数确定所述目标图像的显示完成的情况下,向所述客户侧装置发送中断控制信号;
所述客户侧装置,还用于根据接收到的中断控制信号发出目标图像显示结束提醒。
根据本公开的另一方面,提供了一种图像显示装置,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
根据本公开的另一方面,提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现上述方法。
根据本公开的另一方面,提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
本公开实施例所提供的图像显示方法、装置及系统,可以是一种基于虚拟机的GPU帧缓冲监视模型,可以解决GPU设计过程中难以排错(Debug)问题、结果图像显示格式支持问题、图像种类(帧缓冲图像或纹理)支持问题以及图像内存排布支持问题、实时显示困难等问题。
根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。
图1示出本公开一实施例的图像显示系统的框图。
图2示出本公开一实施例的图像显示方法的状态示意图。
图3示出本公开一实施例的图像显示方法的运行流程示意图。
图4示出本公开一实施例的图像显示方法的流程图。
图5示出本公开一实施例的图像显示装置的框图。
图6根据一示例性实施例示出的一种用于图像显示的装置1900的框图。
具体实施方式
以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
在GPU(图形处理器,graphics processing unit)设计的过程中,需要使用虚拟化技术来提供中间平台,在中间平台上部署GPU的软件模型,以便相关软件工程提前展开,便于并行开发。在基于虚拟化平台的软件开发过程中,软件开发人员需要实时的帧缓冲显示或纹理图像显示来判断渲染是否正常。对于不同的帧缓冲或纹理的内存排布、数据格式等都应有较好的支持。
虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上运行而不是真实的基础上运行。对于GPU虚拟平台的开发。相关技术的常用的虚拟化解决方案有VMware ESXi、Xen server(基于Linux的虚拟化服务器)和Qemu(虚拟操作系统模拟器)等。在GPU设计过程中,涉及到对PCIe(peripheral component interconnect express,高速串行计算机扩展总线标准)设备的虚拟化,通常用Qemu+KVM的方式来模拟GPU,KVM(Kernel-based Virtual Machine,KVM虚拟机)负责指令运行,Qemu负责外围设备的虚拟化。
在进行图像处理的前期的软件验证和开发过程中,软件开发人员需要通过对比图像来判断图像是否渲染正确。故如何在虚拟化平台中实时展示图像数据是中间平台的重点开发目标之一。相关技术中的方案有基于Qemu VNC(虚拟控制台)可视化工具和自行保存数据的方法。具体地,在Qemu中,图像的传输与显示依靠VNC可视化工具,QEMU会对每一个虚拟机模拟一块网卡,VM(VM服务器)的显示控制信号都会留在这个网卡的显存中,由QEMU启动VNC server,由一定的频率从网卡的显存中提取控制信号发送到VNC client,再由VNCclient来进行显示。通过这种方式,Qemu可以显示出VM的图形界面。基于VNC的显示方案仅仅能显示虚拟机的画面,无法满足GPU运行时显示相关的中断处理。
在GPU前中期的设计过程中,通常由软件开发人员通过PCIE读写来读取GPU中的framebuffer(帧缓冲区)再保存到本地,或由架构人员在软件模型中进行保存,待程序运行结束后查看图像。这一过程无法实现图像的实时显示。
相关技术中Qemu VNC方法,有以下缺点:
1、Qemu VNC的方法仅能显示虚拟机的画面,对于软件模型而言,无法模拟GPU内部的显示相关运行逻辑,例如GPU在输出画面时需要发送PCIE中断等,由于逻辑不完善,不利于后续开发人员进行相关开发。
2、无法由软件开发人员自行配置图像显示的格式,或指定图像地址,如纹理、深度缓冲等。
3、无法针对所有可能出现的纹理、图像的数据格式、内存排布等进行正确的显示,且自定义程度较低、自行开发存在软件耦合度过高的问题。
4、无法实时展示GPU渲染内容。
在GPU开发过程中,需要使用模型来进行前期的架构验证,在验证过程中,相关技术中通常在模型中将图像保存到本地后,在运行结束后检查图像是否正确。通常使用模型验证会损耗大量的时间来生成渲染图象,放到帧缓冲中等待缓存,例如LOL的游戏关键帧可能需要几十小时才能获得其中一个游戏画面。而且对于渲染过程中的纹理采样等要素,难以实时观测结果。
为解决上述问题,本公开提供一种图像显示方法、装置及系统,可以是一种基于虚拟机的GPU帧缓冲监视模型,可以解决GPU设计过程中难以排错(Debug)问题、结果图像显示格式支持问题、图像种类(帧缓冲图像或纹理)支持问题以及图像内存排布支持问题、实时显示困难等问题。
如图1所示,本公开所提供的图像显示系统可以包括客户侧装置、图像显示装置和图像渲染模型。在一些实施例中,图像显示系统还可以包括显示API和/或虚拟平台。其中,所述图像渲染模型(GPU模型),用于响应于用户操作对目标图像进行渲染。所述客户侧装置,用于响应于用户操作向所述图像显示装置发送控制数据传输结束控制信号。所述图像显示装置,用于接收所述控制信号,并根据所述控制信号调取所述图像渲染模型对目标图像进行渲染的过程中产生的图像数据以及对应于所述图像数据的图像参数,调取显示API显示所述图像数据,在根据所述图像参数确定所述目标图像的显示完成的情况下,向所述客户侧装置发送中断控制信号。所述客户侧装置,还用于根据接收到的中断控制信号发出目标图像显示结束提醒。在一些实施例中,图像显示装置可以设置在HostOS侧,可以为嵌入到虚拟机的软件系统。用户可以通过GuestOS侧的客户侧装置的内核驱动输入控制数据传输结束控制信号等控制信号。控制信号通过内核驱动和虚拟平台之间的PCI/PCIE总线写入到虚拟平台特定地址后,图像显示装置获取到该控制信号并响应执行,调用API接口为用户进行针对目标图像的图像显示,使得用户可以在GPU模型进行针对目标图像的渲染的过程中实时查看图像。
如图2所示,本公开所示的应用于图像显示装置这一侧的图像显示方法可以按照状态机的形式实现,该方法可以包括四个状态,分别为结束状态、工作状态、等待状态和更新状态。如图3、图4所示,该方法中应用于图像显示装置这一侧包括步骤S001-步骤S005以及步骤S101-步骤S116。以下结合图2-图4对本公开所提供的图像显示方法的实现过程以及图像显示系统的工作过程及原理进行示意性说明。
如图3所示,在确定虚拟机启动后(S001),自动注册对应于该方法的PCI-DEVICE(S002),而后进行初始化(S003)。其中,初始化包括为该方法分配执行所需的内存资源,该内存资源包括状态寄存器。在完成初始化后而后执行步骤S101进入等待状态。在确定虚拟机停止的情况下,释放对应于该方法的所有内存资源(S004)后虚拟机关闭(S005)。
如图4所示,在步骤S101中,控制状态机进入等待状态,而后执行步骤S102。
如图4所示,在步骤S102中,在确定状态机当前处于等待状态的情况下,对写入状态寄存器中的数据进行检测,等待用户通过客户侧装置的内核驱动输入控制数据传输结束控制信号KICK,而后执行步骤S103。
如图4所示,在步骤S103中,若确定状态寄存器写入控制数据传输结束控制信号KICK,则执行步骤S104控制状态机进入工作状态。若确定状态寄存器没有写入控制数据传输结束控制信号KICK,则执行步骤S115控制状态机进入更新状态。状态机进入更新状态后,执行步骤S116,更新状态寄存器所存储的数据,并在完成数据更新后执行步骤S101进入等待状态。
其中,状态寄存器所存储的数据包括图像参数,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的基本信息。在一些实施例中,图像参数可以为目标图像对应的图像数据的写入地址(可以包括写入高地址、写入低地址)、写入图像宽度、写入图像高度、写入图像步长、写入图像格式等与图像相关的参数。图像数据可以为表征图像特征信息的数据。
如图4所示,在确定状态机处于工作状态的情况下,可以直接执行步骤S106进行停止控制信号STOP的状态确定。若确定停止控制信号STOP处于第一状态,则执行步骤S108。若确定停止控制信号STOP处于第二状态,则执行步骤S101控制状态机重新进入等待状态。在一种可能的实现方式中,如图4所示,在确定状态机处于工作状态的情况下,还可以先执行步骤S105并在步骤S105完成后执行步骤S106。在步骤S105中,可以先将显示状态控制信号BUSY设置为忙碌。在一些实施例中,在确定停止控制信号STOP处于第二状态,重新执行步骤S101进入等待状态之前还需要执行步骤S107。在步骤S107中,将显示状态控制信号BUSY设置为空闲。
在一些实施例中,STOP处于第一状态可以为STOP位为低位。STOP处于第二状态可以为STOP位为高位。其中,高位可以为STOP为1,低位可以为STOP为0。可以根据实际需要对STOP的第一状态和第二状态进行设置,本申请对此不作限制。其中,可以通过不同的数值对“忙碌”和“空闲”进行区分,例如可以设置高位为“忙碌”、低位为“空闲”,高位可以1,低位可以0。
如图4所示,在步骤S108中,锁定状态寄存器,禁止所述状态寄存器的写入,而后执行步骤S109。这样,可以停止状态寄存器的数据更新,保证可以为用户显示所需的目标图像。
如图4所示,在步骤S109中,在锁定状态寄存器之后,从所述状态寄存器中读取当前存储的图像参数,并根据图像参数调用对应的第一接口读取图像数据,并将图像数据存储到预设缓冲区中,而后可以直接执行步骤S112或者执行步骤S110。其中,第一接口可以为图像渲染模型对应的接口。在一些实施例中,可以根据从状态寄存器中读取到的图像参数,调用第一接口读取到图像数据。
如图4所示,在步骤S110中,可以在步骤S109完成后,等待预设的间隔时间之后,执行步骤S111;或者可以在步骤S109完成后,等待预设的间隔时间之后,执行步骤S112。其中,可以根据实际需要对间隔时间进行设置,例如,间隔时间可以100毫秒,本公开对此不作限制。
如图4所示,在步骤S111中,针对不同的内存排布图像数据可以重新分配内存。若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。例如目标排布方式为线性排布,若图像数据当前的内存排布方式为线性排布则不需要重新分配。若图像数据当前的内存排布方式为Z-Order排布,则需要将Z-Order的图像数据重排为线性排布(也即目标排布方式)。其中,会对图像数据的内存排布方式进行识别,统一将非线性排布的图像数据的内存排布皆转化为目标排布方式(如线性排布)来保证图像输出的正确性和一致性。这样,就可以调用显示API实现不同格式的目标图像的显示。
如图4所示,在步骤S112中,调用显示API显示所述图像数据,而后执行步骤S113。其中,可以将写入图像格式等图像参数与图像数据一起发送至显示API,以使显示API可以对不同格式的目标图像进行显示。在一些实施例中,显示API可以是能够进行目标图像显示的软件对应的API,本公开对此不作限制。
如图4所示,在步骤S113中,确定当前是否完成目标图像的显示。在确定所述图像数据对应的目标图像的显示完成的情况下,执行步骤S114。在确定所述图像数据对应的目标图像的显示未完成的情况下,执行步骤S109。在一些实施例中,步骤S113可以包括:根据所述图像参数确定所述目标图像对应的图像数据总数据量;在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成。或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。其中,总数据量=max(width,stride)*bpp(format),width表示写入图像宽度,stride表示写入图像步长,bpp(format)表示对应于目标图像的写入图像格式的像素深度BPP(bits per pixel)。
其中,在图像数据的内存排布方式为非线性排布的情况下,可能以块为单位进行图像数据读取。例如,在内存中可能以4乘4的像素块N-Order排布的8bpp(bits per pixel)图像数据,每次读取则以128bit为单位,每次仅读取16个像素的数据进行显示,再下一次再读取下一块的数据进行显示。所以,需要对目标图像显示是否完成进行判断,以保证针对任意内存排布方式的图像数据均能实现目标图像的整张完整显示。
如图4所示,在步骤S114中,向客户侧装置的内核驱动发送中断控制信号VSYNC,并直接执行步骤S101或、在执行步骤S107之后执行步骤S101。其中,中断控制信号VSYNC用于指示当前目标图像显示已经完成,可以执行新的图像显示任务。并且,利用中断控制信号VSYNC模拟了真实GPU的运行过程,也便于用户对GPU的控制。有利于用户基于中断控制信号VSYNC监控图像显示过程,便于对图像渲染模型的控制。在一种可能的实现方式中,客户侧装置接收到中断控制信号VSYNC之后,可以发出目标图像显示结束提醒,用以提醒用户当前目标图像显示已经完成,可以执行新的图像显示任务,以便于用户可以向图像显示装置发送新的显示任务。
本公开实施例所提供的应用于图像显示装置的图像显示方法,可以内嵌于虚拟机中,作为PCI-DEVICE的一部分,可通过中断控制信号VSYNC模拟GPU的中断来为驱动提供GPU显示相关的逻辑反应。并且,屏蔽了部分的PCI-DEVICE地址作为自己的状态寄存器空间,提供了GPU图像地址、图像格式、长宽、步长、内存排布等图像参数配置,并可根据这些配置自适应地显示图片。通过内存重排的方式支持了不同的内存排布的显示问题,通过转发图像格式配置给显示API来支持不同的图像格式,通过配置内存地址寄存器来实现自定义的帧缓冲或纹理数据的数据提取。可快速、实时显示渲染过程,即使利用图像渲染模型的渲染未结束,仍能显示渲染结束的图像数据,显示图像与图像渲染过程互不影响。
在一种可能的实现方式中,可以预先对控制信号进行控制协议设置,以使得内核驱动与虚拟机可以基于控制协议设置发送控制信号。如下表1所示,控制信号可以包括以下内容。其中,“ID”代表该控制信号的类型。“地址”代表内核驱动应写入的状态寄存器的偏移量。“位宽”表该控制信号所占用的位宽(bit为单位)。“读写性”代表该控制信号在状态寄存器中为可读、可写中的部分或全部。
表 1 控制信号
其中,如表1所示,KICK为控制数据传输结束控制信号,内核驱动向KICK写入1后确定状态寄存器已经被用户写入KICK。ADDR_HI,ADDR_LO为图像在图像渲染模型(GPU模型)中的显存基地址。MEM_LAYOUT可以表示图像在GPU显存中的内存排列方式。其中,内存排布方式可以包括LINEAR、Z-order、N-order、块block等,本公开对此不作限制。STOP为停止控制信号,用于控制停止刷新图像数据并复位。
如图5所示,本公开实施例还提供一种图像显示装置,该装置应用于虚拟机。该装置包括:状态切换模块41、写入控制模块42、数据获取模块43和图像显示模块44。
状态切换模块41,用于在确定虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则控制所述状态机进入工作状态。
写入控制模块42,用于在确定状态机处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止所述状态寄存器的写入。
数据获取模块43,用于从所述状态寄存器中读取当前存储的图像参数,并根据所述图像参数调用对应的第一接口读取图像数据并存储。其中,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的信息。
图像显示模块44,用于调用显示API显示所述图像数据。
所述状态切换模块41,还用于在确定所述图像数据对应的目标图像的显示完成的情况下,发出中断控制信号并控制状态机进入等待状态。
在一种可能的实现方式中,所述数据获取模块43,还用于在确定所述图像数据对应的图像的显示未完成的情况下,继续从所述状态寄存器中读取当前存储的图像参数。
在一种可能的实现方式中,所述装置还包括:
内存重排模块,用于在完成图像数据存储的预设的时间间隔之后,若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。
在一种可能的实现方式中,所述状态切换模块41,还用于根据所述图像参数确定所述目标图像对应的图像数据总数据量;
在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成;或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。
在一种可能的实现方式中,所述状态切换模块41,还用于在确定状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,则控制状态机重新进入所述等待状态。
在一种可能的实现方式中,所述状态切换模块41,还用于在确定状态机进入工作状态的情况下,将显示状态控制信号设置为忙碌。
在一种可能的实现方式中,所述状态切换模块41,还用于在确定状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,控制状态机重新进入所述等待状态之前先将所述显示状态控制信号设置为空闲。
在一种可能的实现方式中,所述状态切换模块41,还用于在确定状态机处于等待状态的情况下,若确定状态寄存器并未写入控制数据传输结束控制信号,则控制状态机进入更新状态。所述装置还可以包括:数据更新模块,用于在所述状态机处于更新状态下,更新所述状态寄存器中存储的图像参数。
本公开提供一种图像显示装置,可以是一种基于虚拟机的GPU帧缓冲监视模型,可以解决GPU设计过程中难以排错(Debug)问题、结果图像显示格式支持问题、图像种类(帧缓冲图像或纹理)支持问题以及图像内存排布支持问题、实时显示困难等问题。
需要说明的是,尽管以上述实施例作为示例介绍了图像显示方法、装置及系统如上,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各步骤、模块,只要符合本公开的技术方案即可。
在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为在执行所述存储器存储的指令时,实现上述方法。
本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
图6是根据一示例性实施例示出的一种用于图像显示的装置1900的框图。例如,装置1900可以被提供为一服务器或终端设备。参照图6,装置1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
装置1900还可以包括一个电源组件1926被配置为执行装置1900的电源管理,一个有线或无线网络接口1950被配置为将装置1900连接到网络,和一个输入输出接口1958(I/O接口)。装置1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,MacOS XTM,UnixTM, LinuxTM,FreeBSDTM或类似。
在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由装置1900的处理组件1922执行以完成上述方法。
本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
Claims (19)
1.一种图像显示方法,其特征在于,应用于虚拟机,所述方法包括:
在确定所述虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则进入工作状态;
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止所述状态寄存器的写入;
从所述状态寄存器中读取当前存储的图像参数,并根据所述图像参数调用对应的第一接口读取图像数据并存储;
调用显示API显示所述图像数据;
在确定所述图像数据对应的目标图像的显示完成的情况下,发出中断控制信号并控制所述状态机进入等待状态;
其中,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述图像数据对应的图像的显示未完成的情况下,继续从所述状态寄存器中读取当前存储的图像参数以及之后的步骤。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在完成图像数据存储的预设的时间间隔之后,若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
根据所述图像参数确定所述目标图像对应的图像数据总数据量;
在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成;或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,则控制所述状态机重新进入所述等待状态。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述状态机进入工作状态的情况下,将显示状态控制信号设置为忙碌。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,控制所述状态机重新进入所述等待状态之前先将所述显示状态控制信号设置为空闲。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定所述状态机处于等待状态的情况下,若确定状态寄存器并未写入控制数据传输结束控制信号,则控制所述状态机进入更新状态;
在更新状态下,更新所述状态寄存器中存储的图像参数。
9.一种图像显示装置,其特征在于,应用于虚拟机,所述装置包括:
状态切换模块,用于在确定所述虚拟机中的状态机处于等待状态的情况下,若确定状态寄存器写入控制数据传输结束控制信号,则进入工作状态;
写入控制模块,用于在确定处于工作状态的情况下,若确定停止控制信号处于第一状态,则禁止所述状态寄存器的写入;
数据获取模块,用于从所述状态寄存器中读取当前存储的图像参数,并根据所述图像参数调用对应的第一接口读取图像数据并存储;
图像显示模块,用于调用显示API显示所述图像数据;
所述状态切换模块,还用于在确定所述图像数据对应的目标图像的显示完成的情况下,发出中断控制信号并进入等待状态;
其中,所述图像参数是图像渲染模型在对目标图像进行渲染的过程中产生的图像数据对应的信息。
10.根据权利要求9所述的装置,其特征在于,
所述数据获取模块,还用于在确定所述图像数据对应的图像的显示未完成的情况下,继续从所述状态寄存器中读取当前存储的图像参数。
11.根据权利要求9所述的装置,其特征在于,所述装置还包括:
内存重排模块,用于在完成图像数据存储的预设的时间间隔之后,若根据所述图像参数确定所述图像数据的内存排布方式与目标排布方式不同,则对所述图像数据进行内存重排,以使得排布后的图像数据的内存排布方式为所述目标排布方式。
12.根据权利要求9或10所述的装置,其特征在于,
所述状态切换模块,还用于根据所述图像参数确定所述目标图像对应的图像数据总数据量;
在所述目标图像对应的图像数据的已读数据量等于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示完成;或者,在所述目标图像对应的图像数据的已读数据量小于所述总数据量的情况下,确定所述图像数据对应的目标图像的显示未完成。
13.根据权利要求9所述的装置,其特征在于,
所述状态切换模块,还用于在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,则控制所述状态机重新进入所述等待状态。
14.根据权利要求9所述的装置,其特征在于,
所述状态切换模块,还用于在确定所述状态机进入工作状态的情况下,将显示状态控制信号设置为忙碌。
15.根据权利要求14所述的装置,其特征在于,
所述状态切换模块,还用于在确定所述状态机处于工作状态的情况下,若确定停止控制信号处于第二状态,重新所述状态机进入所述等待状态之前先将所述显示状态控制信号设置为空闲。
16.根据权利要求9所述的装置,其特征在于,
所述状态切换模块,还用于在确定所述状态机处于等待状态的情况下,若确定状态寄存器并未写入控制数据传输结束控制信号,则控制所述状态机进入更新状态;
所述装置还包括:数据更新模块,用于在所述状态机处于更新状态下,更新所述状态寄存器中存储的图像参数。
17.一种图像显示系统,其特征在于,包括:客户侧装置、图像显示装置和图像渲染模型,所述图像显示装置应用于虚拟机,
所述图像渲染模型,用于响应于用户操作对目标图像进行渲染;
所述客户侧装置,用于响应于用户操作向所述图像显示装置发送控制数据传输结束控制信号;
所述图像显示装置,用于接收所述控制信号,并根据所述控制信号调取所述图像渲染模型对目标图像进行渲染的过程中产生的图像数据以及对应于所述图像数据的图像参数,调取显示API显示所述图像数据,在根据所述图像参数确定所述目标图像的显示完成的情况下,向所述客户侧装置发送中断控制信号;
所述客户侧装置,还用于根据接收到的中断控制信号发出目标图像显示结束提醒。
18.一种图像显示装置,其特征在于,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为在执行所述存储器存储的指令时,实现权利要求1至8中任意一项所述的方法。
19.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1至8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310711213.4A CN116485628B (zh) | 2023-06-15 | 2023-06-15 | 图像显示方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310711213.4A CN116485628B (zh) | 2023-06-15 | 2023-06-15 | 图像显示方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116485628A CN116485628A (zh) | 2023-07-25 |
CN116485628B true CN116485628B (zh) | 2023-12-29 |
Family
ID=87223451
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310711213.4A Active CN116485628B (zh) | 2023-06-15 | 2023-06-15 | 图像显示方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116485628B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119951A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | Gpu虚拟化方法、装置、系统及电子设备、计算机程序产品 |
CN112686797A (zh) * | 2021-01-12 | 2021-04-20 | 西安芯瞳半导体技术有限公司 | 用于gpu功能验证的目标帧数据获取方法、装置及存储介质 |
CN114579255A (zh) * | 2022-03-07 | 2022-06-03 | 北京金山云网络技术有限公司 | 虚拟机的图像处理方法、装置、系统以及电子设备 |
CN115101025A (zh) * | 2022-07-13 | 2022-09-23 | 珠海昇生微电子有限责任公司 | 一种支持虚拟帧缓冲的lcd控制电路及其控制方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10304421B2 (en) * | 2017-04-07 | 2019-05-28 | Intel Corporation | Apparatus and method for remote display and content protection in a virtualized graphics processing environment |
-
2023
- 2023-06-15 CN CN202310711213.4A patent/CN116485628B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018119951A1 (zh) * | 2016-12-29 | 2018-07-05 | 深圳前海达闼云端智能科技有限公司 | Gpu虚拟化方法、装置、系统及电子设备、计算机程序产品 |
CN112686797A (zh) * | 2021-01-12 | 2021-04-20 | 西安芯瞳半导体技术有限公司 | 用于gpu功能验证的目标帧数据获取方法、装置及存储介质 |
CN114579255A (zh) * | 2022-03-07 | 2022-06-03 | 北京金山云网络技术有限公司 | 虚拟机的图像处理方法、装置、系统以及电子设备 |
CN115101025A (zh) * | 2022-07-13 | 2022-09-23 | 珠海昇生微电子有限责任公司 | 一种支持虚拟帧缓冲的lcd控制电路及其控制方法 |
Non-Patent Citations (2)
Title |
---|
GPUvm: GPU Virtualization at the Hypervisor;Yusuke Suzuki et al.;《 IEEE Transactions on Computers》;第65卷(第09期);全文 * |
基于GPU的战场态势实时处理与显示技术优化;张志明 等;指挥控制与仿真(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116485628A (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101714091B (zh) | 用于在操作系统初始化期间显示平台图形的方法和系统 | |
US9176765B2 (en) | Virtual machine system and a method for sharing a graphics card amongst virtual machines | |
JP4982347B2 (ja) | 画像情報の更新を検出するプログラム、方法および画像処理装置 | |
CN101923479B (zh) | 一种终端启动时控制屏幕显示的方法及移动终端 | |
CN112199162B (zh) | 基于虚拟化磁盘双活容灾的磁盘快照方法、装置及介质 | |
US20150109310A1 (en) | Gpu based parallel image processing at thin client | |
CN112947969B (zh) | 一种页面离屏渲染方法、装置、设备和可读介质 | |
US20190325562A1 (en) | Window rendering method and terminal | |
US9471357B2 (en) | Monitoring virtual machine interface and local graphical user interface on a thin client and alternating therebetween | |
US9952887B2 (en) | Device simulation in a secure mode supported by hardware architectures | |
CN108765539A (zh) | 基于OpenGLES的图像渲染方法、装置、设备及存储介质 | |
CN112506745B (zh) | 内存温度读取方法、装置及计算机可读存储介质 | |
CN101739289A (zh) | 一种在Linux虚拟机中设置显示模式的方法及装置 | |
CN111857966A (zh) | 虚拟机快照创建方法、装置及计算机可读存储介质 | |
CN113342703A (zh) | 一种渲染效果实时调试方法、装置、开发设备及存储介质 | |
CN114153477A (zh) | Pcie驱动卡固件升级方法、装置、系统、设备及介质 | |
CN116485628B (zh) | 图像显示方法、装置及系统 | |
CN116775413A (zh) | 一种pcie拓扑扫描方法、装置、设备及可读存储介质 | |
CN110941408B (zh) | 一种kvm虚拟机图形界面输出方法及装置 | |
CN111752623A (zh) | 显示配置方法、装置、电子设备及可读存储介质 | |
WO2019092849A1 (ja) | シミュレーション装置、シミュレーション方法およびシミュレーションプログラム | |
CN114385524B (zh) | 嵌入式固件仿真系统及其方法、装置和电子设备 | |
CN110968393B (zh) | 虚拟机的迁移处理方法、存储介质、计算设备 | |
CN115599451A (zh) | 多操作系统的引导启动方法及装置 | |
CN111292392A (zh) | 基于unity的图像显示方法、装置、设备及介质 |
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 |