CN111026444A - 一种gpu并行阵列simt指令处理模型 - Google Patents
一种gpu并行阵列simt指令处理模型 Download PDFInfo
- Publication number
- CN111026444A CN111026444A CN201911147465.9A CN201911147465A CN111026444A CN 111026444 A CN111026444 A CN 111026444A CN 201911147465 A CN201911147465 A CN 201911147465A CN 111026444 A CN111026444 A CN 111026444A
- Authority
- CN
- China
- Prior art keywords
- instruction
- model
- processing unit
- stage
- storage
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 14
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 241001510071 Pyrrhocoridae Species 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000004883 computer application Methods 0.000 abstract description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Classifications
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
本发明属于计算机应用技术领域,具体涉及一种GPU并行阵列SIMT指令处理模型,包括SIMT双发射执行过程模型、指令模型、处理单元模型和存储模型;SIMT双发射执行过程模型包括取指译码阶段、冲突检测阶段、warp调度及指令执行阶段和数据写回阶段;取指译码阶段由指令模型支持;冲突检测阶段由处理单元模型和存储模型共同支持;数据写回阶段由存储模型支持。本发明能够有效提升指令处理效率,增强各模块的健壮性,为设计开发高性能GPU打下良好的设计基础。
Description
技术领域
本发明属于计算机应用技术领域,具体涉及一种GPU并行阵列SIMT指令处理模型。
背景技术
图形处理器(GPU)是计算机图形图像处理的核心部件,其性能的优劣直接决定应用绘制的效果。同时,并行数据处理需求的快速增长,让GPU在通用计算领域占据着重要地位。然而,图形处理器设计结构复杂、3D流水长、软硬件资源众多、状态迁移复杂等特点,对图形处理器的设计和开发提出严格的要求。GPU并行阵列SIMT指令处理模型按照指令处理各阶段将图形绘制处理过程分为取指译码阶段、冲突检测阶段、warp调度及指令执行阶段和数据写回阶段,而现有技术的SIMT指令处理模型存在阶段划分不清晰、模型复杂的问题。
发明内容
本发明的目的是:
本发明针对背景技术中的技术问题,提供了一种GPU并行阵列SIMT指令处理模型,能够有效提升指令处理效率,增强各模块的健壮性,为设计开发高性能GPU打下良好的设计基础。
本发明的具体技术方案为:
本发明提出一种GPU并行阵列SIMT指令处理模型,包括SIMT双发射执行过程模型、指令模型、处理单元模型和存储模型;所述SIMT双发射执行过程模型包括取指译码阶段、冲突检测阶段、warp调度及指令执行阶段和数据写回阶段;所述取指译码阶段由指令模型支持;所述冲突检测阶段由处理单元模型和存储模型共同支持;所述数据写回阶段由存储模型支持。
进一步限定,所述取指译码阶段用于从染色器驱动中取得指令,按照指令模型进行译码,输出指令码;
所述冲突检测阶段用于接收取指译码阶段发送的指令码,分析指令间关系和寄存器状态以及处理单元忙闲状态来判断使用哪种发射方式;
所述warp调度及指令执行阶段用于将输入的指令码通过warp调度器分配warp并执行指令。
进一步限定,所述指令模型用于定义指令结构和指令类别;所述指令结构包括指令名、参数个数及类型、处理单元和执行周期数;所述指令类别包括算数指令、流程控制指令以及存储指令。
进一步限定,所述处理单元模型用于定义处理单元结构和处理单元类别;所述处理单元结构包括处理单元名、可处理指令、是否流水、流水线深度和处理单元类别;所述处理单元类别包括算术单元、流程控制单元和存储单元。
进一步限定,所述存储模型用于定义存储结构和存储类别;所述存储结构包括存储类别、数据类型、数据长度和访存周期数;所述存储类别包括寄存器、Local sram和Constant cache。
本发明能够带来的有益效果:
本发明提供的一种基于状态机的对GPU并行阵列SIMT指令处理模型层次化GPU资源管理方法,有效提升指令处理效率,增强各模块的健壮性,为设计开发高性能GPU打下良好的设计基础。
附图说明
图1为本发明GPU并行阵列SIMT指令处理模型的模块图;
其中:1、SIMT双发射执行过程模型;2、指令模型;3、处理单元模型;4、存储模型;11、取指译码阶段;12、冲突检测阶段;13、warp调度及指令执行阶段;14、和数据写回阶段。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所建模的具体实施例仅仅用以解释本发明,并不用于限定本发明。
下面结合说明书附图和具体实施例对本发明的技术方案作出进一步说明。
在本发明的一个实施例中提出一种GPU并行阵列SIMT指令处理模型,包括SIMT双发射执行过程模型1、指令模型2、处理单元模型3和存储模型4;所述SIMT双发射执行过程模型1包括取指译码阶段11、冲突检测阶段12、warp调度及指令执行阶段13和数据写回阶段14;所述取指译码阶段11由指令模型2支持;所述冲突检测阶段12由处理单元模型3和存储模型4共同支持;所述数据写回阶段14由存储模型4支持。
在一个实施例中:所述取指译码阶段11用于从染色器驱动中取得指令,按照指令模型2进行译码,输出指令码;
所述冲突检测阶段12用于接收取指译码阶段11发送的指令码,分析指令间关系和寄存器状态以及处理单元忙闲状态来判断使用哪种发射方式;
所述warp调度及指令执行阶段13用于将输入的指令码通过warp调度器分配warp并执行指令。
在一个实施例中:所述指令模型2用于定义指令结构和指令类别;所述指令结构包括指令名、参数个数及类型、处理单元和执行周期数;所述指令类别包括算数指令、流程控制指令以及存储指令。
在一个实施例中:所述处理单元模型3用于定义处理单元结构和处理单元类别;所述处理单元结构包括处理单元名、可处理指令、是否流水、流水线深度和处理单元类别;所述处理单元类别包括算术单元、流程控制单元和存储单元。
在一个实施例中:所述存储模型4用于定义存储结构和存储类别;所述存储结构包括存储类别、数据类型、数据长度和访存周期数;所述存储类别包括寄存器、Local sram和Constant cache。
Claims (5)
1.一种GPU并行阵列SIMT指令处理模型,包括SIMT双发射执行过程模型(1)、指令模型(2)、处理单元模型(3)和存储模型(4);所述SIMT双发射执行过程模型(1)包括取指译码阶段(11)、冲突检测阶段(12)、warp调度及指令执行阶段(13)和数据写回阶段(14);所述取指译码阶段(11)由指令模型(2)支持;所述冲突检测阶段(12)由处理单元模型(3)和存储模型(4)共同支持;所述数据写回阶段(14)由存储模型(4)支持。
2.根据权利要求1所述的一种GPU并行阵列SIMT指令处理模型,其特征在于:所述取指译码阶段(11)用于从染色器驱动中取得指令,按照指令模型(2)进行译码,输出指令码;
所述冲突检测阶段(12)用于接收取指译码阶段(11)发送的指令码,分析指令间关系和寄存器状态以及处理单元忙闲状态来判断使用哪种发射方式;
所述warp调度及指令执行阶段(13)用于将输入的指令码通过warp调度器分配warp并执行指令。
3.根据权利要求2所述的一种GPU并行阵列SIMT指令处理模型,其特征在于:所述指令模型(2)用于定义指令结构和指令类别;所述指令结构包括指令名、参数个数及类型、处理单元和执行周期数;所述指令类别包括算数指令、流程控制指令以及存储指令。
4.根据权利要求2所述的一种GPU并行阵列SIMT指令处理模型,其特征在于:所述处理单元模型(3)用于定义处理单元结构和处理单元类别;所述处理单元结构包括处理单元名、可处理指令、是否流水、流水线深度和处理单元类别;所述处理单元类别包括算术单元、流程控制单元和存储单元。
5.根据权利要求2所述的一种GPU并行阵列SIMT指令处理模型,其特征在于:所述存储模型(4)用于定义存储结构和存储类别;所述存储结构包括存储类别、数据类型、数据长度和访存周期数;所述存储类别包括寄存器、Local sram和Constant cache。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911147465.9A CN111026444A (zh) | 2019-11-21 | 2019-11-21 | 一种gpu并行阵列simt指令处理模型 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911147465.9A CN111026444A (zh) | 2019-11-21 | 2019-11-21 | 一种gpu并行阵列simt指令处理模型 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111026444A true CN111026444A (zh) | 2020-04-17 |
Family
ID=70206087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911147465.9A Pending CN111026444A (zh) | 2019-11-21 | 2019-11-21 | 一种gpu并行阵列simt指令处理模型 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111026444A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111433747A (zh) * | 2017-12-14 | 2020-07-17 | 惠普发展公司,有限责任合伙企业 | 用于加载操作系统的虚拟存储器 |
CN111966405A (zh) * | 2020-07-03 | 2020-11-20 | 北京航空航天大学杭州创新研究院 | 一种基于GPU的Polar码高速并行译码方法 |
CN112581351A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种双发射simt染色处理单元写回单元结构及写回通路冲突检测方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708474A (zh) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于dimt架构的统一染色阵列记分板实现架构 |
CN108133452A (zh) * | 2017-12-06 | 2018-06-08 | 中国航空工业集团公司西安航空计算技术研究所 | 一种统一染色器阵列的指令发射处理电路 |
CN108182082A (zh) * | 2017-12-06 | 2018-06-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种流水处理双发射处理器记分板电路 |
-
2019
- 2019-11-21 CN CN201911147465.9A patent/CN111026444A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106708474A (zh) * | 2016-12-12 | 2017-05-24 | 中国航空工业集团公司西安航空计算技术研究所 | 一种基于dimt架构的统一染色阵列记分板实现架构 |
CN108133452A (zh) * | 2017-12-06 | 2018-06-08 | 中国航空工业集团公司西安航空计算技术研究所 | 一种统一染色器阵列的指令发射处理电路 |
CN108182082A (zh) * | 2017-12-06 | 2018-06-19 | 中国航空工业集团公司西安航空计算技术研究所 | 一种流水处理双发射处理器记分板电路 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111433747A (zh) * | 2017-12-14 | 2020-07-17 | 惠普发展公司,有限责任合伙企业 | 用于加载操作系统的虚拟存储器 |
CN111966405A (zh) * | 2020-07-03 | 2020-11-20 | 北京航空航天大学杭州创新研究院 | 一种基于GPU的Polar码高速并行译码方法 |
CN111966405B (zh) * | 2020-07-03 | 2022-07-26 | 北京航空航天大学杭州创新研究院 | 一种基于GPU的Polar码高速并行译码方法 |
CN112581351A (zh) * | 2020-12-05 | 2021-03-30 | 西安翔腾微电子科技有限公司 | 一种双发射simt染色处理单元写回单元结构及写回通路冲突检测方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106991011B (zh) | 基于cpu多线程与gpu多粒度并行及协同优化的方法 | |
KR101559090B1 (ko) | 이종 코어를 위한 자동 커널 마이그레이션 | |
US9830156B2 (en) | Temporal SIMT execution optimization through elimination of redundant operations | |
US9672035B2 (en) | Data processing apparatus and method for performing vector processing | |
US9142005B2 (en) | Efficient placement of texture barrier instructions | |
US11900113B2 (en) | Data flow processing method and related device | |
KR20180021812A (ko) | 연속하는 블록을 병렬 실행하는 블록 기반의 아키텍쳐 | |
CN111026444A (zh) | 一种gpu并行阵列simt指令处理模型 | |
JP2011518398A (ja) | 混合精度命令実行を伴うプログラマブルストリーミングプロセッサ | |
US10268519B2 (en) | Scheduling method and processing device for thread groups execution in a computing system | |
US10360034B2 (en) | System and method for maintaining data in a low-power structure | |
EP3726382A1 (en) | Deep learning thread communication | |
US20120331278A1 (en) | Branch removal by data shuffling | |
Chen et al. | Balancing scalar and vector execution on gpu architectures | |
US9268601B2 (en) | API for launching work on a processor | |
KR101420592B1 (ko) | 컴퓨터 시스템 | |
US20220413849A1 (en) | Providing atomicity for complex operations using near-memory computing | |
US11132760B2 (en) | Graphics instruction operands alias | |
Kwon et al. | Mobile GPU shader processor based on non-blocking coarse grained reconfigurable arrays architecture | |
Tomiyama et al. | Automatic parameter optimization for edit distance algorithm on GPU | |
US20240193721A1 (en) | System and method for adaptive graph-to-stream scheduling | |
Liu et al. | An Optimized GP-GPU Warp Scheduling Algorithm for Sparse Matrix-Vector Multiplication | |
US20210042111A1 (en) | Efficient encoding of high fanout communications | |
Cao et al. | Instruction Prefetch for Improving GPGPU Performance | |
JP2023552789A (ja) | 算術論理演算ユニット用のソフトウェアベースの命令スコアボード |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200417 |