CN103917959B - 用于工作项同步的方法和系统 - Google Patents

用于工作项同步的方法和系统 Download PDF

Info

Publication number
CN103917959B
CN103917959B CN201280053875.7A CN201280053875A CN103917959B CN 103917959 B CN103917959 B CN 103917959B CN 201280053875 A CN201280053875 A CN 201280053875A CN 103917959 B CN103917959 B CN 103917959B
Authority
CN
China
Prior art keywords
barrier
work item
work
group
synchronization
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
Application number
CN201280053875.7A
Other languages
English (en)
Chinese (zh)
Other versions
CN103917959A (zh
Inventor
李·W·豪斯
本尼迪克特·R·盖斯特
迈克尔·C·休斯顿
迈克尔·曼特
马克·莱瑟
诺曼·拉宾
布赖恩·D·恩柏林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of CN103917959A publication Critical patent/CN103917959A/zh
Application granted granted Critical
Publication of CN103917959B publication Critical patent/CN103917959B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/524Deadlock detection or avoidance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30087Synchronisation or serialisation instructions
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/522Barrier synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
CN201280053875.7A 2011-11-03 2012-10-31 用于工作项同步的方法和系统 Active CN103917959B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/288,833 US8607247B2 (en) 2011-11-03 2011-11-03 Method and system for workitem synchronization
US13/288,833 2011-11-03
PCT/US2012/062768 WO2013066988A1 (en) 2011-11-03 2012-10-31 Method and system for workitem synchronization

Publications (2)

Publication Number Publication Date
CN103917959A CN103917959A (zh) 2014-07-09
CN103917959B true CN103917959B (zh) 2017-11-14

Family

ID=47172902

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280053875.7A Active CN103917959B (zh) 2011-11-03 2012-10-31 用于工作项同步的方法和系统

Country Status (6)

Country Link
US (1) US8607247B2 (enExample)
EP (1) EP2774037B1 (enExample)
JP (1) JP5984952B2 (enExample)
KR (1) KR101871961B1 (enExample)
CN (1) CN103917959B (enExample)
WO (1) WO2013066988A1 (enExample)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007002855A2 (en) * 2005-06-29 2007-01-04 Neopath Networks, Inc. Parallel filesystem traversal for transparent mirroring of directories and files
US9092272B2 (en) * 2011-12-08 2015-07-28 International Business Machines Corporation Preparing parallel tasks to use a synchronization register
US10585801B2 (en) 2012-11-26 2020-03-10 Advanced Micro Devices, Inc. Prefetch kernels on a graphics processing unit
JP5994601B2 (ja) * 2012-11-27 2016-09-21 富士通株式会社 並列計算機、並列計算機の制御プログラム及び並列計算機の制御方法
US9304940B2 (en) * 2013-03-15 2016-04-05 Intel Corporation Processors, methods, and systems to relax synchronization of accesses to shared memory
US9697003B2 (en) 2013-06-07 2017-07-04 Advanced Micro Devices, Inc. Method and system for yield operation supporting thread-like behavior
US10402235B2 (en) * 2016-04-15 2019-09-03 Nec Corporation Fine-grain synchronization in data-parallel jobs for distributed machine learning
US10402234B2 (en) * 2016-04-15 2019-09-03 Nec Corporation Fine-grain synchronization in data-parallel jobs
US10223436B2 (en) * 2016-04-27 2019-03-05 Qualcomm Incorporated Inter-subgroup data sharing
US10929944B2 (en) 2016-11-23 2021-02-23 Advanced Micro Devices, Inc. Low power and low latency GPU coprocessor for persistent computing
US20180239532A1 (en) * 2017-02-23 2018-08-23 Western Digital Technologies, Inc. Techniques for performing a non-blocking control sync operation
US11353868B2 (en) * 2017-04-24 2022-06-07 Intel Corporation Barriers and synchronization for machine learning at autonomous machines
US11436186B2 (en) * 2017-06-22 2022-09-06 Icat Llc High throughput processors
GB2569271B (en) * 2017-10-20 2020-05-13 Graphcore Ltd Synchronization with a host processor
GB2569273B (en) * 2017-10-20 2020-01-01 Graphcore Ltd Synchronization in a multi-tile processing arrangement
GB2569274B (en) * 2017-10-20 2020-07-15 Graphcore Ltd Synchronization amongst processor tiles
GB2569098B (en) * 2017-10-20 2020-01-08 Graphcore Ltd Combining states of multiple threads in a multi-threaded processor
DE102018205392A1 (de) * 2018-04-10 2019-10-10 Robert Bosch Gmbh Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten
DE102018205390A1 (de) * 2018-04-10 2019-10-10 Robert Bosch Gmbh Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten
US10824481B2 (en) * 2018-11-13 2020-11-03 International Business Machines Corporation Partial synchronization between compute tasks based on threshold specification in a computing system
US11449339B2 (en) * 2019-09-27 2022-09-20 Red Hat, Inc. Memory barrier elision for multi-threaded workloads
US11803380B2 (en) * 2019-10-29 2023-10-31 Nvidia Corporation High performance synchronization mechanisms for coordinating operations on a computer system
CN112749019B (zh) * 2019-10-29 2025-08-29 辉达公司 用于协调计算机系统上的操作的高性能同步机制
US11409579B2 (en) * 2020-02-24 2022-08-09 Intel Corporation Multiple independent synchonization named barrier within a thread group
US11231881B2 (en) * 2020-04-02 2022-01-25 Dell Products L.P. Raid data storage device multi-step command coordination system
US12314760B2 (en) * 2021-09-27 2025-05-27 Advanced Micro Devices, Inc. Garbage collecting wavefront
US11816349B2 (en) 2021-11-03 2023-11-14 Western Digital Technologies, Inc. Reduce command latency using block pre-erase
US20230289242A1 (en) * 2022-03-10 2023-09-14 Nvidia Corporation Hardware accelerated synchronization with asynchronous transaction support
CN117472600A (zh) * 2022-05-26 2024-01-30 上海壁仞科技股份有限公司 指令执行方法、处理器和电子装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101739381A (zh) * 2008-11-19 2010-06-16 富士通株式会社 屏障同步设备、屏障同步系统以及屏障同步方法
CN101925881A (zh) * 2008-01-25 2010-12-22 学校法人早稻田大学 多处理器系统以及多处理器系统的同步方法

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5930807A (en) * 1997-04-23 1999-07-27 Sun Microsystems Apparatus and method for fast filtering read and write barrier operations in garbage collection system
JP3810631B2 (ja) * 2000-11-28 2006-08-16 富士通株式会社 情報処理プログラムを記録した記録媒体
JP4448784B2 (ja) 2005-03-15 2010-04-14 株式会社日立製作所 並列計算機の同期方法及びプログラム
US7555607B2 (en) * 2005-11-10 2009-06-30 Hewlett-Packard Development Company, L.P. Program thread syncronization for instruction cachelines
US7587555B2 (en) * 2005-11-10 2009-09-08 Hewlett-Packard Development Company, L.P. Program thread synchronization
US7660961B2 (en) * 2007-04-03 2010-02-09 Sun Microsystems, Inc. Concurrent evacuation of the young generation
KR101458028B1 (ko) * 2007-05-30 2014-11-04 삼성전자 주식회사 병렬 처리 장치 및 방법
US8140773B2 (en) * 2007-06-27 2012-03-20 Bratin Saha Using ephemeral stores for fine-grained conflict detection in a hardware accelerated STM
US8719514B2 (en) * 2007-06-27 2014-05-06 Intel Corporation Software filtering in a transactional memory system
US8082424B2 (en) 2007-08-01 2011-12-20 International Business Machines Corporation Determining when a set of compute nodes participating in a barrier operation on a parallel computer are ready to exit the barrier operation
US20100281082A1 (en) * 2009-04-30 2010-11-04 Tatu Ylonen Oy Ltd Subordinate Multiobjects
US8370577B2 (en) * 2009-06-26 2013-02-05 Microsoft Corporation Metaphysically addressed cache metadata
US8229907B2 (en) * 2009-06-30 2012-07-24 Microsoft Corporation Hardware accelerated transactional memory system with open nested transactions
US8402218B2 (en) * 2009-12-15 2013-03-19 Microsoft Corporation Efficient garbage collection and exception handling in a hardware accelerated transactional memory system
US8316194B2 (en) * 2009-12-15 2012-11-20 Intel Corporation Mechanisms to accelerate transactions using buffered stores
US8280866B2 (en) * 2010-04-12 2012-10-02 Clausal Computing Oy Monitoring writes using thread-local write barrier buffers and soft synchronization
US20110264880A1 (en) * 2010-04-23 2011-10-27 Tatu Ylonen Oy Ltd Object copying with re-copying concurrently written objects
US9069545B2 (en) * 2011-07-18 2015-06-30 International Business Machines Corporation Relaxation of synchronization for iterative convergent computations

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101925881A (zh) * 2008-01-25 2010-12-22 学校法人早稻田大学 多处理器系统以及多处理器系统的同步方法
CN101739381A (zh) * 2008-11-19 2010-06-16 富士通株式会社 屏障同步设备、屏障同步系统以及屏障同步方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Distributed Generalized Dynamic Barrier Synchronization;Shivali Agarwah, Saurabh Joshi, Rudrapatna K. Shyamasundar;《Distributed Computing and Networking》;20110105;143-153 *

Also Published As

Publication number Publication date
JP5984952B2 (ja) 2016-09-06
WO2013066988A1 (en) 2013-05-10
CN103917959A (zh) 2014-07-09
JP2014532937A (ja) 2014-12-08
EP2774037B1 (en) 2019-09-25
EP2774037A1 (en) 2014-09-10
US20130117750A1 (en) 2013-05-09
KR20140088550A (ko) 2014-07-10
KR101871961B1 (ko) 2018-08-02
US8607247B2 (en) 2013-12-10

Similar Documents

Publication Publication Date Title
CN103917959B (zh) 用于工作项同步的方法和系统
US10467013B2 (en) Method and system for yield operation supporting thread-like behavior
US9424099B2 (en) Method and system for synchronization of workitems with divergent control flow
US11803380B2 (en) High performance synchronization mechanisms for coordinating operations on a computer system
US10915364B2 (en) Technique for computational nested parallelism
US9928109B2 (en) Method and system for processing nested stream events
JP5701487B2 (ja) 同期並列スレッドプロセッサにおける間接的な関数呼び出し命令
US20140157287A1 (en) Optimized Context Switching for Long-Running Processes
US10067768B2 (en) Execution of divergent threads using a convergence barrier
US9459876B2 (en) System, method, and computer program product for managing divergences and synchronization points during thread block execution by using a double sided queue for token storage
EP2171592B1 (en) Parallelizing sequential frameworks using transactions
CN110597606A (zh) 一种高速缓存友好的用户级线程调度方法
Laarman Scalable multi-core model checking
CN112749019B (zh) 用于协调计算机系统上的操作的高性能同步机制
Zheng et al. Hiwaylib: A software framework for enabling high performance communications for heterogeneous pipeline computations
Bernstein et al. Perspectives: why new programming languages for simulation?
Lisper Towards parallel programming models for predictability
Martin et al. SPECTRE: Speculation to hide communication latency
Torp The parallelism shift and C++'s memory model

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