CN109426529A - 基于x窗口系统图形绘制的方法、装置及终端 - Google Patents
基于x窗口系统图形绘制的方法、装置及终端 Download PDFInfo
- Publication number
- CN109426529A CN109426529A CN201710703287.8A CN201710703287A CN109426529A CN 109426529 A CN109426529 A CN 109426529A CN 201710703287 A CN201710703287 A CN 201710703287A CN 109426529 A CN109426529 A CN 109426529A
- Authority
- CN
- China
- Prior art keywords
- instruction
- target
- target word
- assisted
- hardware
- 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.)
- Granted
Links
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
-
- 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
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例提供一种基于X窗口系统图形绘制的方法、装置及终端。本发明实施例通过获取目标指令,若目标指令为硬件加速指令,调用其对应的图形绘制函数;获取下一个加速指令,若下一个加速指令仍为硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若下一个加速指令是软件加速指令,则调用硬件同步函数,进行系统数据同步后,再处理下一个加速指令;从而当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续提交至少两个硬件加速指令到GPU,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
Description
技术领域
本发明实施例涉及窗口图形系统技术领域,尤其涉及一种基于X窗口系统图形绘制的方法、装置及终端。
背景技术
X窗口系统(X Window System)是一种基于位图绘制的类Unix的窗口图形系统,它提供了基本的图形框架协议,已经被普遍应用于Linux、Unix等操作系统中。X窗口系统用于在屏幕上描绘、呈现图像与移动程序窗口,同时也受理、运行、及管理与鼠标、键盘、触摸屏等的交互程序。X窗口图形系统中的硬件加速层一般都使用图形处理器(GraphicsProcessing Unit,简称GPU)来实现。GPU是一种专门用于个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。GPU是专为大量并行运算核心优化设计的,可并行处理多个渲染管道和RGBA4个颜色通道,在一个时钟周期内可以并行获取2个甚至更多副纹理。
在实际应用中,上层应用获取用户通过鼠标、键盘或者触摸屏等输入的图形输出请求,并调用X窗口系统,向X窗口系统发出图形绘制命令。X窗口系统将图形绘制命令转化为至少一个加速指令,对加速指令进行以下处理:根据加速指令调用相应的图形绘制函数来执行图形的绘制任务,在图形绘制完成后调用相应的同步函数来完成系统数据同步。在上一个加速指令响应的图形绘制函数执行完成后,X窗口系统开始处理下一个加速指令。
目前,X窗口系统在进行图形绘制的过程中,无法发挥GPU并行处理数据的优势,导致X窗口系统的性能低。因此,目前亟需一种X窗口系统的优化方法,来提高X窗口系统的性能。
发明内容
本发明实施例提供一种基于X窗口系统图形绘制的方法、装置及终端,以解决目前的X窗口系统在进行图形绘制的过程中,无法发挥GPU并行处理数据的优势,导致X窗口系统的性能低的问题。
本发明实施例的一个方面是提供一种基于X窗口系统图形绘制的方法,包括:
获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
根据所述目标指令的指令类型,对所述目标指令进行绘图处理,执行以下绘图处理步骤:
若所述目标指令为硬件加速指令,则调用所述目标指令对应的图形绘制函数,以完成所述目标指令对应的图形绘制任务;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型;
若所述下一个加速指令为硬件加速指令,根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理;
若所述下一个加速指令为软件加速指令,则调用所述目标指令对应的同步函数,并根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理。
本发明实施例的另一个方面是提供一种基于X窗口系统图形绘制的装置,包括:
获取模块,用于获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
绘图处理模块,用于根据所述目标指令的指令类型,对所述目标指令进行绘图处理,执行以下绘图处理步骤:
若所述目标指令为硬件加速指令,则调用所述目标指令对应的图形绘制函数,以完成所述目标指令对应的图形绘制任务;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型;
若所述下一个加速指令为硬件加速指令,根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理;
若所述下一个加速指令为软件加速指令,则调用所述目标指令对应的同步函数,并根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理。
本发明实施例的另一个方面是提供一种终端,安装有X窗口系统,包括:
处理器、存储器、以及存储在所述存储器上并可以由所述处理器运行的计算机程序,
所述处理器运行的所述计算机程序时实现上述基于X窗口系统图形绘制的方法。
本发明实施例提供的基于X窗口系统图形绘制的方法、装置及终端,通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用所述目标指令对应的图形绘制函数,完成所述目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断所述下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
附图说明
图1为本发明实施例一提供的基于X窗口系统图形绘制的方法的流程图;
图2为本发明实施例二提供的基于X窗口系统图形绘制的方法的流程图;
图3为本发明实施例三提供的基于X窗口系统图形绘制的方法的流程图;
图4为本发明实施例四提供的基于X窗口系统图形绘制的装置的结构示意图;
图5为本发明实施例六提供的基于X窗口系统图形绘制的装置的结构示意图;
图6为本发明实施例七提供的终端的结构示意图。
具体实施方式
为使本发明的技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的基于X窗口系统图形绘制的方法的流程图。本发明实施例针对目前的X窗口系统在进行图形绘制的过程中,无法发挥GPU并行处理数据的优势,导致X窗口系统的性能低的问题,提供了基于X窗口系统图形绘制的方法,如图1所示,该方法具体步骤如下:
步骤S101、获取目标指令,并确定目标指令的指令类型,指令类型包括硬件加速指令和软件加速指令。
其中,目标指令为即将处理的加速指令。
本实施例中,加速指令可以包括以下指令信息:指令标识、指令类型、加速接口类型、图形绘制函数参数、图形绘制函数接口、同步函数接口。
具体地,指令类型用于表示该加速指令是硬件加速指令和软件加速指令中的一种。图形绘制函数接口用于指向该加速指令对应的图形绘制函数,可以是指向该加速指令对应的图形绘制函数的指针。X窗口系统调用该加速指令对应的图形绘制函数,以可以完成该加速指令对应的图形绘制任务。
加速接口类型与指令类型相对应,加速接口类型用于表示图像绘制函数的类型,包括硬件类型和软件类型。通常,若加速指令类型为硬件加速指令,则加速指令的加速接口类型为硬件类型,若加速指令类型为软件加速指令,则加速指令的加速接口类型为软件类型。若加速指令的加速接口类型为硬件类型,则该加速指令的图像绘制函数为硬件图像绘制函数;若加速指令的加速接口类型为软件类型,则该加速指令的图像绘制函数为软件图像绘制函数。
图形绘制函数参数是指图形绘制函数的输入参数,可以根据加速指令的加速接口类型或者指令类型确定图像绘制函数参数。
同步函数接口用于指向该加速指令对应的同步函数,可以是指向该加速指令对应的同步函数的指针。在实际应用中,同步函数包括硬件同步函数和软件同步函数,X窗口系统通过调用硬件同步函数或者软件同步函数完成系统图形绘制任务的同步。
本实施例中,若该加速指令为硬件加速指令,则该加速指令中的同步函数接口指向硬件同步函数,若该加速指令为软件加速指令,则该加速指令中的同步函数接口指向软件同步函数。
在该步骤S101中在确定目标指令的指令类型之后,执行以下步骤S102-S105,根据目标指令的指令类型,对目标指令进行绘图处理。本实施例中,对所有的硬件加速指令进行绘图处理的过程均相同,对所有的软件加速指令进行绘图处理的过程均相同。
步骤S102、若目标指令为硬件加速指令,则调用目标指令对应的图形绘制函数,以完成目标指令对应的图形绘制任务。
本实施例中,根据目标指令中的图形绘制函数接口,调用目标指令对应的图形绘制函数,通过执行目标指令对应的图形绘制函数来完成该目标指令对应的图形绘制任务。
该步骤中,若该加速指令为硬件加速指令,则通过调用该硬件加速指令对应的绘图绘制函数将该硬件加速指令提交到GPU,使得GPU执行硬件加速指令对应的图形绘制函数来完成该硬件加速指令的绘图任务。
调用任一加速指令对应的图形绘制函数,以完成加速指令对应的图形绘制任务,具体可以采用如下方式实现:
首先判断加速指令的加速接口类型,然后根据加速接口类型填写相应的图形绘制函数参数,最后调用该加速指令对应的图形绘制函数,以实现该指令的图形绘制任务。在调用加速指令对应的图形绘制函数时,不同的加速指令所对应的图形绘制函数不同,不同的加速指令所对应的图形绘制函数的参数不一样。图形绘制函数参数包括以下4种类型:矩形类型绘制参数、线条类型绘制参数、无拉伸复制类型绘制参数和矢量复制类型绘制参数。
本实施中,调用加速指令对应的图形绘制函数,以完成加速指令对应的图形绘制任务,可以采用现有技术中任意一种调用加速指令对应的图形绘制函数,或者将加速指令提交到GPU的方法实现,本实施例此处不再赘述。
步骤S103、获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型。
若目标指令为硬件加速指令,则在调用目标指令对应的图形绘制函数之后,可以立即获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型,而无需等待目标指令对应的图形绘制函数执行完后调用目标指令对应的硬件同步函数、并且在目标指令对应的硬件同步函数执行完之后才获取下一个加速指令。
该步骤中,在步骤S102中确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令。
步骤S104、若下一个加速指令为硬件加速指令,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
该步骤中,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令。
本实施例中,若下一个加速指令为硬件加速指令,对下一个加速指令进行绘图处理的过程与对目标指令进行绘图处理的过程相同。该步骤中,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理,具体可以采用如下方式实现:
将下一个加速指令作为新的目标指令,由于下一个加速指令的指令类型为硬件加速指令,也即是新的目标指令的指令类型为硬件加速指令,因此返回步骤S102,调用新的目标指令对应的图形绘制函数,以完成新的目标指令对应的图形绘制任务;并继续执行步骤S103,获取在新的目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型,并继续执行步骤S104或者步骤S105。
本实施例中,当连续执行至少两个硬件加速指令时,循环执行上述步骤S102-S104,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,使得GPU可以并行处理至少两个硬件加速指令,直至下一个加速指令为软件加速指令,执行步骤S105。
步骤S105、若下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,并根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
该步骤中,若下一个加速指令为软件加速指令,说明在连续处理了至少一个硬件加速指令后,下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,目标指令对应的图形绘制同步函数为硬件同步函数,通过调用硬件同步函数进行系统数据同步,然后将下一个加速指令作为新的目标指令,循环执行步骤S101-S105,继续对下一个加速指令进行绘图处理。
本实施例中,对于软件加速指令进行绘图处理的过程与现有技术中相同,即调用软件加速指令对应的图形绘制函数,将该软件加速指令提交到相应的软件模块,使得相应的软件模块执行该软件加速指令对应的绘图绘制函数来完成该软件加速指令的绘图任务,在其对应的图形绘制函数执行完之后调用软件同步函数,在软件同步函数执行完之后对下一个加速指令进行处理,本实施例中此处不再赘述。
本发明实施例通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
实施例二
图2为本发明实施例二提供的基于X窗口系统图形绘制的方法的流程图。在上述实施例一的基础上,本实施例中,若目标指令为软件加速指令,则调用目标指令对应的图形绘制函数,并在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数;获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型,根据下一个加速指令的指令类型进行绘图处理。如图2所示,该方法具体步骤如下:
步骤S201、获取目标指令,并确定目标指令的指令类型,指令类型包括硬件加速指令和软件加速指令。
该步骤S201与上述步骤S101类似,本实施例此处不再赘述。
本实施例中,若确定目标指令为硬件加速指令,则执行步骤S202-S207;若确定目标指令为软件加速指令,则执行步骤S208。
步骤S202、若目标指令为硬件加速指令,则调用目标指令对应的图形绘制函数,以完成目标指令对应的图形绘制任务。
该步骤S202与上述步骤S102类似,本实施例此处不再赘述。
步骤S203、判断目标指令是否为待执行的最后一个加速指令。
若确定目标指令是待执行的最后一个加速指令,则执行步骤S204,在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数;若确定目标指令不是待执行的最后一个加速指令,则执行步骤S205,获取在目标指令之后执行的下一个加速指令,并进行后续的处理过程。
步骤S204、在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数。
在确定目标指令为待执行的最后一个加速指令时,在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数,完成系统数据同步之后,本次图形绘制过程结束。
步骤S205、获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型。
若目标指令为硬件加速指令,则在调用目标指令对应的图形绘制函数之后,可以立即获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型,而无需等待目标指令对应的图形绘制函数执行完后调用目标指令对应的硬件同步函数、并且在目标指令对应的硬件同步函数执行完之后才获取下一个加速指令。
该步骤中,在步骤S202中确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令。
步骤S206、若下一个加速指令为硬件加速指令,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
该步骤中,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令。
本实施例中,若下一个加速指令为硬件加速指令,对下一个加速指令进行绘图处理的过程与对目标指令进行绘图处理的过程相同。该步骤中,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理,具体可以采用如下方式实现:
将下一个加速指令作为新的目标指令,由于下一个加速指令的指令类型为硬件加速指令,也即是新的目标指令的指令类型为硬件加速指令,因此返回步骤S202,调用新的目标指令对应的图形绘制函数,以完成新的目标指令对应的图形绘制任务;并继续执行步骤S203-207。
本实施例中,当连续执行至少两个硬件加速指令时,循环执行上述步骤S202-S206,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,使得GPU可以并行处理至少两个硬件加速指令,直至下一个加速指令为软件加速指令,执行步骤S207。
步骤S207、若下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,并根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
该步骤中,若下一个加速指令为软件加速指令,说明在连续处理了至少一个硬件加速指令后,下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,目标指令对应的图形绘制同步函数为硬件同步函数,通过调用硬件同步函数进行系统数据同步,然后将下一个加速指令作为新的目标指令,循环执行步骤S201-S208,继续对下一个加速指令进行绘图处理。
步骤S208、若目标指令为软件加速指令,则调用目标指令对应的图形绘制函数,并在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数。
本实施例中,对于软件加速指令进行绘图处理的过程与现有技术中相同,即调用软件加速指令对应的图形绘制函数,将该软件加速指令提交到相应的软件模块,使得相应的软件模块执行该软件加速指令对应的绘图绘制函数来完成该软件加速指令的绘图任务,在其对应的图形绘制函数执行完之后调用软件同步函数,以进行系统数据同步,本实施例中此处不再赘述。
在步骤S208之后,获取在目标指令之后执行的下一个加速指令,作为新的目标指令,循环执行步骤S201-S208判断下一个加速指令的指令类型,根据下一个加速指令的指令类型进行绘图处理。
本发明实施例提供了一个更详细的图形绘制过程,通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,使得GPU可以并行处理至少两个硬件加速指令,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
实施例三
图3为本发明实施例三提供的基于X窗口系统图形绘制的方法的流程图。在上述任一实施例的基础上,本实施例中,获取目标指令之前,还包括:创建指令队列;实时地将待执行的加速指令按照预设执行顺序依次添加到指令队列中。
具体地,可以在X窗口系统启动后,创建指令队列,当接收到上层应用发出的图形绘制命令,将图形绘制命令转化为至少一个加速指令之后,将各加速指令封装为指令队列可存储的形式,并将封装后的加速指令按照预设执行顺序依次添加到指令队列中。其中,预设执行顺序可以根据图形绘制过程的实际需要进行设定,本实施例对此不做具体限定。指令队列中的存储的各加速指令至少包括以下指令信息:指令标识、指令类型、加速接口类型、图形绘制函数参数、图形绘制函数接口、同步函数接口。
可选地,指令队列中的加速指令可以采用结构体的形式来实现。
例如,加速指令包含有X窗口图形系统所有的图形绘制命令信息,包括命令标识,指令类型,图形绘制函数接口类型,图形绘制函数参数、图形绘制函数接口和同步函数接口。其中图形绘制函数参数包括:矩形类型的绘制参数、线条类型的绘制参数、无拉伸复制类型的绘制参数和矢量复制类型的绘制参数。
本实施例中,将新生成的各加速指令添加到指令队列中的过程与从指令队列中获取目标指令,并进行图形绘制的过程是两个相对独立的过程,可以并行进行。
可选地,将加速指令添加到指令队列中时,如果此时指令队列已满(无剩余空间),则返回溢出错误;否则将加速指令添加到指令队列中尾部,并修改指令计数器和队列尾指针,最后返回成功消息。
需要说明的是,创建指令队列可以采用现有技术中任意一种创建队列的方法实现,本实施例中对于如何创建指令队列,以及创建的指令队列的长度不做具体限定。另外,从指令队列的头部获取加速指令、以及向指令队列的尾部添加加速指令的方法可以采用现有技术中任意一种从队列头部取出队列元素、以及任意一种向队列尾部添加元素的方法实现,本实施例此处不再赘述。
如图3所示,该方法具体步骤如下:
步骤S301、判断指令队列是否为空。
若确定指令队列不为空,则执行步骤S302,从指令队列中获取目标指令,进行图形绘制的处理过程;若确定指令队列为空,则结束图形绘制的处理过程。
步骤S302、从指令队列中获取目标指令,并确定目标指令的指令类型,指令类型包括硬件加速指令和软件加速指令。
优选地,从指令队列的头部取出目标指令。相应地,向指令队列的尾部添加加速指令,以按照预设执行顺序对加速指令进行处理。
该步骤S302与上述步骤S201类似,本实施例此处不再赘述。
步骤S303、若目标指令为硬件加速指令,则调用目标指令对应的图形绘制函数,以完成目标指令对应的图形绘制任务。
该步骤S303与上述步骤S202类似,本实施例此处不再赘述。
步骤S304、判断目标指令是否为指令队列中的最后一条指令。
该步骤S304通过判断目标指令是否为指令队列中的最后一条指令来确定目标指令是否为待执行的最后一个加速指令。
若确定目标指令是指令队列中的最后一条指令,则执行步骤S305在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数;若确定目标指令不是指令队列中的最后一条指令,则执行步骤S306,从指令队列中获取下一个加速指令,并进行后续的处理过程。
步骤S305、在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数。
该步骤S305与上述步骤S204类似,本实施例此处不再赘述。
步骤S306、从指令队列中获取下一个加速指令,并判断下一个加速指令的指令类型。
步骤S307、若下一个加速指令为硬件加速指令,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
步骤S308、若下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,并根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
该步骤S306-S308的处理过程与上述步骤S205-S207类似,本实施例此处不再赘述。
步骤S309、若目标指令为软件加速指令,则调用目标指令对应的图形绘制函数,并在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数。
在步骤S309执行完之后,从指令队列中获取新的目标指令,循环执行步骤S301-S309,继续处理指令队列中的加速指令。
优选地,获取目标指令之前,还包括:创建指令调度线程。本实施例中,可以在X窗口系统启动之后,创建指调度线程,由指令调度线程执行上述步骤S301-S309的图形绘制过程,从而实现通过专门的指令调度线程对指令队列中的加速指令进行统一的调度和系统数据同步。
本发明实施例通过创建指令队列,实时地将待执行的加速指令按照预设执行顺序依次添加到指令队列中;创建指令调度线程,由指令调度线程对指令队列中的加速指令进行统一的调度和系统数据同步。
实施例四
图4为本发明实施例四提供的基于X窗口系统图形绘制的装置的结构示意图。本发明实施例提供的基于X窗口系统图形绘制的装置可以执行基于X窗口系统图形绘制的方法实施例提供的处理流程,如图4所示,该装置40包括:获取模块401和绘图处理模块402。
具体地,获取模块401用于获取目标指令,并判断目标指令的指令类型,指令类型包括硬件加速指令和软件加速指令;
绘图处理模块402用于根据目标指令的指令类型,对目标指令进行绘图处理,执行以下绘图处理步骤:
若目标指令为硬件加速指令,则调用目标指令对应的图形绘制函数,以完成目标指令对应的图形绘制任务;
获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型;
若下一个加速指令为硬件加速指令,根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理;
若下一个加速指令为软件加速指令,则调用目标指令对应的同步函数,并根据下一个加速指令的指令类型,对下一个加速指令进行绘图处理。
本发明实施例提供的装置可以具体用于执行上述实施例一所提供的方法实施例,具体功能此处不再赘述。
本发明实施例通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
实施例五
在上实施例四的基础上,本实施例中,绘图处理模块还用于:
若目标指令为软件加速指令,则调用目标指令对应的图形绘制函数,并在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数;获取在目标指令之后执行的下一个加速指令,并判断下一个加速指令的指令类型,根据下一个加速指令的指令类型进行绘图处理。
绘图处理模块还用于确定所述目标指令是否为待执行的最后一个加速指令;若目标指令为待执行的最后一个加速指令,则在目标指令对应的图形绘制函数执行结束后,调用目标指令对应的同步函数;若确定所述目标指令不是待执行的最后一个加速指令,则获取在所述目标指令之后执行的下一个加速指令。
本发明实施例提供的装置可以具体用于执行上述实施例二所提供的方法实施例,具体功能此处不再赘述。
本发明实施例提供了一个更详细的图形绘制过程,通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,使得GPU可以并行处理至少两个硬件加速指令,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
实施例六
图5为本发明实施例六提供的基于X窗口系统图形绘制的装置的结构示意图。在上述实施例四或实施例五的基础上,如图5所示,该装置40还包括:队列创建模块403和指令添加模块404。
具体地,队列创建模块403用于创建指令队列。
指令添加模块404用于实时地将待执行的加速指令按照预设执行顺序依次添加到指令队列中。
获取模块401还用于从指令队列中获取目标指令。
可选地,如图5所示,该装置40还包括线程创建模块405。线程创建模块405用于创建指令调度线程。
获取模块401还用于指令调度线程获取目标指令,并判断目标指令的指令类型,指令类型包括硬件加速指令和软件加速指令;
绘图处理模块402还用于指令调度线程根据目标指令的指令类型,对目标指令进行绘图处理。
本发明实施例提供的装置可以具体用于执行上述实施例三所提供的方法实施例,具体功能此处不再赘述。
本发明实施例通过创建指令队列,实时地将待执行的加速指令按照预设执行顺序依次添加到指令队列中;创建指令调度线程,由指令调度线程对指令队列中的加速指令进行统一的调度和系统数据同步。
实施例七
图6为本发明实施例七提供的终端的结构示意图。本发明实施例提供的终端安装有X窗口系统,可以执行基于X窗口系统图形绘制的的方法实施例提供的处理流程。如图6所示,该终端60包括:处理器601、存储器602、以及存储在所述存储器602上并可以由所述处理器601运行的计算机程序。
所述处理器601运行的所述计算机程序时实现上述任一方法实施例对应的处理流程,本实施例此处不再赘述。
本发明实施例通过获取目标指令,在确定目标指令为硬件加速指令,且通过调用目标指令对应的图形绘制函数,完成目标指令对应的图形绘制任务之后,继续获取下一个加速指令,并判断下一个加速指令的指令类型,若确定下一个加速指令仍然为硬件加速指令,则确定还需要连续处理至少一个硬件加速指令,则暂时不调用硬件同步函数,继续处理下一个加速指令;若确定下一个加速指令是软件加速指令,则确定不再连续处理硬件加速指令,则在已调用的各硬件加速指令对应的图形绘制函数执行完成后,调用硬件同步函数,进行系统数据同步,然后再处理下一个加速指令,实现了当连续执行至少两个硬件加速指令时,依次调用每个硬件加速指令对应的图形绘制函数,连续将至少两个硬件加速指令提交到GPU,并在提交到GPU的硬件加速指令处理完成后,调用一次硬件同步函数即可完成多条硬件加速指令的系统数据同步,更好地发挥了GPU的优势,提高了X窗口系统的性能。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (13)
1.一种基于X窗口系统图形绘制的方法,其特征在于,包括:
获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
根据所述目标指令的指令类型,对所述目标指令进行绘图处理,执行以下绘图处理步骤:
若所述目标指令为硬件加速指令,则调用所述目标指令对应的图形绘制函数,以完成所述目标指令对应的图形绘制任务;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型;
若所述下一个加速指令为硬件加速指令,根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理;
若所述下一个加速指令为软件加速指令,则调用所述目标指令对应的同步函数,并根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理。
2.根据权利要求1所述的方法,其特征在于,所述绘图处理步骤,还包括:
若所述目标指令为软件加速指令,则调用所述目标指令对应的图形绘制函数,并在所述目标指令对应的图形绘制函数执行结束后,调用所述目标指令对应的同步函数;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型,根据所述下一个加速指令的指令类型进行所述绘图处理。
3.根据权利要求2所述的方法,其特征在于,所述获取在所述目标指令之后执行的下一个加速指令之前,还包括:
确定所述目标指令是否为待执行的最后一个加速指令;
若所述目标指令为待执行的最后一个加速指令,则在所述目标指令对应的图形绘制函数执行结束后,调用所述目标指令对应的同步函数;
相应地,若确定所述目标指令不是待执行的最后一个加速指令,则获取在所述目标指令之后执行的下一个加速指令。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述获取目标指令之前,还包括:
创建指令队列;
实时地将待执行的加速指令按照预设执行顺序依次添加到所述指令队列中。
5.根据权利要求4所述的方法,其特征在于,所述获取目标指令,包括:
从所述指令队列中获取目标指令。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述获取目标指令之前,还包括:
创建指令调度线程;
由所述指令调度线程执行以下图形绘制过程:
获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
根据所述目标指令的指令类型,对所述目标指令进行所述绘图处理。
7.一种基于X窗口系统图形绘制的装置,其特征在于,包括:
获取模块,用于获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
绘图处理模块,用于根据所述目标指令的指令类型,对所述目标指令进行绘图处理,执行以下绘图处理步骤:
若所述目标指令为硬件加速指令,则调用所述目标指令对应的图形绘制函数,以完成所述目标指令对应的图形绘制任务;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型;
若所述下一个加速指令为硬件加速指令,根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理;
若所述下一个加速指令为软件加速指令,则调用所述目标指令对应的同步函数,并根据所述下一个加速指令的指令类型,对所述下一个加速指令进行所述绘图处理。
8.根据权利要求7所述的装置,其特征在于,
所述绘图处理模块还用于:
若所述目标指令为软件加速指令,则调用所述目标指令对应的图形绘制函数,并在所述目标指令对应的图形绘制函数执行结束后,调用所述目标指令对应的同步函数;
获取在所述目标指令之后执行的下一个加速指令,并判断所述下一个加速指令的指令类型,根据所述下一个加速指令的指令类型进行所述绘图处理。
9.根据权利要求8所述的装置,其特征在于,
所述绘图处理模块还用于:
确定所述目标指令是否为待执行的最后一个加速指令;若所述目标指令为待执行的最后一个加速指令,则在所述目标指令对应的图形绘制函数执行结束后,调用所述目标指令对应的同步函数;
相应地,若确定所述目标指令不是待执行的最后一个加速指令,则获取在所述目标指令之后执行的下一个加速指令。
10.根据权利要求7-9任一项所述的装置,其特征在于,还包括:
队列创建模块,用于创建指令队列;
指令添加模块,用于实时地将待执行的加速指令按照预设执行顺序依次添加到所述指令队列中。
11.根据权利要求10所述的装置,其特征在于,
所述获取模块还用于从所述指令队列中获取目标指令。
12.根据权利要求11所述的装置,其特征在于,还包括:
线程创建模块,用于创建指令调度线程;
所述获取模块还用于所述指令调度线程获取目标指令,并判断所述目标指令的指令类型,所述指令类型包括硬件加速指令和软件加速指令;
所述绘图处理模块还用于所述指令调度线程根据所述目标指令的指令类型,对所述目标指令进行所述绘图处理。
13.一种终端,其特征在于,安装有X窗口系统,包括:处理器、存储器、以及存储在所述存储器上并可以由所述处理器运行的计算机程序,
所述处理器运行的所述计算机程序时实现权利要求1-6任一项所述的基于X窗口系统图形绘制的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710703287.8A CN109426529B (zh) | 2017-08-16 | 2017-08-16 | 基于x窗口系统图形绘制的方法、装置及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710703287.8A CN109426529B (zh) | 2017-08-16 | 2017-08-16 | 基于x窗口系统图形绘制的方法、装置及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109426529A true CN109426529A (zh) | 2019-03-05 |
CN109426529B CN109426529B (zh) | 2023-03-21 |
Family
ID=65497791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710703287.8A Active CN109426529B (zh) | 2017-08-16 | 2017-08-16 | 基于x窗口系统图形绘制的方法、装置及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109426529B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111445381A (zh) * | 2020-03-20 | 2020-07-24 | 福州瑞芯微电子股份有限公司 | 一种基于exa的rga图形加速方法和存储设备 |
CN113674132A (zh) * | 2021-07-23 | 2021-11-19 | 中标软件有限公司 | 一种通过检测显卡能力切换窗口管理渲染后端的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217017A (zh) * | 2007-12-28 | 2008-07-09 | 彩虹集团公司 | 一种用于测量pdp显示装置的动态信号产生方法 |
CN101582890A (zh) * | 2009-06-09 | 2009-11-18 | 中国科学院计算技术研究所 | 实现x11客户端和x11服务器连接的方法及系统 |
US20130061033A1 (en) * | 2011-08-30 | 2013-03-07 | Boo-Jin Kim | Data processing system and method for switching between heterogeneous accelerators |
CN103034729A (zh) * | 2012-12-20 | 2013-04-10 | 深圳Tcl新技术有限公司 | 网页绘制系统和方法 |
US20130191722A1 (en) * | 2012-01-24 | 2013-07-25 | Samsung Electronics Co., Ltd. | Hardware acceleration of web applications |
CN105786449A (zh) * | 2014-12-26 | 2016-07-20 | 龙芯中科技术有限公司 | 基于图形处理的指令调度方法及装置 |
CN106778015A (zh) * | 2016-12-29 | 2017-05-31 | 哈尔滨工业大学(威海) | 一种基于云平台中fpga异构加速基因计算方法 |
-
2017
- 2017-08-16 CN CN201710703287.8A patent/CN109426529B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101217017A (zh) * | 2007-12-28 | 2008-07-09 | 彩虹集团公司 | 一种用于测量pdp显示装置的动态信号产生方法 |
CN101582890A (zh) * | 2009-06-09 | 2009-11-18 | 中国科学院计算技术研究所 | 实现x11客户端和x11服务器连接的方法及系统 |
US20130061033A1 (en) * | 2011-08-30 | 2013-03-07 | Boo-Jin Kim | Data processing system and method for switching between heterogeneous accelerators |
CN103164215A (zh) * | 2011-08-30 | 2013-06-19 | 三星电子株式会社 | 数据处理系统和用于在异类加速器之间进行切换的方法 |
US20130191722A1 (en) * | 2012-01-24 | 2013-07-25 | Samsung Electronics Co., Ltd. | Hardware acceleration of web applications |
CN103034729A (zh) * | 2012-12-20 | 2013-04-10 | 深圳Tcl新技术有限公司 | 网页绘制系统和方法 |
CN105786449A (zh) * | 2014-12-26 | 2016-07-20 | 龙芯中科技术有限公司 | 基于图形处理的指令调度方法及装置 |
CN106778015A (zh) * | 2016-12-29 | 2017-05-31 | 哈尔滨工业大学(威海) | 一种基于云平台中fpga异构加速基因计算方法 |
Non-Patent Citations (1)
Title |
---|
李荣振等: "基于飞腾平台的GPU图形加速驱动设计与实现", 《计算机工程与应用》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111445381A (zh) * | 2020-03-20 | 2020-07-24 | 福州瑞芯微电子股份有限公司 | 一种基于exa的rga图形加速方法和存储设备 |
CN113674132A (zh) * | 2021-07-23 | 2021-11-19 | 中标软件有限公司 | 一种通过检测显卡能力切换窗口管理渲染后端的方法 |
CN113674132B (zh) * | 2021-07-23 | 2024-05-14 | 中标软件有限公司 | 一种通过检测显卡能力切换窗口管理渲染后端的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109426529B (zh) | 2023-03-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110227259B (zh) | 一种数据处理的方法、装置、服务器和系统 | |
CN104965757B (zh) | 虚拟机热迁移的方法、虚拟机迁移管理装置及系统 | |
CN103999051B (zh) | 用于着色器核心中着色器资源分配的策略 | |
CN105893126A (zh) | 一种任务调度方法及装置 | |
CN105579967A (zh) | Gpu发散栅栏 | |
US11003429B1 (en) | Compile-time scheduling | |
US10761822B1 (en) | Synchronization of computation engines with non-blocking instructions | |
CN111400016B (zh) | 一种调用应用程序接口函数的方法和设备 | |
US11175919B1 (en) | Synchronization of concurrent computation engines | |
CN115686758B (zh) | 一种基于帧统计的VirtIO-GPU性能可控方法 | |
CN111352896B (zh) | 人工智能加速器、设备、芯片以及数据处理方法 | |
CN109426529A (zh) | 基于x窗口系统图形绘制的方法、装置及终端 | |
CN109902182A (zh) | 知识数据处理方法、装置、设备及存储介质 | |
CN106598696A (zh) | 一种虚拟机之间数据交互的方法及装置 | |
CN114115673B (zh) | 车载屏幕的控制方法 | |
CN115904617A (zh) | 一种基于sr-iov技术的gpu虚拟化实现方法 | |
CN108829530B (zh) | 一种图像处理方法及装置 | |
CN103299298A (zh) | 处理业务的方法和系统 | |
CN105786449B (zh) | 基于图形处理的指令调度方法及装置 | |
CN106126342A (zh) | 面向智能机器人的多程序运行方法及操作系统 | |
CN105912273B (zh) | 一种报文共享储存管理的fpga实现方法 | |
CN105487915B (zh) | 一种基于延迟发送机制的gpu虚拟化性能提升的方法 | |
CN112506655B (zh) | 一种绘图方法、存储介质及应用服务器 | |
CN112416605B (zh) | 一种基于互联网的分布式显卡调用方法及装置 | |
CN117131910A (zh) | 一种基于risc-v指令集架构拓展的卷积加速器及加速卷积运算的方法 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant after: Loongson Zhongke Technology Co.,Ltd. Address before: 100095 Building 2, Longxin Industrial Park, Zhongguancun environmental protection technology demonstration park, Haidian District, Beijing Applicant before: LOONGSON TECHNOLOGY Corp.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |