CN109726023A - 一种支持多线程多上下文的图形任务同步管理方法 - Google Patents
一种支持多线程多上下文的图形任务同步管理方法 Download PDFInfo
- Publication number
- CN109726023A CN109726023A CN201811520599.6A CN201811520599A CN109726023A CN 109726023 A CN109726023 A CN 109726023A CN 201811520599 A CN201811520599 A CN 201811520599A CN 109726023 A CN109726023 A CN 109726023A
- Authority
- CN
- China
- Prior art keywords
- context
- graphic plotting
- management
- resource
- graphics
- 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
-
- 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
Abstract
本发明属于计算机图形领域,提供一种支持多线程多上下文的图形任务同步管理方法,以此保证图形绘制结果的正确性,提高程序执行效率,包括:(1)图形绘制线程管理;(2)图形上下文管理;(3)公共资源存取;(4)同步管理;(5)当前绘制图形上下文;(6)图形绘制。本发明通过同时接收多个图形绘制线程,同时生成多个图形上下文,根据图形上下文的作用范围和作用结果,对图形上下文进行划分,执行并且帧式切换,达到提高程序执行效率的目的。
Description
技术领域
本发明属于计算机图形领域,尤其涉及一种支持多线程多上下文的图形任务同步管理方法。
背景技术
图形处理器作为可视设备的核心处理单元,具有高实时、高可靠、可视化的特点,未来将大规模的应用于国防事业的各个领域中。本发明提出了一种支持多线程多上下文的图形任务同步管理方法,保证了图形绘制结果的正确性,提高了程序执行效率。
发明内容
本发明的目的是:
本发明主要提供一种支持多线程多上下文的图形任务同步管理方法,以此保证图形绘制结果的正确性,提高程序执行效率。
本发明的解决方案是:
一种支持多线程多上下文的图形任务同步管理方法,包括:
(1)图形绘制线程管理;
接收一个或多个图形绘制任务并起相应的图形绘制线程,同时将不同线程的图形绘制任务按其特征的不同发送给步骤(2)进行上下文记录;
(2)图形上下文管理;
接收步骤(1)的不同绘制线程的图形绘制任务按其特征的不同分为公共资源上下文以及非公共资源上下文,同时将相关的上下文管理信息发送至步骤(3)进行相应的资源存储操作,所有图形绘制任务的公共资源共用一套上下文管理,每个图形绘制线程与一个非公共资源的图形上下文一一对应,不同的图形绘制任务通过步骤(4)进行上下文切换;
(3)公共资源存取;
接收步骤(2)中的公共资源上下文管理的资源配置信息,对公共资源进行相应的存取操作,并将存取的公共资源数据发送至步骤(6)进行图形绘制;
(4)同步管理;
当不同的图形绘制线程间进行切换时实现对不同的图形绘制上下文的同步管理,保证上一图形任务绘制的正确性,同时将下一将要使用的图形上下文发送至步骤(5)为下一图形绘制任务做准备;
(5)当前绘制图形上下文;
接收步骤(4)发送来的图形绘制上下文并覆盖上一次的上下文,当前绘制图形上下文只有唯一一个,不同的上下文间进行切换时通过步骤(4)将要使用的图形上下文复制至当前上下文,并将当前图形上下文发送至步骤(6)进行图形绘制;
(6)图形绘制。
接收步骤(3)的公共资源数据以及步骤(5)的当前图形上下文继续切换后的图形任务的绘制。
步骤(2)的公共资源上下文包括与公共资源相关的上下文管理。
与公共资源相关的上下文管理包括纹理、显示列表、缓冲区对象以及属性堆栈。
步骤(2)的非公共资源上下文包括与非公共资源相关的上下文的记录管理,。
与非公共资源相关的上下文的记录管理包括:求值器、缓冲区、雾。
步骤(3)的公共资源数据包括纹理存储空间、显示列表存储空间、缓冲区对象存储空间以及属性堆栈。
本发明的优点是:本发明提供的一种支持多线程多上下文的图形任务同步管理方法,通过同时接收多个图形绘制线程,同时生成多个图形上下文,根据图形上下文的作用范围和作用结果,对图形上下文进行划分,执行并且帧式切换,达到提高程序执行效率的目的。
附图说明
图1为本发明的方法示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图和具体实施例对本发明的技术方案做进一步详细描述。
如图1所示,一种支持多线程多上下文的图形任务同步管理方法,包括:
(1)图形绘制线程管理;
接收一个或多个图形绘制任务并起相应的图形绘制线程,同时将不同线程的图形绘制任务按其特征的不同发送给步骤(2)进行上下文记录;
(2)图形上下文管理;
接收步骤(1)的不同绘制线程的图形绘制任务按其特征的不同分为公共资源上下文以及非公共资源上下文,公共资源上下文包括与公共资源相关的上下文管理,如纹理、显示列表、缓冲区对象以及属性堆栈;非公共资源上下文包括与非公共资源相关的上下文的记录管理,如求值器、缓冲区、雾。同时将相关的上下文管理信息发送至步骤(3)进行相应的资源存储操作,所有图形绘制任务的公共资源共用一套上下文管理,每个图形绘制线程与一个非公共资源的图形上下文一一对应,不同的图形绘制任务通过步骤(4)进行上下文切换;
(3)公共资源存取;
接收步骤(2)中的公共资源上下文管理的资源配置信息,公共资源数据包括纹理存储空间、显示列表存储空间、缓冲区对象存储空间以及属性堆栈,对公共资源进行相应的存取操作,并将存取的公共资源数据发送至步骤(6)进行图形绘制;
(4)同步管理;
当不同的图形绘制线程间进行切换时实现对不同的图形绘制上下文的同步管理,保证上一图形任务绘制的正确性,同时将下一将要使用的图形上下文发送至步骤(5)为下一图形绘制任务做准备;
(5)当前绘制图形上下文;
接收步骤(4)发送来的图形绘制上下文并覆盖上一次的上下文,当前绘制图形上下文只有唯一一个,不同的上下文间进行切换时通过步骤(4)将要使用的图形上下文复制至当前上下文,并将当前图形上下文发送至步骤(6)进行图形绘制;
(6)图形绘制。
接收步骤(3)的公共资源数据以及步骤(5)的当前图形上下文继续切换后的图形任务的绘制。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细地说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (6)
1.一种支持多线程多上下文的图形任务同步管理方法,其特征在于,包括:
(1)图形绘制线程管理;
接收一个或多个图形绘制任务并起相应的图形绘制线程,同时将不同线程的图形绘制任务按其特征的不同发送给步骤(2)进行上下文记录;
(2)图形上下文管理;
接收步骤(1)的不同绘制线程的图形绘制任务按其特征的不同分为公共资源上下文以及非公共资源上下文,同时将相关的上下文管理信息发送至步骤(3)进行相应的资源存储操作,所有图形绘制任务的公共资源共用一套上下文管理,每个图形绘制线程与一个非公共资源的图形上下文一一对应,不同的图形绘制任务通过步骤(4)进行上下文切换;
(3)公共资源存取;
接收步骤(2)中的公共资源上下文管理的资源配置信息,对公共资源进行相应的存取操作,并将存取的公共资源数据发送至步骤(6)进行图形绘制;
(4)同步管理;
当不同的图形绘制线程间进行切换时实现对不同的图形绘制上下文的同步管理,保证上一图形任务绘制的正确性,同时将下一将要使用的图形上下文发送至步骤(5)为下一图形绘制任务做准备;
(5)当前绘制图形上下文;
接收步骤(4)发送来的图形绘制上下文并覆盖上一次的上下文,当前绘制图形上下文只有唯一一个,不同的上下文间进行切换时通过步骤(4)将要使用的图形上下文复制至当前上下文,并将当前图形上下文发送至步骤(6)进行图形绘制;
(6)图形绘制。
接收步骤(3)的公共资源数据以及步骤(5)的当前图形上下文继续切换后的图形任务的绘制。
2.如权利要求1所述的一种支持多线程多上下文的图形任务同步管理方法,其特征在于,步骤(2)的公共资源上下文包括与公共资源相关的上下文管理。
3.如权利要求2所述的一种支持多线程多上下文的图形任务同步管理方法,其特征在于,与公共资源相关的上下文管理包括纹理、显示列表、缓冲区对象以及属性堆栈。
4.如权利要求1所述的一种支持多线程多上下文的图形任务同步管理方法,其特征在于,步骤(2)的非公共资源上下文包括与非公共资源相关的上下文的记录管理,。
5.如权利要求4所述的一种支持多线程多上下文的图形任务同步管理方法,其特征在于,与非公共资源相关的上下文的记录管理包括:求值器、缓冲区、雾。
6.如权利要求1所述的一种支持多线程多上下文的图形任务同步管理方法,其特征在于,步骤(3)的公共资源数据包括纹理存储空间、显示列表存储空间、缓冲区对象存储空间以及属性堆栈。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520599.6A CN109726023B (zh) | 2018-12-12 | 2018-12-12 | 一种支持多线程多上下文的图形任务同步管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811520599.6A CN109726023B (zh) | 2018-12-12 | 2018-12-12 | 一种支持多线程多上下文的图形任务同步管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109726023A true CN109726023A (zh) | 2019-05-07 |
CN109726023B CN109726023B (zh) | 2023-05-23 |
Family
ID=66295247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811520599.6A Active CN109726023B (zh) | 2018-12-12 | 2018-12-12 | 一种支持多线程多上下文的图形任务同步管理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109726023B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021057925A1 (zh) * | 2019-09-27 | 2021-04-01 | 北京猎户星空科技有限公司 | 智能设备的控制方法、装置以及智能设备、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10353268B3 (de) * | 2003-11-14 | 2005-07-28 | Infineon Technologies Ag | Paralleler Multithread-Prozessor (PMT) mit geteilten Kontexten |
CN1801101A (zh) * | 2006-01-17 | 2006-07-12 | 浙江大学 | Java操作系统中线程的实现和线程状态切换的方法 |
CN101091166A (zh) * | 2004-12-30 | 2007-12-19 | 英特尔公司 | 保存多个执行上下文的方法和装置 |
CN103902369A (zh) * | 2012-12-27 | 2014-07-02 | 辉达公司 | 陷阱处理期间的协作线程阵列的粒度上下文切换 |
CN108009977A (zh) * | 2017-11-10 | 2018-05-08 | 上海华元创信软件有限公司 | 多线程环境下支持多个远程图形终端的方法及系统 |
-
2018
- 2018-12-12 CN CN201811520599.6A patent/CN109726023B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10353268B3 (de) * | 2003-11-14 | 2005-07-28 | Infineon Technologies Ag | Paralleler Multithread-Prozessor (PMT) mit geteilten Kontexten |
CN101091166A (zh) * | 2004-12-30 | 2007-12-19 | 英特尔公司 | 保存多个执行上下文的方法和装置 |
CN1801101A (zh) * | 2006-01-17 | 2006-07-12 | 浙江大学 | Java操作系统中线程的实现和线程状态切换的方法 |
CN103902369A (zh) * | 2012-12-27 | 2014-07-02 | 辉达公司 | 陷阱处理期间的协作线程阵列的粒度上下文切换 |
CN108009977A (zh) * | 2017-11-10 | 2018-05-08 | 上海华元创信软件有限公司 | 多线程环境下支持多个远程图形终端的方法及系统 |
Non-Patent Citations (3)
Title |
---|
J. KREUZINGER等: ""Context-switching techniques for decoupled multithreaded processors"", 《PROCEEDINGS 25TH EUROMICRO CONFERENCE. INFORMATICS: THEORY AND PRACTICE FOR THE NEW MILLENNIUM》 * |
余勇等: ""CUDA到异构众核架构的线程映射模型"", 《计算机工程》 * |
张铎等: "基于事务存储的事务级线程切换", 《计算机工程》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021057925A1 (zh) * | 2019-09-27 | 2021-04-01 | 北京猎户星空科技有限公司 | 智能设备的控制方法、装置以及智能设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109726023B (zh) | 2023-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11344806B2 (en) | Method for rendering game, and method, apparatus and device for generating game resource file | |
DE102013017509A1 (de) | Effiziente Speichervirtualisierung in mehrsträngigen Verarbeitungseinheiten | |
DE102013017510A1 (de) | Effiziente Speichervirtualisierung in mehrsträngigen Verarbeitungseinheiten | |
DE102013017511A1 (de) | Effiziente speichervirtualisierung in mehrsträngigen verarbeitungseinheiten | |
WO2020073672A1 (zh) | 资源调度方法和终端设备 | |
CN109559295A (zh) | 图像分析系统、方法、计算机可读存储介质、及电子终端 | |
CN104200506A (zh) | 三维gis海量矢量数据渲染方法及装置 | |
CN104850388A (zh) | 网页绘制方法及装置 | |
CN108021449A (zh) | 一种协程实现方法、终端设备及存储介质 | |
CN101937360B (zh) | 一种创建虚拟机的方法和装置 | |
CN105450986B (zh) | 一种Linux下视频处理方法 | |
CN105812881B (zh) | 一种用户界面的窗口处理方法、系统及电视机 | |
CN106796536A (zh) | 用于多操作系统的内存访问方法、装置和电子设备 | |
CN113918249B (zh) | 一种背景模糊控件的实现方法及装置 | |
CN109726023A (zh) | 一种支持多线程多上下文的图形任务同步管理方法 | |
US20180357166A1 (en) | Method and apparatus for system resource management | |
CN107665186B (zh) | 一种特有字体生成方法 | |
CN109656652A (zh) | 网页图表绘制方法、装置、计算机设备和存储介质 | |
CN109800039B (zh) | 一种用户界面展示方法、装置、电子设备及存储介质 | |
CN111724469A (zh) | 三维模型的加载方法、显示方法、车辆和存储介质 | |
CN113835835B (zh) | 一种创建一致性组的方法、装置、及计算机可读存储介质 | |
CN110007907B (zh) | 一种动画执行方法及装置 | |
CN110554821A (zh) | 一种用于查询条件筛选的悬浮框的显示方法、系统及设备 | |
DE102014109525A1 (de) | System, Verfahren und Medium zur Bildobjekt- und Konturmerkmalsextraktion | |
Feng et al. | Analysis of lightweight processing technology for WEB oriented BIM model |
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 |