CN111045929B - 一种超长图形流水线层次化调试方法 - Google Patents
一种超长图形流水线层次化调试方法 Download PDFInfo
- Publication number
- CN111045929B CN111045929B CN201911125588.2A CN201911125588A CN111045929B CN 111045929 B CN111045929 B CN 111045929B CN 201911125588 A CN201911125588 A CN 201911125588A CN 111045929 B CN111045929 B CN 111045929B
- Authority
- CN
- China
- Prior art keywords
- information
- unit
- busy
- fault
- judging
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
-
- 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)绘图正确性判断、(7)获取记录过程信息、(8)按照命令流、数据流处理流程,定位第一个产生故障数据的单元。本方法通过对超长图形流水线功能单元的状态信息、故障现场信息及过程记录信息分层获取和分析处理,实现对超长图形流水线的调试,加快GPU的研发进程。
Description
技术领域
本发明属于计算机图形领域,尤其涉及一种超长流水线层次化调试方法。
背景技术
图形流水线是GPU处理图形命令完成图形绘制的通用模型,基于命令流处理过程再结合图形流水线中功能单元状态信息、现场信息、过程信息可设计出一种层次化调试方法,目前公开研究中的图形流水线调试方法大多只针对单一事件信息进行处理,未发现有系统全面获取事件信息层次化调试方法的相关内容。
发明内容
本发明的目的是:
本发明主要提供一种超长图形流水线层次化调试方法。
本发明的解决方案是:
本发明提供了一种超长图形流水线层次化调试方法,该方法包括如下步骤:
(1)获取各功能单元忙闲状态;
(2)单元忙闲状态判断;
(3)按照图形命令处理流程,从后向前定位第一个处于忙状态的故障单元;
(4)获取故障单元现场信息;
(5)分析现场信息,定位具体故障;
(6)绘图正确性判断;
(7)获取记录过程信息;
(8)按照命令流、数据流处理流程,定位第一个产生故障数据的单元。
进一步的,所述步骤(1)包括:测试项运行后,图形流水线状态稳时,即时长超过单元处理命令的最长周期,并且图形流水线状态不再变化,获取所有功能单元的忙闲状态信息,并将信息传递给步骤(2),进行忙闲状态判断。
进一步的,所述步骤(2)包括,根据步骤(1)所获取信息,判断忙闲状态:
若存在忙状态单元,执行步骤(3);
若不存在忙状态单元,执行步骤(6)。
进一步的,所述步骤(3)包括,基于图形命令在流水线中的处理流程,从后向前定位第一个处于忙状态的故障单元。
进一步的,所述步骤(4)包括,根据步骤(3)所得结果,定位故障单元,获取故障单元现场信息,并将现场信息传递给(5);
所述现场信息包括故输入信息、输出信息、处理信息和统计信息。
进一步的,所述步骤(5)包括,将步骤(4)所得现场信息汇总整理并进行分析,定位具体故障。
进一步的,所述步骤(6)包括,判断绘图错误的存在:
若不存在绘图错误,则表明无故障,退出调试过程;
若存在绘图错误,执行步骤(7)。
进一步的,所述步骤(7)包括,获取命令流、顶点流、像素流、缓冲数据等图形处理信息,并将图形处理信息传递给步骤(8)。
进一步的,所述步骤(8)包括,根据(7)所传递的图形处理信息,定位第一个产生故障数据的单元。
有益效果:
本发明基于命令流处理过程,再结合图形流水线中功能单元状态信息、现场记录信息、过程记录信息三方面,提出一种层次化的图形流水线调试方法,能够快速定位流水线挂死、数据传输错误、访存错误、计算错误等问题的原因及产生问题的相关模块,极大的加速了GPU项目的研发进度。
附图说明:
图1为本发明的方法流程图;
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合附图和具体实施例对本发明的技术方案做进一步详细描述。
如图1所示,本发明实施例的一种超长图形流水线层次化调试方法,该方法包括如下步骤:
(1)获取各功能单元忙闲状态:
测试项运行后,图形流水线状态稳时,即时长超过单元处理命令的最长周期,并且图形流水线状态不再变化,获取所有功能单元的忙闲状态信息,并将信息传递给步骤(2),进行忙闲状态判断。
(2)单元忙闲状态判断:
根据步骤(1)所获取信息,判断忙闲状态:
若存在忙状态单元,执行步骤(3);
若不存在忙状态单元,执行步骤(6)。
(3)按照图形命令处理流程,从后向前定位第一个处于忙状态的故障单元:
基于图形命令在流水线中的处理流程,从后向前定位第一个处于忙状态的故障单元。
(4)获取故障单元现场信息:
根据步骤(3)所得结果,定位故障单元,获取故障单元现场信息,并将现场信息传递给(5);
所述现场信息包括故输入信息、输出信息、处理信息和统计信息。
(5)分析现场信息,定位具体故障:
将步骤(4)所得现场信息汇总整理并进行分析,定位具体故障。
(6)绘图正确性判断:
判断绘图错误的存在:
若不存在绘图错误,则表明无故障,退出调试过程;
若存在绘图错误,执行步骤(7)。
(7)获取记录过程信息:
获取命令流、顶点流、像素流、缓冲数据等图形处理信息,并将图形处理信息传递给步骤(8)。
(8)按照命令流、数据流处理流程,定位第一个产生故障数据的单元:
根据(7)所传递的图形处理信息,定位第一个产生故障数据的单元。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细地说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (1)
1.一种超长图形流水线层次化调试方法,其特征在于,该方法包括如下步骤:
(1)获取各功能单元忙闲状态;
(2)单元忙闲状态判断;
(3)按照图形命令处理流程,从后向前定位第一个处于忙状态的故障单元;
(4)获取故障单元现场信息;
(5)分析现场信息,定位具体故障;
(6)绘图正确性判断;
(7)获取记录过程信息;
(8)按照命令流、数据流处理流程,定位第一个产生故障数据的单元,
所述步骤(1)包括:测试项运行后,图形流水线状态稳时,即时长超过单元处理命令的最长周期,并且图形流水线状态不再变化,获取所有功能单元的忙闲状态信息,并将信息传递给步骤(2),进行忙闲状态判断;
所述步骤(2)包括,根据步骤(1)所获取信息,判断忙闲状态:
若存在忙状态单元,执行步骤(3);
若不存在忙状态单元,执行步骤(6),
所述步骤(3)包括,基于图形命令在流水线中的处理流程,从后向前定位第一个处于忙状态的故障单元,
所述步骤(4)包括,根据步骤(3)所得结果,定位故障单元,获取故障单元现场信息,并将现场信息传递给(5);
所述现场信息包括故输入信息、输出信息、处理信息和统计信息,
所述步骤(5)包括,将步骤(4)所得现场信息汇总整理并进行分析,定位具体故障,
所述步骤(6)包括,判断绘图错误的存在:
若不存在绘图错误,则表明无故障,退出调试过程;
若存在绘图错误,执行步骤(7),
所述步骤(7)包括,获取图形处理信息,所述图形处理信息包括命令流、顶点流、像素流和缓冲数据,并将图形处理信息传递给步骤(8),
所述步骤(8)包括,根据(7)所传递的图形处理信息,定位第一个产生故障数据的单元。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911125588.2A CN111045929B (zh) | 2019-11-18 | 2019-11-18 | 一种超长图形流水线层次化调试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911125588.2A CN111045929B (zh) | 2019-11-18 | 2019-11-18 | 一种超长图形流水线层次化调试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111045929A CN111045929A (zh) | 2020-04-21 |
CN111045929B true CN111045929B (zh) | 2023-06-09 |
Family
ID=70232051
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911125588.2A Active CN111045929B (zh) | 2019-11-18 | 2019-11-18 | 一种超长图形流水线层次化调试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111045929B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112579411A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种图形流水同步控制评价方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9035957B1 (en) * | 2007-08-15 | 2015-05-19 | Nvidia Corporation | Pipeline debug statistics system and method |
CN105320579A (zh) * | 2015-10-27 | 2016-02-10 | 首都师范大学 | 面向sparc v8处理器的自修复双冗余流水线及容错方法 |
CN108021463A (zh) * | 2017-11-24 | 2018-05-11 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于有限状态机的gpu故障管理方法 |
CN108946370A (zh) * | 2018-07-24 | 2018-12-07 | 日立楼宇技术(广州)有限公司 | 电梯故障信息处理方法、系统、设备和可读存储介质 |
CN109975728A (zh) * | 2017-12-28 | 2019-07-05 | 国网山东省电力公司电力科学研究院 | 故障指示器智能化全自动流水线综合检测系统及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6728917B2 (en) * | 2001-02-09 | 2004-04-27 | Agere Systems Inc. | Sequential test pattern generation using combinational techniques |
US9772934B2 (en) * | 2015-09-14 | 2017-09-26 | Palantir Technologies Inc. | Pluggable fault detection tests for data pipelines |
-
2019
- 2019-11-18 CN CN201911125588.2A patent/CN111045929B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9035957B1 (en) * | 2007-08-15 | 2015-05-19 | Nvidia Corporation | Pipeline debug statistics system and method |
CN105320579A (zh) * | 2015-10-27 | 2016-02-10 | 首都师范大学 | 面向sparc v8处理器的自修复双冗余流水线及容错方法 |
CN108021463A (zh) * | 2017-11-24 | 2018-05-11 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于有限状态机的gpu故障管理方法 |
CN109975728A (zh) * | 2017-12-28 | 2019-07-05 | 国网山东省电力公司电力科学研究院 | 故障指示器智能化全自动流水线综合检测系统及方法 |
CN108946370A (zh) * | 2018-07-24 | 2018-12-07 | 日立楼宇技术(广州)有限公司 | 电梯故障信息处理方法、系统、设备和可读存储介质 |
Non-Patent Citations (2)
Title |
---|
"An Overlapping Scan Architecture for Reducing Both Test Time and Test Power by Pipelining Fault Detection";Xiaoding Chen等;《IEEE Transactions on Very Large Scale Integration (VLSI) Systems》;20070430;第15卷(第4期);第404-412页 * |
"就地化保护装置流水线测试系统研制";卜强生等;《电力系统自动化》;20181025;第42卷(第20期);第177-183页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111045929A (zh) | 2020-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9507688B2 (en) | Execution history tracing method | |
US20080276226A1 (en) | Device, method and computer program product for evaluating a debugger script | |
US8448172B2 (en) | Controlling parallel execution of plural simulation programs | |
CN108021487B (zh) | 一种gpu图形处理性能监测与分析方法 | |
US20110154110A1 (en) | Verifying a Register-Transfer Level Design of an Execution Unit | |
US11573872B2 (en) | Leveraging low power states for fault testing of processing cores at runtime | |
CN113779912B (zh) | 一种芯片验证系统、方法、装置、电子设备及存储介质 | |
Andersson | Development of a NOEL-V RISC-V SoC targeting space applications | |
CN111309343A (zh) | 一种开发部署方法及装置 | |
CN111045929B (zh) | 一种超长图形流水线层次化调试方法 | |
CN111209166A (zh) | 一种面向b/s架构业务系统的自动巡检系统 | |
WO2016160190A1 (en) | Technologies for application validation in persistent memory systems | |
CN110825731A (zh) | 数据存储方法、装置、电子设备及存储介质 | |
CN113163009A (zh) | 数据传送方法、装置、电子设备及存储介质 | |
CN115150471B (zh) | 数据处理方法、装置、设备、存储介质及程序产品 | |
US10380313B1 (en) | Implementation and evaluation of designs for heterogeneous computing platforms with hardware acceleration | |
CN111913861A (zh) | 物联网系统的性能测试方法、装置、设备及介质 | |
US20030101040A1 (en) | Hardware simulation using a test scenario manager | |
CN117546139A (zh) | 多线程处理器上的多线程踪迹的确定性重放 | |
CN114312930B (zh) | 基于日志数据的列车运行异常诊断方法和装置 | |
US20090063805A1 (en) | Data acquisition messaging using special purpose registers | |
CN113238933B (zh) | 底盘仿真方法、装置、服务器、存储介质及程序产品 | |
CN116414634A (zh) | 设备调试方法、系统、装置、调试设备和可读存储介质 | |
CN113961465A (zh) | 程序崩溃场景的复现处理方法、设备及程序产品 | |
TW201337739A (zh) | 圖形管線之外部驗證技術 |
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 |