DOE Patents title logo U.S. Department of Energy
Office of Scientific and Technical Information

Title: Monitor support on accelerated processing device

Abstract

A technique for implementing synchronization monitors on an accelerated processing device (“APD”) is provided. Work on an APD includes workgroups that include one or more wavefronts. All wavefronts of a workgroup execute on a single compute unit. A monitor is a synchronization construct that allows workgroups to stall until a particular condition is met. Responsive to all wavefronts of a workgroup executing a wait instruction, the monitor coordinator records the workgroup in an “entry queue.” The workgroup begins saving its state to a general APD memory and, when such saving is complete, the monitor coordinator moves the workgroup to a “condition queue.” When the condition specified by the wait instruction is met, the monitor coordinator moves the workgroup to a “ready queue,” and, when sufficient resources are available on a compute unit, the APD schedules the ready workgroup for execution on a compute unit.

Inventors:
;
Issue Date:
Research Org.:
Lawrence Livermore National Laboratory (LLNL), Livermore, CA (United States)
Sponsoring Org.:
USDOE
OSTI Identifier:
1632546
Patent Number(s):
10558418
Application Number:
15/661,843
Assignee:
Advanced Micro Devices, Inc. (Sunnyvale, CA)
Patent Classifications (CPCs):
G - PHYSICS G06 - COMPUTING G06F - ELECTRIC DIGITAL DATA PROCESSING
G - PHYSICS G06 - COMPUTING G06T - IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
DOE Contract Number:  
AC52-07NA27344; B620717
Resource Type:
Patent
Resource Relation:
Patent File Date: 07/27/2017
Country of Publication:
United States
Language:
English
Subject:
97 MATHEMATICS AND COMPUTING; 42 ENGINEERING

Citation Formats

Dutu, Alexandru, and Beckmann, Bradford M. Monitor support on accelerated processing device. United States: N. p., 2020. Web.
Dutu, Alexandru, & Beckmann, Bradford M. Monitor support on accelerated processing device. United States.
Dutu, Alexandru, and Beckmann, Bradford M. Tue . "Monitor support on accelerated processing device". United States. https://www.osti.gov/servlets/purl/1632546.
@article{osti_1632546,
title = {Monitor support on accelerated processing device},
author = {Dutu, Alexandru and Beckmann, Bradford M.},
abstractNote = {A technique for implementing synchronization monitors on an accelerated processing device (“APD”) is provided. Work on an APD includes workgroups that include one or more wavefronts. All wavefronts of a workgroup execute on a single compute unit. A monitor is a synchronization construct that allows workgroups to stall until a particular condition is met. Responsive to all wavefronts of a workgroup executing a wait instruction, the monitor coordinator records the workgroup in an “entry queue.” The workgroup begins saving its state to a general APD memory and, when such saving is complete, the monitor coordinator moves the workgroup to a “condition queue.” When the condition specified by the wait instruction is met, the monitor coordinator moves the workgroup to a “ready queue,” and, when sufficient resources are available on a compute unit, the APD schedules the ready workgroup for execution on a compute unit.},
doi = {},
journal = {},
number = ,
volume = ,
place = {United States},
year = {Tue Feb 11 00:00:00 EST 2020},
month = {Tue Feb 11 00:00:00 EST 2020}
}

Works referenced in this record:

Out-of-Order Cache Returns
patent-application, June 2018


Integrated Heterogeneous Processing Units
patent-application, November 2017


Compute cluster preemption within a general-purpose graphics processing unit
patent, August 2018


Low Power and Low Latency GPU Coprocessor for Persistent Computing
patent-application, May 2018


Software Mechanisms for Managing Task Scheduling on an Accelerated Processing Device (APD)
patent-application, June 2013


Parallel Computing Architecture for Use with a Non-Greedy Scheduling Algorithm
patent-application, October 2018


Software Only Inter-Compute Unit Redundant Multithreading for GPUs
patent-application, December 2014


Automatic Load Balancing for Heterogeneous Cores
patent-application, November 2012


System and Method for Page-Conscious GPU Instruction
patent-application, February 2016


Monitors: an operating system structuring concept
journal, October 1974


Parallel processor system for processing natural concurrencies and method therefor
patent, June 1991


Method and Apparatus for Efficient Submission of Workload to a High Performance Graphics Sub-System
patent-application, September 2017


Managing Coherent Memory between an Accelerated Processing Device and a Central Processing Unit
patent-application, October 2013


System and Method for Hardware Scheduling of Conditional Barriers and Impatient Barriers
patent-application, September 2014


Scheduling and Execution of Compute Tasks
patent-application, July 2013


System and Method for Hardware Scheduling of Indexed Barriers
patent-application, September 2014


Scheduling and Execution of Compute Tasks
patent-application, July 2013


Creating SIMD Efficient Code by Transferring Register State Through Common Memory
patent-application, May 2014


Conditional Atomic Operations at a Processor
patent-application, December 2016


Stall Prediction Thread Management
patent-application, August 2007


Partitioning Resources of a Processor
patent-application, June 2013


Structured multiprogramming
journal, July 1972


Experience with processes and monitors in Mesa
journal, February 1980


Graphic Processing System and Method Thereof
patent-application, September 2016


Prediction-based power management strategy for GPU compute workloads
patent, April 2019


Adaptive scheduling for task assignment among heterogeneous processor cores
patent, January 2019


System and Method of Data Processing
patent-application, May 2015


Policies for Shader Resource Allocation in a Shader Core
patent-application, June 2013