CN102939596B - 用于多核处理器的多线程应用识别存储器调度方案 - Google Patents
用于多核处理器的多线程应用识别存储器调度方案 Download PDFInfo
- Publication number
- CN102939596B CN102939596B CN201180028331.0A CN201180028331A CN102939596B CN 102939596 B CN102939596 B CN 102939596B CN 201180028331 A CN201180028331 A CN 201180028331A CN 102939596 B CN102939596 B CN 102939596B
- Authority
- CN
- China
- Prior art keywords
- thread
- group
- memory
- thread group
- threads
- 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
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- 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/30003—Arrangements for executing specific machine instructions
- G06F9/30076—Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
- G06F9/3009—Thread control instructions
-
- 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
-
- 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/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Debugging And Monitoring (AREA)
- Memory System (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/795,871 US8453150B2 (en) | 2010-06-08 | 2010-06-08 | Multithread application-aware memory scheduling scheme for multi-core processors |
| US12/795,871 | 2010-06-08 | ||
| PCT/US2011/038526 WO2011156175A1 (en) | 2010-06-08 | 2011-05-31 | Multithread application-aware memory scheduling scheme for multi-core processors |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102939596A CN102939596A (zh) | 2013-02-20 |
| CN102939596B true CN102939596B (zh) | 2016-03-23 |
Family
ID=44358387
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201180028331.0A Active CN102939596B (zh) | 2010-06-08 | 2011-05-31 | 用于多核处理器的多线程应用识别存储器调度方案 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US8453150B2 (enExample) |
| EP (1) | EP2580669B1 (enExample) |
| JP (1) | JP5752242B2 (enExample) |
| KR (1) | KR101688983B1 (enExample) |
| CN (1) | CN102939596B (enExample) |
| WO (1) | WO2011156175A1 (enExample) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8799912B2 (en) * | 2009-07-22 | 2014-08-05 | Empire Technology Development Llc | Application selection of memory request scheduling |
| US8839255B2 (en) * | 2009-07-23 | 2014-09-16 | Empire Technology Development Llc | Scheduling of threads by batch scheduling |
| US9098521B2 (en) * | 2010-09-15 | 2015-08-04 | Qualcomm Incorporated | System and method for managing resources and threshsold events of a multicore portable computing device |
| US8806502B2 (en) | 2010-09-15 | 2014-08-12 | Qualcomm Incorporated | Batching resource requests in a portable computing device |
| US9152523B2 (en) | 2010-09-15 | 2015-10-06 | Qualcomm Incorporated | Batching and forking resource requests in a portable computing device |
| US9652300B2 (en) * | 2012-06-28 | 2017-05-16 | Intel Corporation | Systems, methods, and computer program products for preemption of threads at a synchronization barrier |
| US9569393B2 (en) | 2012-08-10 | 2017-02-14 | Rambus Inc. | Memory module threading with staggered data transfers |
| US9158595B2 (en) * | 2012-10-25 | 2015-10-13 | Nvidia Corporation | Hardware scheduling of ordered critical code sections |
| US9135087B1 (en) * | 2012-12-27 | 2015-09-15 | Altera Corporation | Workgroup handling in pipelined circuits |
| US9811453B1 (en) * | 2013-07-31 | 2017-11-07 | Juniper Networks, Inc. | Methods and apparatus for a scheduler for memory access |
| US9436503B2 (en) * | 2013-10-31 | 2016-09-06 | Emu Solutions, Inc. | Concurrency control mechanisms for highly multi-threaded systems |
| CN104866379B (zh) * | 2014-02-24 | 2019-06-14 | 中兴通讯股份有限公司 | 一种多核处理器调度方法、装置及终端 |
| US9685219B2 (en) | 2015-05-13 | 2017-06-20 | Samsung Electronics Co., Ltd. | Semiconductor memory device for deconcentrating refresh commands and system including the same |
| KR101713114B1 (ko) | 2015-08-12 | 2017-03-08 | 엔에이치엔엔터테인먼트 주식회사 | 모바일 환경에서의 리소스 다운로드 방법 및 시스템 |
| US10572399B2 (en) * | 2016-07-13 | 2020-02-25 | Qualcomm Incorporated | Memory request arbitration |
| US10503541B2 (en) * | 2017-12-04 | 2019-12-10 | Beijing Panyi Technology Co., Ltd. | System and method for handling dependencies in dynamic thread spawning for a multi-threading processor |
| US11281501B2 (en) * | 2018-04-04 | 2022-03-22 | Micron Technology, Inc. | Determination of workload distribution across processors in a memory system |
| CN112579278B (zh) * | 2020-12-24 | 2023-01-20 | 海光信息技术股份有限公司 | 用于同步多线程的中央处理单元、方法、设备及存储介质 |
| CN117472593B (zh) * | 2023-12-27 | 2024-03-22 | 中诚华隆计算机技术有限公司 | 一种多线程间资源分配方法及系统 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101145113A (zh) * | 2007-09-10 | 2008-03-19 | 中兴通讯股份有限公司 | 一种多线程访问间接寄存器的调度方法 |
| CN101739293A (zh) * | 2009-12-24 | 2010-06-16 | 航天恒星科技有限公司 | 一种基于多线程的卫星数据产品生产任务并行调度方法 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2518134B2 (ja) * | 1993-03-29 | 1996-07-24 | 日本電気株式会社 | 共有資源排他制御方式 |
| US7480768B2 (en) | 2005-09-30 | 2009-01-20 | Intel Corporation | Apparatus, systems and methods to reduce access to shared data storage |
| JP2009527828A (ja) * | 2006-02-17 | 2009-07-30 | クゥアルコム・インコーポレイテッド | マルチプロセッサのアプリケーションサポートのためのシステムおよび方法 |
| WO2007128168A1 (en) | 2006-05-10 | 2007-11-15 | Intel Corporation | Thread scheduling on multiprocessor systems |
| US9588810B2 (en) | 2007-08-08 | 2017-03-07 | Microsoft Technology Licensing, Llc | Parallelism-aware memory request scheduling in shared memory controllers |
| US8180975B2 (en) * | 2008-02-26 | 2012-05-15 | Microsoft Corporation | Controlling interference in shared memory systems using parallelism-aware batch scheduling |
| JP5347451B2 (ja) * | 2008-11-26 | 2013-11-20 | 富士通株式会社 | マルチプロセッサシステム、競合回避プログラム及び競合回避方法 |
-
2010
- 2010-06-08 US US12/795,871 patent/US8453150B2/en active Active
-
2011
- 2011-05-31 EP EP11726553.8A patent/EP2580669B1/en active Active
- 2011-05-31 CN CN201180028331.0A patent/CN102939596B/zh active Active
- 2011-05-31 KR KR1020127033892A patent/KR101688983B1/ko active Active
- 2011-05-31 JP JP2013514215A patent/JP5752242B2/ja active Active
- 2011-05-31 WO PCT/US2011/038526 patent/WO2011156175A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN101145113A (zh) * | 2007-09-10 | 2008-03-19 | 中兴通讯股份有限公司 | 一种多线程访问间接寄存器的调度方法 |
| CN101739293A (zh) * | 2009-12-24 | 2010-06-16 | 航天恒星科技有限公司 | 一种基于多线程的卫星数据产品生产任务并行调度方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2013528305A (ja) | 2013-07-08 |
| KR20130116166A (ko) | 2013-10-23 |
| JP5752242B2 (ja) | 2015-07-22 |
| EP2580669A1 (en) | 2013-04-17 |
| KR101688983B1 (ko) | 2016-12-22 |
| WO2011156175A1 (en) | 2011-12-15 |
| CN102939596A (zh) | 2013-02-20 |
| US20110302586A1 (en) | 2011-12-08 |
| US8453150B2 (en) | 2013-05-28 |
| EP2580669B1 (en) | 2018-07-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102939596B (zh) | 用于多核处理器的多线程应用识别存储器调度方案 | |
| US9372526B2 (en) | Managing a power state of a processor | |
| CN112204523B (zh) | 多内核波前调度程序 | |
| US9753771B2 (en) | System-on-chip including multi-core processor and thread scheduling method thereof | |
| JP6755935B2 (ja) | 共有メモリコントローラおよびそれを使用する方法 | |
| KR102774240B1 (ko) | 동적 뱅크-별 및 모든-뱅크 리프레시 | |
| US8819686B2 (en) | Scheduling threads on different processor cores based on memory temperature | |
| CN102725734B (zh) | 基于隔离的线程批调度方法 | |
| CN102473109B (zh) | 利用批调度的线程调度方法及装置 | |
| US20110050713A1 (en) | Hardware-Based Scheduling of GPU Work | |
| JP5773065B2 (ja) | スケジューリングプログラム、マルチコアプロセッサシステム、およびスケジューリング方法 | |
| US20190065243A1 (en) | Dynamic memory power capping with criticality awareness | |
| US10019283B2 (en) | Predicting a context portion to move between a context buffer and registers based on context portions previously used by at least one other thread | |
| US10191868B2 (en) | Priority framework for a computing device | |
| CN103150216B (zh) | 一种SoC集成的多端口DDR2/3调度器及调度方法 | |
| US8799912B2 (en) | Application selection of memory request scheduling | |
| CN102521049A (zh) | 多核间内存调度方法 | |
| US10528388B1 (en) | Data flow control in a parallel processing system | |
| CN115129369A (zh) | 命令分发方法、命令分发器、芯片以及电子设备 | |
| CN113360192A (zh) | 热缓存识别方法、装置、存储介质及电子设备 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| C06 | Publication | ||
| PB01 | Publication | ||
| C10 | Entry into substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| C14 | Grant of patent or utility model | ||
| GR01 | Patent grant |