KR101688983B1 - 멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 - Google Patents
멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 Download PDFInfo
- Publication number
- KR101688983B1 KR101688983B1 KR1020127033892A KR20127033892A KR101688983B1 KR 101688983 B1 KR101688983 B1 KR 101688983B1 KR 1020127033892 A KR1020127033892 A KR 1020127033892A KR 20127033892 A KR20127033892 A KR 20127033892A KR 101688983 B1 KR101688983 B1 KR 101688983B1
- Authority
- KR
- South Korea
- Prior art keywords
- group
- memory
- thread
- threads
- processors
- 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
- 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 |
|---|---|
| KR20130116166A KR20130116166A (ko) | 2013-10-23 |
| KR101688983B1 true KR101688983B1 (ko) | 2016-12-22 |
Family
ID=44358387
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020127033892A Active KR101688983B1 (ko) | 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 (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007128168A1 (en) | 2006-05-10 | 2007-11-15 | Intel Corporation | Thread scheduling on multiprocessor systems |
Family Cites Families (8)
| 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 | クゥアルコム・インコーポレイテッド | マルチプロセッサのアプリケーションサポートのためのシステムおよび方法 |
| US9588810B2 (en) | 2007-08-08 | 2017-03-07 | Microsoft Technology Licensing, Llc | Parallelism-aware memory request scheduling in shared memory controllers |
| CN100530111C (zh) * | 2007-09-10 | 2009-08-19 | 中兴通讯股份有限公司 | 一种多线程访问间接寄存器的调度方法 |
| 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 | 富士通株式会社 | マルチプロセッサシステム、競合回避プログラム及び競合回避方法 |
| CN101739293B (zh) * | 2009-12-24 | 2012-09-26 | 航天恒星科技有限公司 | 一种基于多线程的卫星数据产品生产任务并行调度方法 |
-
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 (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007128168A1 (en) | 2006-05-10 | 2007-11-15 | Intel Corporation | Thread scheduling on multiprocessor systems |
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 |
| CN102939596B (zh) | 2016-03-23 |
| 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 |
|---|---|---|
| KR101688983B1 (ko) | 멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 | |
| US8775762B2 (en) | Method and apparatus for batching memory requests | |
| KR102774240B1 (ko) | 동적 뱅크-별 및 모든-뱅크 리프레시 | |
| US9753771B2 (en) | System-on-chip including multi-core processor and thread scheduling method thereof | |
| Ausavarungnirun et al. | Staged memory scheduling: Achieving high performance and scalability in heterogeneous systems | |
| US11562214B2 (en) | Methods for improving AI engine MAC utilization | |
| CN108549574B (zh) | 线程调度管理方法、装置、计算机设备和存储介质 | |
| JP7554795B2 (ja) | 複数の計算コア上のデータドリブンスケジューラ | |
| US9256369B2 (en) | Programmable memory controller | |
| Kim et al. | MViD: Sparse matrix-vector multiplication in mobile dram for accelerating recurrent neural networks | |
| CN107851040A (zh) | 用于使用高速缓存需求监视在异构处理器簇架构中调度任务的系统和方法 | |
| 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 | |
| US10073783B2 (en) | Dual mode local data store | |
| JP6659724B2 (ja) | 並列プロセッサカーネルのディスパッチサイズのコンカレンシーファクタを決定するシステム及び方法 | |
| Li et al. | Inter-core locality aware memory scheduling | |
| US11003495B2 (en) | Dynamic access of task queues in a parallel processing system | |
| Lee et al. | A High-Performance Scheduling Algorithm for Mode Transition in PIM | |
| CN120973523A (zh) | 负载均衡方法及装置 | |
| Wan et al. | Rabbitail: A Tail Latency-Aware Scheduler for Deep Learning Recommendation Systems with Hierarchical Embedding Storage |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20121226 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| A302 | Request for accelerated examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20160519 Comment text: Request for Examination of Application |
|
| PA0302 | Request for accelerated examination |
Patent event date: 20160519 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20160616 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20160923 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20161216 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20161219 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20201117 Start annual number: 5 End annual number: 5 |
|
| PR1001 | Payment of annual fee |
Payment date: 20211118 Start annual number: 6 End annual number: 6 |
|
| PR1001 | Payment of annual fee |
Payment date: 20221213 Start annual number: 7 End annual number: 7 |