KR101688983B1 - 멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 - Google Patents

멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 Download PDF

Info

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
Application number
KR1020127033892A
Other languages
English (en)
Korean (ko)
Other versions
KR20130116166A (ko
Inventor
재웅 정
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
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 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20130116166A publication Critical patent/KR20130116166A/ko
Application granted granted Critical
Publication of KR101688983B1 publication Critical patent/KR101688983B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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/3009Thread control 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/48Program initiating; Program switching, e.g. by interrupt
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation 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/5016Allocation 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)
KR1020127033892A 2010-06-08 2011-05-31 멀티-코어 프로세서용 멀티스레드 애플리케이션-인지 메모리 스케줄링 기법 Active KR101688983B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 航天恒星科技有限公司 一种基于多线程的卫星数据产品生产任务并行调度方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
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