CN102483703B - 计算机线程至异构资源的映射 - Google Patents
计算机线程至异构资源的映射 Download PDFInfo
- Publication number
- CN102483703B CN102483703B CN201080035177.5A CN201080035177A CN102483703B CN 102483703 B CN102483703 B CN 102483703B CN 201080035177 A CN201080035177 A CN 201080035177A CN 102483703 B CN102483703 B CN 102483703B
- Authority
- CN
- China
- Prior art keywords
- thread
- core
- processor
- threads
- metadata
- 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
- 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/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5044—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
-
- 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/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
-
- 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
-
- 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
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
- Executing Machine-Instructions (AREA)
- Multi Processors (AREA)
- Image Processing (AREA)
- Devices For Executing Special Programs (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Stored Programmes (AREA)
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US12/557,985 US9569270B2 (en) | 2009-04-21 | 2009-09-11 | Mapping thread phases onto heterogeneous cores based on execution characteristics and cache line eviction counts |
| US12/557,985 | 2009-09-11 | ||
| PCT/US2010/037498 WO2011031357A1 (en) | 2009-09-11 | 2010-06-04 | Mapping of computer threads onto heterogeneous resources |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN102483703A CN102483703A (zh) | 2012-05-30 |
| CN102483703B true CN102483703B (zh) | 2015-10-14 |
Family
ID=43731608
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN201080035177.5A Active CN102483703B (zh) | 2009-09-11 | 2010-06-04 | 计算机线程至异构资源的映射 |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US9569270B2 (enExample) |
| JP (1) | JP5487307B2 (enExample) |
| KR (1) | KR101361945B1 (enExample) |
| CN (1) | CN102483703B (enExample) |
| GB (1) | GB2485682B (enExample) |
| WO (1) | WO2011031357A1 (enExample) |
Families Citing this family (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20110320766A1 (en) * | 2010-06-29 | 2011-12-29 | Youfeng Wu | Apparatus, method, and system for improving power, performance efficiency by coupling a first core type with a second core type |
| US8527970B1 (en) * | 2010-09-09 | 2013-09-03 | The Boeing Company | Methods and systems for mapping threads to processor cores |
| US8788871B2 (en) * | 2011-06-28 | 2014-07-22 | International Business Machines Corporation | Unified, workload-optimized, adaptive RAS for hybrid systems |
| US9069553B2 (en) * | 2011-09-06 | 2015-06-30 | Marvell World Trade Ltd. | Switching tasks between heterogeneous cores |
| WO2013177765A1 (en) | 2012-05-30 | 2013-12-05 | Intel Corporation | Runtime dispatching among heterogeneous group of processors |
| US20130339978A1 (en) * | 2012-06-13 | 2013-12-19 | Advanced Micro Devices, Inc. | Load balancing for heterogeneous systems |
| KR101893796B1 (ko) | 2012-08-16 | 2018-10-04 | 삼성전자주식회사 | 동적 데이터 구성을 위한 방법 및 장치 |
| CN104756078B (zh) * | 2012-08-20 | 2018-07-13 | 唐纳德·凯文·卡梅伦 | 处理资源分配的装置和方法 |
| CN103729248B (zh) * | 2012-10-16 | 2017-12-15 | 华为技术有限公司 | 一种基于缓存感知的确定待迁移任务的方法和装置 |
| GB2514956B (en) * | 2013-01-21 | 2015-04-01 | Imagination Tech Ltd | Allocating resources to threads based on speculation metric |
| US9619298B2 (en) | 2013-04-17 | 2017-04-11 | Empire Technology Development Llc | Scheduling computing tasks for multi-processor systems based on resource requirements |
| US9235395B2 (en) * | 2013-05-30 | 2016-01-12 | National Instruments Corporation | Graphical development and deployment of parallel floating-point math functionality on a system with heterogeneous hardware components |
| WO2014204437A2 (en) * | 2013-06-18 | 2014-12-24 | Empire Technology Development Llc | Tracking core-level instruction set capabilities in a chip multiprocessor |
| US9600346B2 (en) * | 2013-07-10 | 2017-03-21 | International Business Machines Corporation | Thread scheduling across heterogeneous processing elements with resource mapping |
| US9274967B2 (en) * | 2013-08-07 | 2016-03-01 | Nimble Storage, Inc. | FIFO cache simulation using a bloom filter ring |
| US9442696B1 (en) * | 2014-01-16 | 2016-09-13 | The Math Works, Inc. | Interactive partitioning and mapping of an application across multiple heterogeneous computational devices from a co-simulation design environment |
| US9910683B2 (en) * | 2014-03-28 | 2018-03-06 | Lenovo (Singapore) Pte. Ltd. | Dynamic application optimization |
| KR102197874B1 (ko) | 2014-09-01 | 2021-01-05 | 삼성전자주식회사 | 멀티-코어 프로세서를 포함하는 시스템 온 칩 및 그것의 쓰레드 스케줄링 방법 |
| US9424092B2 (en) * | 2014-09-26 | 2016-08-23 | Microsoft Technology Licensing, Llc | Heterogeneous thread scheduling |
| US9898348B2 (en) | 2014-10-22 | 2018-02-20 | International Business Machines Corporation | Resource mapping in multi-threaded central processor units |
| JP2016091137A (ja) * | 2014-10-31 | 2016-05-23 | コニカミノルタ株式会社 | 画像形成装置、特定処理実行方法、およびコンピュータプログラム |
| WO2016078556A1 (en) * | 2014-11-17 | 2016-05-26 | Mediatek Inc. | Energy efficient multi-cluster system and its operations |
| US10509677B2 (en) | 2015-09-30 | 2019-12-17 | Lenova (Singapore) Pte. Ltd. | Granular quality of service for computing resources |
| US10521271B2 (en) | 2017-04-01 | 2019-12-31 | Intel Corporation | Hybrid low power homogenous grapics processing units |
| US10628223B2 (en) * | 2017-08-22 | 2020-04-21 | Amrita Vishwa Vidyapeetham | Optimized allocation of tasks in heterogeneous computing systems |
| JP7100154B6 (ja) * | 2018-04-20 | 2022-09-30 | オッポ広東移動通信有限公司 | プロセッサコアのスケジューリング方法、装置、端末及び記憶媒体 |
| CN109918084B (zh) * | 2019-03-12 | 2022-03-15 | 浪潮通用软件有限公司 | 一种业务管理系统的数据映射方法 |
| US20230024130A1 (en) * | 2021-07-23 | 2023-01-26 | Advanced Micro Devices, Inc. | Workload aware virtual processing units |
| US20230205592A1 (en) * | 2021-12-23 | 2023-06-29 | Intel Corporation | Asymmetric tuning |
| CN119213784A (zh) | 2022-05-20 | 2024-12-27 | 三星电子株式会社 | 使用低功率处理器控制相机的光学图像稳定的装置和方法 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6434594B1 (en) * | 1999-03-09 | 2002-08-13 | Talk2 Technology, Inc. | Virtual processing network enabler |
| JP2004220608A (ja) * | 2003-01-16 | 2004-08-05 | Internatl Business Mach Corp <Ibm> | スレッド型に基づくコンピュータ・リソースの動的割り付け |
| CN101233489A (zh) * | 2005-08-04 | 2008-07-30 | 国际商业机器公司 | 具有多个处理器的计算机系统中的自适应进程分派 |
Family Cites Families (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0628323A (ja) | 1992-07-06 | 1994-02-04 | Nippon Telegr & Teleph Corp <Ntt> | プロセス実行制御方法 |
| EP0594871A1 (en) | 1992-10-09 | 1994-05-04 | Fujitsu Limited | Multi-media scheduling system |
| JPH0721045A (ja) | 1993-06-15 | 1995-01-24 | Sony Corp | 情報処理システム |
| US5659721A (en) | 1995-02-14 | 1997-08-19 | Hal Computer Systems, Inc. | Processor structure and method for checkpointing instructions to maintain precise state |
| JP3266029B2 (ja) | 1997-01-23 | 2002-03-18 | 日本電気株式会社 | マルチプロセッサシステムにおけるディスパッチング方式、ディスパッチング方法およびディスパッチングプログラムを記録した記録媒体 |
| US5968115A (en) | 1997-02-03 | 1999-10-19 | Complementary Systems, Inc. | Complementary concurrent cooperative multi-processing multi-tasking processing system (C3M2) |
| JPH1131134A (ja) | 1997-07-14 | 1999-02-02 | Toshiba Corp | コンピュータシステム及び同システムに適用するスケジューリング方法 |
| US6243788B1 (en) | 1998-06-17 | 2001-06-05 | International Business Machines Corporation | Cache architecture to enable accurate cache sensitivity |
| GB0015276D0 (en) | 2000-06-23 | 2000-08-16 | Smith Neale B | Coherence free cache |
| GB2372847B (en) | 2001-02-19 | 2004-12-29 | Imagination Tech Ltd | Control of priority and instruction rates on a multithreaded processor |
| US7233998B2 (en) | 2001-03-22 | 2007-06-19 | Sony Computer Entertainment Inc. | Computer architecture and software cells for broadband networks |
| JP2003006175A (ja) | 2001-06-26 | 2003-01-10 | Hitachi Ltd | プロセス実行時のプログラム動作特性に基づくプロセススケジューリング方法及びこれを用いたプログラム及びデータ処理装置 |
| JP3964821B2 (ja) | 2003-04-21 | 2007-08-22 | 株式会社東芝 | プロセッサ、キャッシュシステム及びキャッシュメモリ |
| US7093147B2 (en) | 2003-04-25 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Dynamically selecting processor cores for overall power efficiency |
| JP2005031771A (ja) | 2003-07-08 | 2005-02-03 | Hitachi Ltd | ジョブスケジューリング管理方法及びシステム並びにプログラム |
| US7353516B2 (en) | 2003-08-14 | 2008-04-01 | Nvidia Corporation | Data flow control for adaptive integrated circuitry |
| US7614056B1 (en) | 2003-09-12 | 2009-11-03 | Sun Microsystems, Inc. | Processor specific dispatching in a heterogeneous configuration |
| US7360218B2 (en) | 2003-09-25 | 2008-04-15 | International Business Machines Corporation | System and method for scheduling compatible threads in a simultaneous multi-threading processor using cycle per instruction value occurred during identified time interval |
| US7461376B2 (en) | 2003-11-18 | 2008-12-02 | Unisys Corporation | Dynamic resource management system and method for multiprocessor systems |
| US7360102B2 (en) | 2004-03-29 | 2008-04-15 | Sony Computer Entertainment Inc. | Methods and apparatus for achieving thermal management using processor manipulation |
| GB2415060B (en) | 2004-04-16 | 2007-02-14 | Imagination Tech Ltd | Dynamic load balancing |
| US7318125B2 (en) | 2004-05-20 | 2008-01-08 | International Business Machines Corporation | Runtime selective control of hardware prefetch mechanism |
| US20060037017A1 (en) | 2004-08-12 | 2006-02-16 | International Business Machines Corporation | System, apparatus and method of reducing adverse performance impact due to migration of processes from one CPU to another |
| US7437581B2 (en) | 2004-09-28 | 2008-10-14 | Intel Corporation | Method and apparatus for varying energy per instruction according to the amount of available parallelism |
| US7526661B2 (en) | 2004-12-02 | 2009-04-28 | Intel Corporation | Performance state-based thread management |
| US20060168571A1 (en) | 2005-01-27 | 2006-07-27 | International Business Machines Corporation | System and method for optimized task scheduling in a heterogeneous data processing system |
| JP4445410B2 (ja) | 2005-02-24 | 2010-04-07 | 株式会社ルネサステクノロジ | 情報処理装置 |
| US20070050605A1 (en) | 2005-08-29 | 2007-03-01 | Bran Ferren | Freeze-dried ghost pages |
| US7412353B2 (en) | 2005-09-28 | 2008-08-12 | Intel Corporation | Reliable computing with a many-core processor |
| JP2007108944A (ja) | 2005-10-12 | 2007-04-26 | Renesas Technology Corp | 半導体集積回路装置 |
| JP4523921B2 (ja) | 2006-02-24 | 2010-08-11 | 三菱電機株式会社 | 計算機リソース動的制御装置 |
| US7434002B1 (en) | 2006-04-24 | 2008-10-07 | Vmware, Inc. | Utilizing cache information to manage memory access and cache utilization |
| JP4936517B2 (ja) | 2006-06-06 | 2012-05-23 | 学校法人早稲田大学 | ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ |
| US20070294693A1 (en) * | 2006-06-16 | 2007-12-20 | Microsoft Corporation | Scheduling thread execution among a plurality of processors based on evaluation of memory access data |
| US8468532B2 (en) | 2006-06-21 | 2013-06-18 | International Business Machines Corporation | Adjusting CPU time allocated to next thread based on gathered data in heterogeneous processor system having plurality of different instruction set architectures |
| JP2008090546A (ja) | 2006-09-29 | 2008-04-17 | Toshiba Corp | マルチプロセッサシステム |
| JP4308241B2 (ja) | 2006-11-10 | 2009-08-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ジョブ実行方法、ジョブ実行システム及びジョブ実行プログラム |
| US8006077B2 (en) | 2007-03-29 | 2011-08-23 | Intel Corporation | Thread migration control based on prediction of migration overhead |
| US8230425B2 (en) | 2007-07-30 | 2012-07-24 | International Business Machines Corporation | Assigning tasks to processors in heterogeneous multiprocessors |
| US20090089792A1 (en) | 2007-09-27 | 2009-04-02 | Sun Microsystems, Inc. | Method and system for managing thermal asymmetries in a multi-core processor |
| US7930574B2 (en) | 2007-12-31 | 2011-04-19 | Intel Corporation | Thread migration to improve power efficiency in a parallel processing environment |
| US8219993B2 (en) | 2008-02-27 | 2012-07-10 | Oracle America, Inc. | Frequency scaling of processing unit based on aggregate thread CPI metric |
| US8615647B2 (en) | 2008-02-29 | 2013-12-24 | Intel Corporation | Migrating execution of thread between cores of different instruction set architecture in multi-core processor and transitioning each core to respective on / off power state |
| US7890298B2 (en) | 2008-06-12 | 2011-02-15 | Oracle America, Inc. | Managing the performance of a computer system |
| US8561073B2 (en) | 2008-09-19 | 2013-10-15 | Microsoft Corporation | Managing thread affinity on multi-core processors |
| US9189282B2 (en) * | 2009-04-21 | 2015-11-17 | Empire Technology Development Llc | Thread-to-core mapping based on thread deadline, thread demand, and hardware characteristics data collected by a performance counter |
| US8683476B2 (en) | 2009-06-30 | 2014-03-25 | Oracle America, Inc. | Method and system for event-based management of hardware resources using a power state of the hardware resources |
-
2009
- 2009-09-11 US US12/557,985 patent/US9569270B2/en active Active
-
2010
- 2010-06-04 WO PCT/US2010/037498 patent/WO2011031357A1/en not_active Ceased
- 2010-06-04 CN CN201080035177.5A patent/CN102483703B/zh active Active
- 2010-06-04 GB GB1121568.8A patent/GB2485682B/en active Active
- 2010-06-04 KR KR1020127001252A patent/KR101361945B1/ko active Active
- 2010-06-04 JP JP2012523620A patent/JP5487307B2/ja active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6434594B1 (en) * | 1999-03-09 | 2002-08-13 | Talk2 Technology, Inc. | Virtual processing network enabler |
| JP2004220608A (ja) * | 2003-01-16 | 2004-08-05 | Internatl Business Mach Corp <Ibm> | スレッド型に基づくコンピュータ・リソースの動的割り付け |
| CN101233489A (zh) * | 2005-08-04 | 2008-07-30 | 国际商业机器公司 | 具有多个处理器的计算机系统中的自适应进程分派 |
Also Published As
| Publication number | Publication date |
|---|---|
| GB2485682B (en) | 2016-09-28 |
| US20110066828A1 (en) | 2011-03-17 |
| JP2013501298A (ja) | 2013-01-10 |
| WO2011031357A8 (en) | 2012-03-22 |
| KR101361945B1 (ko) | 2014-02-12 |
| KR20120025612A (ko) | 2012-03-15 |
| CN102483703A (zh) | 2012-05-30 |
| WO2011031357A1 (en) | 2011-03-17 |
| GB201121568D0 (en) | 2012-01-25 |
| GB2485682A (en) | 2012-05-23 |
| US9569270B2 (en) | 2017-02-14 |
| JP5487307B2 (ja) | 2014-05-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN102483703B (zh) | 计算机线程至异构资源的映射 | |
| CN102473113B (zh) | 多核处理器和将线程分配至异构处理器核的方法 | |
| CN102473112B (zh) | 关于线程迁移的高速缓存预填充方法、产品与系统 | |
| TWI564719B (zh) | 具有多個資料預取器的處理器、所述處理器的操作方法及所述處理器操作的電腦程式產品 | |
| Mittal et al. | A survey of architectural approaches for data compression in cache and main memory systems | |
| CN100557570C (zh) | 多处理器系统 | |
| JP5805675B2 (ja) | ガーベッジコレクションに対するcpuサポート | |
| CN100501739C (zh) | 利用流预取历史来改进数据预取性能的方法和系统 | |
| TWI596479B (zh) | 具有資料預取器的處理器及其運作方法 | |
| CN103635887B (zh) | 缓存数据的方法和存储系统 | |
| CN108710582A (zh) | 用于基于局部性的指令处理的选择性启用的系统、设备和方法 | |
| CN110806900A (zh) | 一种访存指令处理方法及处理器 | |
| Liu et al. | CostPI: Cost-effective performance isolation for shared NVMe SSDs | |
| US9880849B2 (en) | Allocation of load instruction(s) to a queue buffer in a processor system based on prediction of an instruction pipeline hazard | |
| CN119415048A (zh) | 数据写入方法、装置、设备和介质 | |
| CN114691549A (zh) | 一种文件写入方法、装置及计算设备 | |
| US8484423B2 (en) | Method and apparatus for controlling cache using transaction flags | |
| Jeong et al. | Transparently exploiting device-reserved memory for application performance in mobile systems | |
| CN116821008B (zh) | 具有提高的高速缓存命中率的处理装置及其高速缓存设备 | |
| CN118860298B (zh) | 缓存数据的管理方法和装置、存储介质及程序产品 | |
| KR101456373B1 (ko) | 캐시 장치를 관리하는 장치 및 방법 | |
| CN118535489A (zh) | 一种数据预存储方法、系统、存储介质以及加速器 | |
| CN120407435A (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 |