JP2017162522A - マルチコアシステムのインターラプト割り当て方法及び装置 - Google Patents
マルチコアシステムのインターラプト割り当て方法及び装置 Download PDFInfo
- Publication number
- JP2017162522A JP2017162522A JP2017125536A JP2017125536A JP2017162522A JP 2017162522 A JP2017162522 A JP 2017162522A JP 2017125536 A JP2017125536 A JP 2017125536A JP 2017125536 A JP2017125536 A JP 2017125536A JP 2017162522 A JP2017162522 A JP 2017162522A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- core
- control register
- register unit
- interrupt control
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/24—Handling requests for interconnection or transfer for access to input/output bus using interrupt
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Advance Control (AREA)
Abstract
Description
しかしながら、複数のコアを1つのシステムに統合させる場合、多くの問題点が発生する。インターラプトの処理問題は、その問題点のうちの一例である。単一コアシステムにおいてインターラプトが発生すれば、システムは、直ちにシステム内の唯一のコアにインターラプトを割り当てて行う。単一コアシステムは、システム内に1つのコアしか含まないので、選択の余地がない。
例えば、現在インターラプトを処理することができるコアの代わりに、現在インターラプトを処理することができない他のコアにインターラプトを割り当てる場合を考えることができる。この場合、不要なインターラプト遅延(interrupt latency)が発生し、これは、リアルタイムで結果を得なければならないリアルタイムシステムに致命的な結果をもたらすおそれがある。
第一の方式は、インターラプトの種類によって処理を担当するコアを異にする方式である。各インターラプトソース(interrupt source)で発生するインターラプトを各々それに対応するコアが処理することができる。この場合、インターラプト処理が分散する。したがって、システムは、1つのコアがすべてのインターラプトを処理する方式よりも、さらに効率的にインターラプトを処理することができる。
第二の方式は、特定のインターラプトが発生した時点でインターラプト制御器がすべてのコアに当該インターラプトをブロードキャストする方式である。その後、ソフトウェア的な方式で選択された適切なコアが当該インターラプトを受け入れて(accept)、インターラプトが割り当てられた(allocation)事実を他のコアに通知する方式でインターラプトが処理される。
前述した第二の方式、すなわちインターラプトをすべてのコアにブロードキャストする方式にも問題点がある。1つのインターラプトを処理するために、コアは、インターラプトを受け入れて(accept)、他のコアの重複実行を防止するためにインターラプトを受け入れた事実を通知するが、このような手続に起因して、多くの遅延(latency)が発生する。
実施形態を説明するにあたって、本発明の属する技術分野でよく知られており、本発明と直接的に関連がない技術内容については、説明を省略する。これは、不要な説明を省略することによって、本発明の要旨を不明にせず、さらに明確に伝達するためである。
同様の理由で、添付の図面において一部の構成要素は、誇張されたり、省略されたり、概略的に図示されたりしている。また、各構成要素のサイズは、実際サイズを反映するものではない。各図面において同一または対応する構成要素には、同一の参照番号を付与した。
以下、本明細書において、コア(core)は、インターラプトを自ら処理することができる単位構成部を言う。
本明細書において、インターラプト処理能力(capacity)は、特定コアが現在インターラプトを処理することができる状態であるか否かを示す指示子である。当該コアがインターラプトを処理する途中には、他のインターラプトを直ちに処理することができない。したがって、現在特定コアがインターラプトを処理していたら、インターラプト処理能力(capacity)は、インターラプト処理不能(disabled)状態に記録される。反対に、現在特定コアがインターラプトを処理していなければ、インターラプト処理能力(capacity)は、インターラプト処理可能(enabled)状態に記録される。
図1を参照すれば、インターラプト割り当て装置100は、インターラプト制御レジスタ部110及びインターラプト割り当て部120を含む。
高速インターラプトは、概念的には、通常のインターラプトと類似している。但し、コア内部では、通常のインターラプトに比べて高速インターラプトをさらに速い速度で処理する。通常のインターラプトのソースは、大部分、高速インターラプトにマッピングされることができる。すなわち、実施形態によってタイマーインターラプトを通常のインターラプトで処理するか、あるいは高速インターラプトで処理することもできる。
複数のインターラプトソース210のうちのいずれか1つのソースでインターラプト(INT0)が発生する。インターラプトソースでインターラプトが発生すれば、インターラプト割り当て装置100は、当該インターラプトを受信する。インターラプト割り当て装置100は、図1を参照して説明したような過程を通して適切なコアに当該インターラプトを動的に割り当てる。例えば、インターラプト割り当て装置100がインターラプト(INT0)を受信する当時に、コア1 132に対応するコア1レジスタ112がインターラプト処理可能状態に記録されたと仮定する。インターラプト割り当て部120は、インターラプト制御レジスタ部110を参照してコア1 132がインターラプトを処理することができる状態であることを認知することができる。これにより、インターラプト割り当て部120は、コア1 131にインターラプト(INT0)を割り当てる。コア1 131は、インターラプトを割り当てられれば、コア1レジスタ111をインターラプト処理不能(disabled)状態に変更する。その後、コア1 131は、インターラプトを処理する。インターラプト処理が完了すれば、コア1 131は、コア1レジスタ111をインターラプト処理可能(enabled)状態に変更する。
段階310で、インターラプト割り当て部120は、インターラプトを受信したかを判断する。インターラプト割り当て部120がインターラプトを受信しない場合、過程は、段階315に進行し、インターラプト割り当て部120は、インターラプト受信時まで待機する。インターラプト割り当て部120がインターラプトを受信した場合、過程は、段階320に進行する。
段階410で、インターラプト割り当て部120は、インターラプトを処理することができるコアにインターラプトを割り当てる。例えば、インターラプト割り当て部120がコアx、例えば、コア1 132にインターラプトを割り当てると仮定する。コアx、コアxレジスタは、互いに対応する任意のコア及びインターラプト制御レジスタである。以下では、コアxがコア1 132であり、コアxレジスタがコア1レジスタ112である場合を仮定して説明する。
110 インターラプト制御レジスタ部
111 コア0レジスタ
112 コア1レジスタ
113 コア2レジスタ
114 コア3レジスタ
120 インターラプト割り当て部
130 マルチコア
131 コア0
132 コア1
133 コア2
134 コア3
210 インターラプトソース
Claims (12)
- マルチコアシステムの各コアのインターラプト処理能力を記録するインターラプト制御レジスタ部を具備したインターラプト割り当て装置のインターラプト割り当て方法において、
インターラプトを受信する受信段階と、
前記各コアに対応する各インターラプト制御レジスタを確認することで、前記各コアの前記インターラプトの処理可能可否を確認する確認段階と、
前記各コアのうち任意のコアが、前記インターラプトの処理が可能であると判断されると、前記任意のコアに前記インターラプトを割り当てる割り当て段階と、
前記インターラプトを割り当てられたコアから、前記コアに対応するインターラプト制御レジスタをインターラプト処理不能状態に変更するための信号を受信する段階と、を含み、
前記確認段階は、
前記各コアのうち、コアが最終的にインターラプトを割り当てられた時点を基準として、最も以前にインターラプトを割り当てられたコアに対応する前記各インターラプトレジスタを確認することを特徴とする方法。 - 前記コアは、前記インターラプトの処理を完了した後、前記コアに対応するインターラプト制御レジスタをインターラプト処理可能状態に変更する信号を前記インターラプト制御レジスタ部に送信することを特徴とする請求項1に記載のインターラプト割り当て方法。
- 前記インターラプト制御レジスタ部は、前記コアの信号によって前記コアに対応するインターラプト制御レジスタを変更することを特徴とする請求項2に記載のインターラプト割り当て方法。
- 前記インターラプト制御レジスタ部は、各コアの複数のタイプのインターラプト処理能力を記録することを特徴とする請求項1に記載のインターラプト割り当て方法。
- 前記インターラプト制御レジスタ部は、各コアのプリエンプション/ノン−プリエンプション状態を記録することを特徴とする請求項4に記載のインターラプト割り当て方法。
- 前記インターラプト制御レジスタ部は、各コアのインターラプト処理能力を記録するレジスタを含む1つの物理的集合で構成されることを特徴とする請求項1に記載のインターラプト割り当て方法。
- マルチコアシステムのインターラプト割り当て装置において、
各コアのインターラプト処理能力を記録するインターラプト制御レジスタ部と、
前記各コアに対応する各インターラプト制御レジスタを確認することで、前記各コアのインターラプトの処理可能可否を確認し、前記各コアのうち任意のコアが、前記インターラプトの処理が可能であると判断されると、前記任意のコアに前記インターラプトを割り当てるインターラプト割り当て部とを含み、
前記インターラプト制御レジスタ部は、
前記インターラプトを割り当てられたコアから、前記コアに対応するインターラプト制御レジスタをインターラプト処理不能状態に変更するための信号を受信し、
前記インターラプト割り当て部は、
前記各コアのうち、コアが最終的にインターラプトを割り当てられた時点を基準として、最も以前にインターラプトを割り当てられたコアに対応する前記各インターラプトレジスタを確認することを特徴とするインターラプト割り当て装置。 - 前記コアは、前記インターラプトの処理を完了した後、前記コアに対応するインターラプト制御レジスタをインターラプト処理可能状態に変更する信号を前記インターラプト制御レジスタ部に送信することを特徴とする請求項7に記載のインターラプト割り当て装置。
- 前記インターラプト制御レジスタ部は、前記コアの信号によって前記コアに対応するインターラプト制御レジスタを変更することを特徴とする請求項8に記載のインターラプト割り当て装置。
- 前記インターラプト制御レジスタ部は、各コアの複数のタイプのインターラプト処理能力を記録することを特徴とする請求項7に記載のインターラプト割り当て装置。
- 前記インターラプト制御レジスタ部は、各コアのプリエンプション/ノン−プリエンプション状態を記録することを特徴とする請求項10に記載のインターラプト割り当て装置。
- 前記インターラプト制御レジスタ部は、各コアのインターラプト処理能力を記録するレジスタを含む1つの物理的集合で構成されることを特徴とする請求項7に記載のインターラプト割り当て装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2011-0084020 | 2011-08-23 | ||
KR1020110084020A KR20130021637A (ko) | 2011-08-23 | 2011-08-23 | 멀티 코어 시스템의 인터럽트 할당 방법 및 장치 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014527060A Division JP2014524626A (ja) | 2011-08-23 | 2012-08-10 | マルチコアシステムのインターラプト割り当て方法及び装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2017162522A true JP2017162522A (ja) | 2017-09-14 |
Family
ID=47746643
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014527060A Ceased JP2014524626A (ja) | 2011-08-23 | 2012-08-10 | マルチコアシステムのインターラプト割り当て方法及び装置 |
JP2017125536A Pending JP2017162522A (ja) | 2011-08-23 | 2017-06-27 | マルチコアシステムのインターラプト割り当て方法及び装置 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014527060A Ceased JP2014524626A (ja) | 2011-08-23 | 2012-08-10 | マルチコアシステムのインターラプト割り当て方法及び装置 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20140136745A1 (ja) |
EP (1) | EP2750045A4 (ja) |
JP (2) | JP2014524626A (ja) |
KR (1) | KR20130021637A (ja) |
CN (1) | CN103765399A (ja) |
WO (1) | WO2013027951A1 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105492989B (zh) * | 2013-09-30 | 2018-11-16 | 英特尔公司 | 用于管理对时钟进行的门控的装置、系统、方法和机器可读介质 |
CN107102966B (zh) * | 2016-02-22 | 2020-03-13 | 龙芯中科技术有限公司 | 多核处理器芯片、中断控制方法及控制器 |
KR102441045B1 (ko) * | 2020-12-14 | 2022-09-05 | 현대오토에버 주식회사 | 멀티 코어 구조의 전자 제어 유닛에서 수행되는 방법, 그리고 이를 구현하기 위한 장치 |
KR102419015B1 (ko) * | 2021-12-22 | 2022-07-08 | 한화시스템 주식회사 | Numa 기반 장비의 인터럽트 분배방법, 이를 구현하기 위한 프로그램이 저장된 기록매체 및 이를 구현하기 위해 매체에 저장된 컴퓨터 프로그램 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55154653A (en) * | 1979-05-22 | 1980-12-02 | Nec Corp | Interruption distributing system to multiprocessor |
JP2005004562A (ja) * | 2003-06-13 | 2005-01-06 | Canon Inc | マルチプロセッサシステム、マルチプロセッサシステムの制御方法、およびマルチプロセッサシステムの制御プログラム |
JP2005182752A (ja) * | 2003-12-23 | 2005-07-07 | Arm Ltd | データ処理装置および方法 |
US20110072180A1 (en) * | 2009-09-23 | 2011-03-24 | Ju-Pyung Lee | Interrupt on/off management apparatus and method for multi-core processor |
US20110087815A1 (en) * | 2009-10-13 | 2011-04-14 | Ezekiel John Joseph Kruglick | Interrupt Masking for Multi-Core Processors |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5905897A (en) * | 1997-03-20 | 1999-05-18 | Industrial Technology Research Institute | Method and apparatus for selecting a nonblocked interrupt request |
US7191349B2 (en) * | 2002-12-26 | 2007-03-13 | Intel Corporation | Mechanism for processor power state aware distribution of lowest priority interrupt |
KR20080048307A (ko) * | 2006-11-28 | 2008-06-02 | 삼성전자주식회사 | 멀티 프로세서 시스템의 인터럽트 전달 장치 및 방법 |
US8656145B2 (en) * | 2008-09-19 | 2014-02-18 | Qualcomm Incorporated | Methods and systems for allocating interrupts in a multithreaded processor |
-
2011
- 2011-08-23 KR KR1020110084020A patent/KR20130021637A/ko not_active Application Discontinuation
-
2012
- 2012-08-10 JP JP2014527060A patent/JP2014524626A/ja not_active Ceased
- 2012-08-10 EP EP12826403.3A patent/EP2750045A4/en not_active Withdrawn
- 2012-08-10 CN CN201280041196.8A patent/CN103765399A/zh active Pending
- 2012-08-10 WO PCT/KR2012/006369 patent/WO2013027951A1/ko active Application Filing
- 2012-08-10 US US14/234,265 patent/US20140136745A1/en not_active Abandoned
-
2017
- 2017-06-27 JP JP2017125536A patent/JP2017162522A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS55154653A (en) * | 1979-05-22 | 1980-12-02 | Nec Corp | Interruption distributing system to multiprocessor |
JP2005004562A (ja) * | 2003-06-13 | 2005-01-06 | Canon Inc | マルチプロセッサシステム、マルチプロセッサシステムの制御方法、およびマルチプロセッサシステムの制御プログラム |
JP2005182752A (ja) * | 2003-12-23 | 2005-07-07 | Arm Ltd | データ処理装置および方法 |
US20110072180A1 (en) * | 2009-09-23 | 2011-03-24 | Ju-Pyung Lee | Interrupt on/off management apparatus and method for multi-core processor |
US20110087815A1 (en) * | 2009-10-13 | 2011-04-14 | Ezekiel John Joseph Kruglick | Interrupt Masking for Multi-Core Processors |
Also Published As
Publication number | Publication date |
---|---|
KR20130021637A (ko) | 2013-03-06 |
US20140136745A1 (en) | 2014-05-15 |
CN103765399A (zh) | 2014-04-30 |
JP2014524626A (ja) | 2014-09-22 |
WO2013027951A1 (ko) | 2013-02-28 |
EP2750045A4 (en) | 2015-04-08 |
EP2750045A1 (en) | 2014-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9715415B2 (en) | Method of scheduling threads for execution on multiple processors within an information handling system | |
US10514955B2 (en) | Method and device for allocating core resources of a multi-core CPU | |
JP6294586B2 (ja) | 命令スレッドを組み合わせた実行の管理システムおよび管理方法 | |
US9639409B2 (en) | Device and method for communicating between cores | |
CN108647104B (zh) | 请求处理方法、服务器及计算机可读存储介质 | |
CN106569891B (zh) | 一种存储系统中任务调度执行的方法和装置 | |
JP5295228B2 (ja) | 複数のプロセッサを備えるシステム、ならびにその動作方法 | |
JP2017162522A (ja) | マルチコアシステムのインターラプト割り当て方法及び装置 | |
US10459773B2 (en) | PLD management method and PLD management system | |
JPWO2011148563A1 (ja) | 情報処理システム | |
WO2020121840A1 (ja) | 演算制御装置 | |
EP3516515B1 (en) | Scheduling of tasks in a multiprocessor device | |
WO2016202153A1 (zh) | 一种gpu资源的分配方法及系统 | |
US9753769B2 (en) | Apparatus and method for sharing function logic between functional units, and reconfigurable processor thereof | |
US9575760B2 (en) | Techniques for sharing priorities between streams of work and dynamic parallelism | |
CN116089049B (zh) | 基于异步并行i/o请求的进程同步调度方法、装置以及设备 | |
CN112486468A (zh) | 基于spark内核的任务执行方法、系统和计算机设备 | |
JP4789269B2 (ja) | ベクトル処理装置及びベクトル処理方法 | |
US9632834B2 (en) | Assigning priorities to computational work streams by mapping desired execution priorities to device priorities | |
WO2019188177A1 (ja) | 情報処理装置 | |
JP2007122337A (ja) | 演算装置 | |
JP2013041361A (ja) | リソース調停システム及び調停方法 | |
US8566829B1 (en) | Cooperative multi-level scheduler for virtual engines | |
JP2007233608A (ja) | 割込み制御装置及び割込み制御方法をコンピュータに実行させるためのプログラム。 | |
WO2009110084A1 (ja) | プロセス制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170627 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180326 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180626 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180730 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20181030 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190304 |