JP2013501298A - 異種のリソース上へのコンピュータスレッドのマッピング - Google Patents
異種のリソース上へのコンピュータスレッドのマッピング Download PDFInfo
- Publication number
- JP2013501298A JP2013501298A JP2012523620A JP2012523620A JP2013501298A JP 2013501298 A JP2013501298 A JP 2013501298A JP 2012523620 A JP2012523620 A JP 2012523620A JP 2012523620 A JP2012523620 A JP 2012523620A JP 2013501298 A JP2013501298 A JP 2013501298A
- Authority
- JP
- Japan
- Prior art keywords
- thread
- core
- processor cores
- assigning
- software application
- 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.)
- Granted
Links
- 238000013507 mapping Methods 0.000 title claims abstract description 34
- 238000000034 method Methods 0.000 claims abstract description 87
- 230000008569 process Effects 0.000 claims description 30
- 238000012545 processing Methods 0.000 claims description 17
- 230000008859 change Effects 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 10
- 230000007717 exclusion Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 239000003607 modifier Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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)
- Image Processing (AREA)
- Devices For Executing Special Programs (AREA)
- Multi Processors (AREA)
- Executing Machine-Instructions (AREA)
- Stored Programmes (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
本出願は、参照によりその開示の全体がこれにより組み込まれている、2009年9月11日に出願された、「MAPPING OF COMPUTER THREADS ONTO HETEROGENEOUS RESOURCES」という表題の米国特許出願第12/557,985号の優先権を主張する。
Claims (27)
- スレッドを複数の異種のプロセッサコアのうちの少なくとも1つの上にマッピングする方法であって、
前記スレッドを1つまたは複数の事前に定義された実行特性と関連付けることと、
前記1つまたは複数の事前に定義された実行特性に少なくとも一部基づいて、前記スレッドを前記複数の異種のプロセッサコアのうちの1つまたは複数に割り当てることとを含む方法。 - 前記それぞれの割り当てられた異種のプロセッサコアによって前記スレッドを実行することをさらに含む、請求項1に記載の方法。
- メタデータを前記スレッドと関連付けることをさらに含み、前記メタデータが、前記スレッドに関連するソフトウェアアプリケーションが動作に関してどのように構成されるかを識別する、請求項1に記載の方法。
- 前記スレッドに関連する前記メタデータが、前記スレッド内に埋め込まれているか、または前記スレッドから分離されている、請求項3に記載の方法。
- 前記スレッドが、前記スレッドに関連するソフトウェアアプリケーションが動作に関してどのように構成されるかを識別するメタデータを含む、請求項1に記載の方法。
- スレッドマッピングソフトウェアツールに前記メタデータを送信することをさらに含み、前記スレッドマッピングソフトウェアツールが、前記スレッドを前記異種のプロセッサコアのうちの所定の1つに割り当てるように構成されている
請求項3に記載の方法。 - 前記メタデータが、前記スレッドを実行できる前記異種のプロセッサコアのうちの1つまたは複数を識別する、請求項3に記載の方法。
- 前記スレッドを割り当てることが、前記メタデータに少なくとも一部基づいて、前記スレッドを前記異種のプロセッサコアのうちの1つまたは複数に割り当てることを含む、請求項3に記載の方法。
- 前記ソフトウェアアプリケーションが異なる段階において動作し、それぞれの段階が前記段階に関する特定のタスクの動作要件と関連付けられており、
前記スレッドが、前記異なる段階のうちの1つまたは複数を少なくとも一部識別する、事前に定義された実行特性を含む
請求項3に記載の方法。 - 前記スレッドを割り当てることが、前記スレッドを前記異種のプロセッサコアのうちの1つまたは複数に動的に割り当てることを含む、請求項1に記載の方法。
- 前記スレッドを割り当てることが、前記メタデータの知識なしに実行される、請求項10に記載の方法。
- 前記スレッドがプロセスまたはタスクを含む、請求項1に記載の方法。
- パフォーマンスカウントを生成するパフォーマンスカウンタを使用して、前記スレッドに関連する情報を収集することをさらに含み、
前記スレッドを割り当てることが、前記パフォーマンスカウント、および前記異種のプロセッサコアのうちの1つまたは複数に関連する前記パフォーマンスカウンタを使用して収集された情報に少なくとも一部基づいて、前記異種のプロセッサコアのうちの1つまたは複数を識別することを含む、
請求項1に記載の方法。 - パフォーマンスカウンタからのパフォーマンスカウントを前記スレッドと関連付けることをさらに含み、
前記スレッドを割り当てることが、前記事前に定義された実行特性、前記パフォーマンスカウンタからの前記パフォーマンスカウント、および前記異種のプロセッサコアのうちの1つまたは複数に関連する前記パフォーマンスカウンタを使用して収集された情報のうちの1つまたは複数に少なくとも一部基づいて、前記異種のプロセッサコアのうちの1つまたは複数を識別することを含む、
請求項1に記載の方法。 - 前記スレッドと、複数のスレッドのそれぞれを関連付けることをさらに含み、前記複数のスレッドのそれぞれが、前記事前に定義された実行特性のうちの1つまたは複数と関連付けられ、
前記複数のスレッドのそれぞれを前記異種のプロセッサコアのうちの1つまたは複数と関連付けることを含む
請求項1に記載の方法。 - ソフトウェアアプリケーションに関連するプロセスを1つまたは複数の異種のプロセッサコアの上にマッピングする方法であって、
前記プロセスを1つまたは複数の事前に定義された実行特性と関連付けることであって、それぞれの事前に定義された実行特性が、前記ソフトウェアアプリケーションの段階に対応する、関連付けることと、
前記ソフトウェアアプリケーションの現在の段階を識別することであって、前記現在の段階が、前記段階に関する特定のタスクの動作要件に関連している、識別することと、
前記ソフトウェアアプリケーションの前記現在の段階に少なくとも一部基づいて、前記プロセスを前記異種のプロセッサコアのうちの1つまたは複数に割り当てることとを含む方法。 - 前記それぞれの割り当てられた異種のプロセッサコアによって前記プロセスを実行することをさらに含む、請求項16に記載の方法。
- 前記1つまたは複数の事前に定義された実行特性が、前記ソフトウェアアプリケーションの前記現在の段階に少なくとも一部基づいて変化する、請求項16に記載の方法。
- 前記ソフトウェアアプリケーションのそれぞれの段階が、前記ソフトウェアアプリケーション内の所定のブレークポイント、または前記ソフトウェアアプリケーションが第1のタスクから第2のタスクに切り替わる所定のポイントのうちの1つもしくは複数によって識別される、請求項16に記載の方法。
- 前記ソフトウェアアプリケーションのそれぞれの段階の間に、前記段階に関する特定のタスクの前記動作要件に少なくとも一部基づいて、前記プロセスを前記異種のプロセッサコアのうちの1つまたは複数に割り当てることと、
前記それぞれの割り当てられた異種のプロセッサコアによって前記プロセスを実行することと
をさらに含む、請求項16に記載の方法。 - パフォーマンスカウンタからのパフォーマンスカウントを前記プロセスと関連付けることをさらに含み、
前記プロセスを割り当てることが、前記事前に定義された実行特性、前記異種のプロセッサコアのうちの1つまたは複数に関連するパフォーマンスカウンタからの前記パフォーマンスカウント、および前記パフォーマンスカウンタを使用して収集された情報のうちの1つまたは複数に少なくとも一部基づいて、前記プロセスを前記異種のプロセッサコアのうちの1つまたは複数に割り当てることを含む、
請求項16に記載の方法。 - 前記異種のプロセッサコアのうちの1つまたは複数による前記ソフトウェアアプリケーションの過去の実行に関する履歴メタデータに関連する実行ベースの最適化プロファイルを利用して、前記ソフトウェアアプリケーションを管理すること
をさらに含む、請求項16に記載の方法。 - 1つまたは複数の処理ユニットによって実行されたとき、コンピューティングプラットフォームが、
1つまたは複数の事前に定義された実行特性を有するスレッドを、前記1つまたは複数の事前に定義された実行特性に少なくとも一部基づいて、1つまたは複数の異種のプロセッサコアに割り当て、
前記スレッドを、実行のために前記スレッド割り当てられたそれぞれの異種のプロセッサコアに送信することを動作可能にする機械可読命令を格納した記憶媒体
を含む物品。 - 前記スレッドが、前記スレッドに関連するパフォーマンスカウントを含み、
前記スレッドを割り当てることが、1つまたは複数の事前に定義された実行特性、前記パフォーマンスカウント、および前記異種のプロセッサコアのうちの少なくとも1つに関連するパフォーマンスカウンタを使用して収集された情報に少なくとも一部基づいて、前記スレッドを前記異種のプロセッサコアのうちの1つまたは複数に割り当てることを含む、請求項23に記載の物品。 - 第1のプロセッサコアと、
第2のプロセッサコアと
を含むマルチコアプロセッサであって、
1つまたは複数の事前に定義された実行特性を有するスレッドを、前記1つまたは複数の事前に定義された実行特性に少なくとも一部基づいて、前記第1のプロセッサコアまたは前記第2のプロセッサコアに割り当て、前記スレッドを、実行のために前記スレッドに割り当てられた前記第1のプロセッサコアまたは前記第2のプロセッサコアに送信するように構成されたマルチコアプロセッサ。 - 前記マルチコアプロセッサが異種のハードウェアを含むように、前記第1のプロセッサコアが第1の機能を有し、前記第2のプロセッサコアが、前記第1の機能とは異なる第2の機能を有する、請求項25に記載のマルチコアプロセッサ。
- 前記第1の機能および前記第2の機能のそれぞれが、グラフィックスリソース、数学的計算リソース、命令セット、アクセラレータ、SSE、キャッシュサイズ、および/または分岐予測装置のうちの少なくとも1つに対応する、請求項26に記載のマルチコアプロセッサ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/557,985 | 2009-09-11 | ||
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 |
PCT/US2010/037498 WO2011031357A1 (en) | 2009-09-11 | 2010-06-04 | Mapping of computer threads onto heterogeneous resources |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2013501298A true JP2013501298A (ja) | 2013-01-10 |
JP2013501298A5 JP2013501298A5 (ja) | 2013-05-02 |
JP5487307B2 JP5487307B2 (ja) | 2014-05-07 |
Family
ID=43731608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012523620A Active JP5487307B2 (ja) | 2009-09-11 | 2010-06-04 | 異種のリソース上へのコンピュータスレッドのマッピング |
Country Status (6)
Country | Link |
---|---|
US (1) | US9569270B2 (ja) |
JP (1) | JP5487307B2 (ja) |
KR (1) | KR101361945B1 (ja) |
CN (1) | CN102483703B (ja) |
GB (1) | GB2485682B (ja) |
WO (1) | WO2011031357A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013532331A (ja) * | 2010-06-29 | 2013-08-15 | インテル・コーポレーション | 第1コア型と第2コア型を結合することにより電力性能効率を改善させる装置、方法及びシステム |
JP2021518955A (ja) * | 2018-04-20 | 2021-08-05 | オッポ広東移動通信有限公司Guangdong Oppo Mobile Telecommunications Corp., Ltd. | プロセッサコアのスケジューリング方法、装置、端末及び記憶媒体 |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
EP2856315A4 (en) | 2012-05-30 | 2016-02-17 | Intel Corp | TERMINATION REQUEST BETWEEN A HETEROGEN 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 | 삼성전자주식회사 | 동적 데이터 구성을 위한 방법 및 장치 |
EP2885708A4 (en) * | 2012-08-20 | 2016-11-09 | D Kevin Cameron | ASSIGNMENT OF TREATMENT RESOURCE |
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 |
US9842040B2 (en) * | 2013-06-18 | 2017-12-12 | 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 | コニカミノルタ株式会社 | 画像形成装置、特定処理実行方法、およびコンピュータプログラム |
CN105849670A (zh) * | 2014-11-17 | 2016-08-10 | 联发科技股份有限公司 | 能源效率的多重群集系统及其操作 |
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 |
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 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1131134A (ja) * | 1997-07-14 | 1999-02-02 | Toshiba Corp | コンピュータシステム及び同システムに適用するスケジューリング方法 |
JP2003006175A (ja) * | 2001-06-26 | 2003-01-10 | Hitachi Ltd | プロセス実行時のプログラム動作特性に基づくプロセススケジューリング方法及びこれを用いたプログラム及びデータ処理装置 |
US20070033592A1 (en) * | 2005-08-04 | 2007-02-08 | International Business Machines Corporation | Method, apparatus, and computer program product for adaptive process dispatch in a computer system having a plurality of processors |
JP2007328415A (ja) * | 2006-06-06 | 2007-12-20 | Univ Waseda | ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ |
Family Cites Families (46)
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 | 情報処理システム |
US5644742A (en) * | 1995-02-14 | 1997-07-01 | Hal Computer Systems, Inc. | Processor structure and method for a time-out checkpoint |
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) |
US6243788B1 (en) | 1998-06-17 | 2001-06-05 | International Business Machines Corporation | Cache architecture to enable accurate cache sensitivity |
US6434594B1 (en) | 1999-03-09 | 2002-08-13 | Talk2 Technology, Inc. | Virtual processing network enabler |
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 |
US7222343B2 (en) | 2003-01-16 | 2007-05-22 | International Business Machines Corporation | Dynamic allocation of computer resources based on thread type |
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 |
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 CN CN201080035177.5A patent/CN102483703B/zh active Active
- 2010-06-04 WO PCT/US2010/037498 patent/WO2011031357A1/en active Application Filing
- 2010-06-04 JP JP2012523620A patent/JP5487307B2/ja active Active
- 2010-06-04 KR KR1020127001252A patent/KR101361945B1/ko active IP Right Grant
- 2010-06-04 GB GB1121568.8A patent/GB2485682B/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1131134A (ja) * | 1997-07-14 | 1999-02-02 | Toshiba Corp | コンピュータシステム及び同システムに適用するスケジューリング方法 |
JP2003006175A (ja) * | 2001-06-26 | 2003-01-10 | Hitachi Ltd | プロセス実行時のプログラム動作特性に基づくプロセススケジューリング方法及びこれを用いたプログラム及びデータ処理装置 |
US20070033592A1 (en) * | 2005-08-04 | 2007-02-08 | International Business Machines Corporation | Method, apparatus, and computer program product for adaptive process dispatch in a computer system having a plurality of processors |
JP2007328415A (ja) * | 2006-06-06 | 2007-12-20 | Univ Waseda | ヘテロジニアス・マルチプロセッサシステムの制御方法及びマルチグレイン並列化コンパイラ |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013532331A (ja) * | 2010-06-29 | 2013-08-15 | インテル・コーポレーション | 第1コア型と第2コア型を結合することにより電力性能効率を改善させる装置、方法及びシステム |
JP2021518955A (ja) * | 2018-04-20 | 2021-08-05 | オッポ広東移動通信有限公司Guangdong Oppo Mobile Telecommunications Corp., Ltd. | プロセッサコアのスケジューリング方法、装置、端末及び記憶媒体 |
JP7100154B2 (ja) | 2018-04-20 | 2022-07-12 | オッポ広東移動通信有限公司 | プロセッサコアのスケジューリング方法、装置、端末及び記憶媒体 |
JP7100154B6 (ja) | 2018-04-20 | 2022-09-30 | オッポ広東移動通信有限公司 | プロセッサコアのスケジューリング方法、装置、端末及び記憶媒体 |
US11782756B2 (en) | 2018-04-20 | 2023-10-10 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method and apparatus for scheduling processor core, and storage medium |
Also Published As
Publication number | Publication date |
---|---|
GB201121568D0 (en) | 2012-01-25 |
US20110066828A1 (en) | 2011-03-17 |
GB2485682A (en) | 2012-05-23 |
GB2485682B (en) | 2016-09-28 |
KR20120025612A (ko) | 2012-03-15 |
WO2011031357A1 (en) | 2011-03-17 |
KR101361945B1 (ko) | 2014-02-12 |
CN102483703A (zh) | 2012-05-30 |
US9569270B2 (en) | 2017-02-14 |
CN102483703B (zh) | 2015-10-14 |
WO2011031357A8 (en) | 2012-03-22 |
JP5487307B2 (ja) | 2014-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5487307B2 (ja) | 異種のリソース上へのコンピュータスレッドのマッピング | |
JP5615361B2 (ja) | スレッドシフト:コアへのスレッド割振り | |
JP5487306B2 (ja) | スレッド移送におけるキャッシュのプレフィル | |
US10268600B2 (en) | System, apparatus and method for prefetch-aware replacement in a cache memory hierarchy of a processor | |
US10776270B2 (en) | Memory-efficient last level cache architecture | |
WO2017027111A1 (en) | Loading data using sub-thread information in a processor | |
US10108548B2 (en) | Processors and methods for cache sparing stores | |
US10705962B2 (en) | Supporting adaptive shared cache management | |
CN108694136B (zh) | 用于超越基于非局部性的指令处理的系统、设备和方法 | |
US20150160945A1 (en) | Allocation of load instruction(s) to a queue buffer in a processor system based on prediction of an instruction pipeline hazard | |
TWI469044B (zh) | 於指令存取前藉由運行標籤查找之隱藏指令快取未命中潛時的技術 | |
US8838915B2 (en) | Cache collaboration in tiled processor systems | |
US20190286567A1 (en) | System, Apparatus And Method For Adaptively Buffering Write Data In A Cache Memory | |
US11093401B2 (en) | Hazard prediction for a group of memory access instructions using a buffer associated with branch prediction | |
WO2018001528A1 (en) | Apparatus and methods to manage memory side cache eviction | |
US8484423B2 (en) | Method and apparatus for controlling cache using transaction flags | |
CN116821008A (zh) | 具有提高的高速缓存命中率的处理装置及其高速缓存设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130312 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130705 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20131007 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20140131 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140224 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5487307 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |