JP6189858B2 - シェーダコアにおけるシェーダリソース割当てのポリシー - Google Patents
シェーダコアにおけるシェーダリソース割当てのポリシー Download PDFInfo
- Publication number
- JP6189858B2 JP6189858B2 JP2014547504A JP2014547504A JP6189858B2 JP 6189858 B2 JP6189858 B2 JP 6189858B2 JP 2014547504 A JP2014547504 A JP 2014547504A JP 2014547504 A JP2014547504 A JP 2014547504A JP 6189858 B2 JP6189858 B2 JP 6189858B2
- Authority
- JP
- Japan
- Prior art keywords
- pipeline
- queue
- computation
- apd
- priority
- 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 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 slave processor, e.g. coprocessor
- G06F9/3879—Concurrent instruction execution, e.g. pipeline or look ahead using a slave 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)
- Software Systems (AREA)
- Theoretical Computer Science (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 (3)
| Publication Number | Publication Date |
|---|---|
| JP2015502618A JP2015502618A (ja) | 2015-01-22 |
| JP2015502618A5 JP2015502618A5 (enExample) | 2016-02-04 |
| JP6189858B2 true JP6189858B2 (ja) | 2017-08-30 |
Family
ID=47754935
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2014547504A Active JP6189858B2 (ja) | 2011-12-14 | 2012-12-14 | シェーダコアにおけるシェーダリソース割当てのポリシー |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US20130155077A1 (enExample) |
| EP (1) | EP2791795B1 (enExample) |
| JP (1) | JP6189858B2 (enExample) |
| KR (1) | KR101922681B1 (enExample) |
| CN (1) | CN103999051B (enExample) |
| WO (1) | WO2013090773A2 (enExample) |
Families Citing this family (29)
| 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 |
| US9779535B2 (en) | 2014-03-19 | 2017-10-03 | Microsoft Technology Licensing, Llc | Configuring resources used by a graphics processing unit |
| US9766954B2 (en) | 2014-09-08 | 2017-09-19 | 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 |
| CN108536644B (zh) * | 2015-12-04 | 2022-04-12 | 格兰菲智能科技有限公司 | 由装置端推核心入队列的装置 |
| 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 |
| CN119127314B (zh) * | 2024-11-08 | 2025-03-04 | 湖南进芯电子科技有限公司 | 一种数字信号处理器的指令执行方法及数字信号处理器 |
Family Cites Families (19)
| 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 |
| 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 |
| 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 |
| US8368701B2 (en) * | 2008-11-06 | 2013-02-05 | Via Technologies, Inc. | Metaprocessor for GPU control and synchronization in a multiprocessor environment |
| 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 WO PCT/US2012/069836 patent/WO2013090773A2/en not_active Ceased
- 2012-12-14 CN CN201280061763.6A patent/CN103999051B/zh active Active
- 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
Also Published As
| Publication number | Publication date |
|---|---|
| US20180321946A1 (en) | 2018-11-08 |
| WO2013090773A3 (en) | 2013-08-08 |
| KR101922681B1 (ko) | 2018-11-27 |
| US20130155077A1 (en) | 2013-06-20 |
| JP2015502618A (ja) | 2015-01-22 |
| US10579388B2 (en) | 2020-03-03 |
| WO2013090773A2 (en) | 2013-06-20 |
| CN103999051A (zh) | 2014-08-20 |
| KR20140101384A (ko) | 2014-08-19 |
| EP2791795B1 (en) | 2018-09-05 |
| CN103999051B (zh) | 2018-07-31 |
| EP2791795A2 (en) | 2014-10-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6189858B2 (ja) | シェーダコアにおけるシェーダリソース割当てのポリシー | |
| EP2652615B1 (en) | Graphics compute process scheduling | |
| US8963933B2 (en) | Method for urgency-based preemption of a process | |
| KR101786767B1 (ko) | 유저 모드로부터 그래픽 처리 디스패치 | |
| US10242420B2 (en) | Preemptive context switching of processes on an accelerated processing device (APD) based on time quanta | |
| WO2012082421A1 (en) | Accessibility of graphics processing compute resources | |
| US9122522B2 (en) | Software mechanisms for managing task scheduling on an accelerated processing device (APD) | |
| US8803891B2 (en) | Method for preempting graphics tasks to accommodate compute tasks in an accelerated processing device (APD) | |
| US20130147816A1 (en) | Partitioning Resources of a Processor | |
| US20130141447A1 (en) | Method and Apparatus for Accommodating Multiple, Concurrent Work Inputs | |
| EP2652616A1 (en) | Methods and systems for synchronous operation of a processing device | |
| US20130135327A1 (en) | Saving and Restoring Non-Shader State Using a Command Processor | |
| US20130263144A1 (en) | System Call Queue Between Visible and Invisible Computing Devices | |
| US9329893B2 (en) | Method for resuming an APD wavefront in which a subset of elements have faulted | |
| US20130141446A1 (en) | Method and Apparatus for Servicing Page Fault Exceptions | |
| WO2013085794A1 (en) | Method and apparatus for servicing page fault exceptions | |
| US20130155079A1 (en) | Saving and Restoring Shader Context State | |
| US20120194528A1 (en) | Method and System for Context Switching | |
| WO2013090605A2 (en) | Saving and restoring shader context state and resuming a faulted apd wavefront |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151208 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20151208 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20161226 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170104 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170404 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20170711 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170803 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6189858 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |