CN103999051B - 用于着色器核心中着色器资源分配的策略 - Google Patents
用于着色器核心中着色器资源分配的策略 Download PDFInfo
- Publication number
- CN103999051B CN103999051B CN201280061763.6A CN201280061763A CN103999051B CN 103999051 B CN103999051 B CN 103999051B CN 201280061763 A CN201280061763 A CN 201280061763A CN 103999051 B CN103999051 B CN 103999051B
- Authority
- CN
- China
- Prior art keywords
- queue
- pipeline
- pipe
- pipe queue
- calculating
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3851—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor for non-native instruction execution, e.g. executing a command; for Java instruction set
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/3888—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple threads [SIMT] in parallel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Image Generation (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/325,286 | 2011-12-14 | ||
| US13/325,286 US20130155077A1 (en) | 2011-12-14 | 2011-12-14 | Policies for Shader Resource Allocation in a Shader Core |
| PCT/US2012/069836 WO2013090773A2 (en) | 2011-12-14 | 2012-12-14 | Policies for shader resource allocation in a shader core |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN103999051A CN103999051A (zh) | 2014-08-20 |
| CN103999051B true CN103999051B (zh) | 2018-07-31 |
Family
ID=47754935
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201280061763.6A Active CN103999051B (zh) | 2011-12-14 | 2012-12-14 | 用于着色器核心中着色器资源分配的策略 |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US20130155077A1 (https=) |
| EP (1) | EP2791795B1 (https=) |
| JP (1) | JP6189858B2 (https=) |
| KR (1) | KR101922681B1 (https=) |
| CN (1) | CN103999051B (https=) |
| WO (1) | WO2013090773A2 (https=) |
Families Citing this family (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8578129B2 (en) * | 2011-12-14 | 2013-11-05 | Advanced Micro Devices, Inc. | Infrastructure support for accelerated processing device memory paging without operating system integration |
| JP5238876B2 (ja) * | 2011-12-27 | 2013-07-17 | 株式会社東芝 | 情報処理装置及び情報処理方法 |
| US8977997B2 (en) * | 2013-03-15 | 2015-03-10 | Mentor Graphics Corp. | Hardware simulation controller, system and method for functional verification |
| GB2524063B (en) | 2014-03-13 | 2020-07-01 | Advanced Risc Mach Ltd | Data processing apparatus for executing an access instruction for N threads |
| US9766954B2 (en) * | 2014-09-08 | 2017-09-19 | Microsoft Technology Licensing, Llc | Configuring resources used by a graphics processing unit |
| US9779535B2 (en) | 2014-03-19 | 2017-10-03 | Microsoft Technology Licensing, Llc | Configuring resources used by a graphics processing unit |
| US20160260246A1 (en) * | 2015-03-02 | 2016-09-08 | Advanced Micro Devices, Inc. | Providing asynchronous display shader functionality on a shared shader core |
| US9652817B2 (en) * | 2015-03-12 | 2017-05-16 | Samsung Electronics Co., Ltd. | Automated compute kernel fusion, resizing, and interleave |
| CN105446939B (zh) * | 2015-12-04 | 2019-02-26 | 上海兆芯集成电路有限公司 | 由装置端推核心入队列的装置 |
| US10210593B2 (en) * | 2016-01-28 | 2019-02-19 | Qualcomm Incorporated | Adaptive context switching |
| US20180109469A1 (en) * | 2016-10-17 | 2018-04-19 | International Business Machines Corporation | Systems and methods for controlling process priority for efficient resource allocation |
| US10026145B2 (en) * | 2016-12-13 | 2018-07-17 | Qualcomm Incorporated | Resource sharing on shader processor of GPU |
| US10147159B2 (en) | 2017-04-07 | 2018-12-04 | Microsoft Technology Licensing, Llc | Ink render using high priority queues |
| US10282812B2 (en) | 2017-04-09 | 2019-05-07 | Intel Corporation | Page faulting and selective preemption |
| US20180307533A1 (en) * | 2017-04-21 | 2018-10-25 | Intel Corporation | Faciltating multi-level microcontroller scheduling for efficient computing microarchitecture |
| GB2563588B (en) * | 2017-06-16 | 2019-06-26 | Imagination Tech Ltd | Scheduling tasks |
| US10558418B2 (en) * | 2017-07-27 | 2020-02-11 | Advanced Micro Devices, Inc. | Monitor support on accelerated processing device |
| CN109697115B (zh) * | 2017-10-20 | 2023-06-06 | 伊姆西Ip控股有限责任公司 | 用于调度应用的方法、装置以及计算机可读介质 |
| US10796472B2 (en) * | 2018-06-30 | 2020-10-06 | Intel Corporation | Method and apparatus for simultaneously executing multiple contexts on a graphics engine |
| US11593311B2 (en) * | 2019-09-24 | 2023-02-28 | Ati Technologies Ulc | Compression system with longest match processing for generating compressed data |
| US11210757B2 (en) * | 2019-12-13 | 2021-12-28 | Advanced Micro Devices, Inc. | GPU packet aggregation system |
| US11403729B2 (en) * | 2020-02-28 | 2022-08-02 | Advanced Micro Devices, Inc. | Dynamic transparent reconfiguration of a multi-tenant graphics processing unit |
| US12033275B2 (en) * | 2021-09-29 | 2024-07-09 | Advanced Micro Devices, Inc. | System and methods for efficient execution of a collaborative task in a shader system |
| US11941723B2 (en) | 2021-12-29 | 2024-03-26 | Advanced Micro Devices, Inc. | Dynamic dispatch for workgroup distribution |
| US11941742B2 (en) | 2022-06-23 | 2024-03-26 | Apple Inc. | Tiled processor communication fabric |
| US20240419482A1 (en) * | 2023-06-16 | 2024-12-19 | Advanced Micro Devices, Inc. | GPU Circuit Self-Context Save During Context Unmap |
| US20250110776A1 (en) * | 2023-09-29 | 2025-04-03 | Advanced Micro Devices, Inc. | Hardware queue priority mechanism |
| US20250217195A1 (en) * | 2023-12-30 | 2025-07-03 | Advanced Micro Devices, Inc. | Local launch in workgroup processors |
| CN121771825A (zh) * | 2024-09-30 | 2026-03-31 | 华为技术有限公司 | 通信方法及相关装置 |
| CN119127314B (zh) * | 2024-11-08 | 2025-03-04 | 湖南进芯电子科技有限公司 | 一种数字信号处理器的指令执行方法及数字信号处理器 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6781956B1 (en) * | 1999-09-17 | 2004-08-24 | Cisco Technology, Inc. | System and method for prioritizing packetized data from a distributed control environment for transmission through a high bandwidth link |
| CN101719262A (zh) * | 2008-11-06 | 2010-06-02 | 威盛电子股份有限公司 | 绘图处理单元、元命令处理系统以及元命令执行方法 |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4953081A (en) * | 1988-12-21 | 1990-08-28 | International Business Machines Corporation | Least recently used arbiter with programmable high priority mode and performance monitor |
| US5371887A (en) * | 1989-09-05 | 1994-12-06 | Matsushita Electric Industrial Co., Ltd. | Time-shared multitask execution device |
| JPH0535509A (ja) * | 1991-07-29 | 1993-02-12 | Nec Corp | 階層構造キユーのチエーン破壊ガード方式 |
| US5884077A (en) * | 1994-08-31 | 1999-03-16 | Canon Kabushiki Kaisha | Information processing system and method in which computer with high load borrows processor of computer with low load to execute process |
| US6055579A (en) * | 1997-11-17 | 2000-04-25 | Silicon Graphics, Inc. | Distributed control and synchronization of multiple data processors using flexible command queues |
| US7234144B2 (en) * | 2002-01-04 | 2007-06-19 | Microsoft Corporation | Methods and system for managing computational resources of a coprocessor in a computing system |
| US7673304B2 (en) * | 2003-02-18 | 2010-03-02 | Microsoft Corporation | Multithreaded kernel for graphics processing unit |
| US7421694B2 (en) * | 2003-02-18 | 2008-09-02 | Microsoft Corporation | Systems and methods for enhancing performance of a coprocessor |
| US7337443B2 (en) * | 2003-06-30 | 2008-02-26 | Microsoft Corporation | Method and apparatus for processing program threads |
| JP2006119796A (ja) * | 2004-10-20 | 2006-05-11 | Matsushita Electric Ind Co Ltd | キャッシュメモリシステムおよび動画処理装置 |
| US7830389B2 (en) * | 2006-10-03 | 2010-11-09 | Honeywell International Inc. | Dual processor accelerated graphics rendering |
| US8085272B1 (en) * | 2006-11-03 | 2011-12-27 | Nvidia Corporation | Method and system for improving data coherency in a parallel rendering system |
| US20090160867A1 (en) * | 2007-12-19 | 2009-06-25 | Advance Micro Devices, Inc. | Autonomous Context Scheduler For Graphics Processing Units |
| DE102008007723A1 (de) | 2008-02-06 | 2009-08-20 | Osram Gesellschaft mit beschränkter Haftung | Beleuchtungsmodul, Leuchte und Verfahren zur Beleuchtung |
| US8854381B2 (en) * | 2009-09-03 | 2014-10-07 | Advanced Micro Devices, Inc. | Processing unit that enables asynchronous task dispatch |
| US20120324462A1 (en) | 2009-10-31 | 2012-12-20 | Rutgers, The State University Of New Jersey | Virtual flow pipelining processing architecture |
| US8549524B2 (en) * | 2009-12-23 | 2013-10-01 | Sap Ag | Task scheduler for cooperative tasks and threads for multiprocessors and multicore systems |
-
2011
- 2011-12-14 US US13/325,286 patent/US20130155077A1/en not_active Abandoned
-
2012
- 2012-12-14 CN CN201280061763.6A patent/CN103999051B/zh active Active
- 2012-12-14 WO PCT/US2012/069836 patent/WO2013090773A2/en not_active Ceased
- 2012-12-14 EP EP12826689.7A patent/EP2791795B1/en active Active
- 2012-12-14 KR KR1020147017104A patent/KR101922681B1/ko active Active
- 2012-12-14 JP JP2014547504A patent/JP6189858B2/ja active Active
-
2018
- 2018-07-19 US US16/040,224 patent/US10579388B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6781956B1 (en) * | 1999-09-17 | 2004-08-24 | Cisco Technology, Inc. | System and method for prioritizing packetized data from a distributed control environment for transmission through a high bandwidth link |
| CN101719262A (zh) * | 2008-11-06 | 2010-06-02 | 威盛电子股份有限公司 | 绘图处理单元、元命令处理系统以及元命令执行方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20180321946A1 (en) | 2018-11-08 |
| CN103999051A (zh) | 2014-08-20 |
| WO2013090773A2 (en) | 2013-06-20 |
| JP2015502618A (ja) | 2015-01-22 |
| KR20140101384A (ko) | 2014-08-19 |
| EP2791795A2 (en) | 2014-10-22 |
| EP2791795B1 (en) | 2018-09-05 |
| JP6189858B2 (ja) | 2017-08-30 |
| WO2013090773A3 (en) | 2013-08-08 |
| US10579388B2 (en) | 2020-03-03 |
| US20130155077A1 (en) | 2013-06-20 |
| KR101922681B1 (ko) | 2018-11-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN103999051B (zh) | 用于着色器核心中着色器资源分配的策略 | |
| JP6381734B2 (ja) | グラフィックス計算プロセススケジューリング | |
| US8963933B2 (en) | Method for urgency-based preemption of a process | |
| US9176795B2 (en) | Graphics processing dispatch from user mode | |
| US20120229481A1 (en) | Accessibility of graphics processing compute resources | |
| US9507632B2 (en) | Preemptive context switching of processes on ac accelerated processing device (APD) based on time quanta | |
| US10146575B2 (en) | Heterogeneous enqueuing and dequeuing mechanism for task scheduling | |
| US20120194526A1 (en) | Task Scheduling | |
| KR101791182B1 (ko) | 컴퓨터 시스템 인터럽트 핸들링 | |
| US20130135327A1 (en) | Saving and Restoring Non-Shader State Using a Command Processor | |
| US10255104B2 (en) | System call queue between visible and invisible computing devices | |
| US20130160019A1 (en) | Method for Resuming an APD Wavefront in Which a Subset of Elements Have Faulted | |
| US20130155079A1 (en) | Saving and Restoring Shader Context State |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |