JP7434925B2 - 情報処理装置、情報処理方法およびプログラム - Google Patents
情報処理装置、情報処理方法およびプログラム Download PDFInfo
- Publication number
- JP7434925B2 JP7434925B2 JP2020009086A JP2020009086A JP7434925B2 JP 7434925 B2 JP7434925 B2 JP 7434925B2 JP 2020009086 A JP2020009086 A JP 2020009086A JP 2020009086 A JP2020009086 A JP 2020009086A JP 7434925 B2 JP7434925 B2 JP 7434925B2
- Authority
- JP
- Japan
- Prior art keywords
- processing unit
- information
- processing
- storage area
- unit
- 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
- 230000010365 information processing Effects 0.000 title claims description 36
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000012545 processing Methods 0.000 claims description 172
- 238000000034 method Methods 0.000 claims description 91
- 230000006854 communication Effects 0.000 description 46
- 238000004891 communication Methods 0.000 description 45
- 238000012546 transfer Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000001151 other effect Effects 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
Description
図1は、本発明の一実施形態に係る情報処理装置の基本的構成例を示すブロック図である。図1に示す情報処理装置10は、サーバ、パーソナルコンピュータ、タブレット端末等のコンピュータ、あるいはそのコンピュータと周辺装置とから構成することができる。また、情報処理装置10は、情報処理装置10を構成するコンピュータ(あるいはコンピュータと周辺装置)が有する1または複数のCPU(中央処理装置)、主記憶装置、補助記憶装置等の記憶装置、入出力装置、通信装置等のハードウェアと、1または複数のCPUが実行するプログラム等のソフトウェアとの組み合わせで構成される機能的構成として、処理ユニット(処理単位)20と処理ユニット21を有する。処理ユニット20と処理ユニット21は1つの処理を分散して並列して処理する機能的構成であり、例えば、分散並列プログラムの場合のプロセスとそのプロセスを実行するハードウェアとの組み合わせ、共有並列プログラムの場合のスレッド(あるいはタスク(以下省略))とそのスレッドを実行するハードウェアとの組み合わせ等に対応する。本実施形態において、情報処理装置10は、複数の処理ユニット20および21を並列して処理する装置である。なお、情報処理装置10は、3以上の複数の処理ユニットを含んでいてもよい。
次に、図2および図3を参照して、本発明の第1実施形態について説明する。図2は、本発明の第1実施形態に係る情報処理装置の構成例をノード1-1として示すブロック図である。ここで、ノードとは、通信ネットワークを構成するコンピュータ、端末、通信装置等の構成要素を論理的(あるいは機能的)に表現したものである。この場合、図2に示す複数のノード1-1は、ノード間インタコネクト1-7で接続されたクラスタシステム100を構成している。また、図3は、図2に示す各ノード1-1の動作例を示すフローチャートである。
次に、図4および図5を参照して、本発明の第2実施形態について説明する。図4は、本発明の第2実施形態に係る情報処理装置の構成例をノード1-1として示すブロック図である。また、図5は、図4に示すノード1-1の動作例を示すフローチャートである。
上述したように、第1実施形態および第2実施形態では、分散並列プログラム(MPI(Message Passing Interface;メッセージ パッシング インターフェース)プログラム等)、あるいは、共有並列プログラム(OpenMP(Open MultiProcessing)プログラム等)の実行において、分散並列プログラムの場合はプロセス間通信処理中に通信待合せが発生した場合、共有並列プログラムの場合はスレッド(あるいはタスク)間の同期待合せが発生した場合、さらに、それら通信待合せ、あるいは、同期待合せが一定時間以上継続した事を契機として、通信相手プロセス、あるいは、同期待合せ対象スレッドのプロファイル情報を採取する。この構成によれば、情報採取用の追加処理コードよる影響(実行命令数の増加、メモリアクセスの増加、分岐予測の成功率の変動、キャッシュメモリのヒット率およびミス率の挙動の変動)が無く、したがって、ユーザプログラムの挙動を正確に表現するプロファイル情報を採取することが出来る。また、情報採取用に追加資源(CPUコア、メモリなど)が不要であり、したがって、ユーザプログラムの実行を妨げない。また、通信待合わせ、あるいは、同期待合せの要因となる処理(すなわち、通信相手プロセスの処理内容、あるいは、同期待ちスレッドの処理内容)について、ピンポイントで情報を採取することができる。また、通信待合せ、あるいは、同期待合せの処理中に情報採取を行うため、ユーザプログラム実行性能に影響を与えない。
図7は、本発明の一実施形態による最小構成の情報処理装置の処理フローを示す図である。
情報処理装置10は、複数の処理ユニット(処理単位)を並列して処理する装置であって、図6に示すように、処理ユニット20は、動作情報記憶部20-1と、情報取得部20-4とを含む。
動作情報記憶部20-1は、他の処理単位が読み出し可能な記憶領域に自己の処理単位の動作状態に係る情報(以下、動作情報)を記憶する(ステップS7-1)。
情報取得部20-4は、他の処理単位で所定の条件が成立するまでに所定の待ち合わせ時間が発生した場合に、その待ち合わせ時間の開始時と終了時に記憶領域から他の処理単位の動作情報を読み出し、読み出した動作情報に応じた情報を所定の記憶部に記憶する(ステップS7-2)。
1-2、2-1 プロセス
1-3 CPUコア
1-4 実行カウンタおよび性能カウンタ群
1-5、2-3 プロセスメモリ
1-6 共有メモリ
1-7 ノード間インタコネクト
2-2 スレッド
10 情報処理装置
20、21 処理ユニット(処理単位)
20-1、21-1 動作情報記憶部
20-2、21-2 記憶領域
20-3、21-3 動作情報
20-4、21-4 情報取得部
20-5、21-5 記憶部
Claims (7)
- 複数の処理単位を並列して処理する装置であって、
前記複数の処理単位のうちの自己の処理単位が、
他の処理単位が読み出し可能である前記自己の処理単位の記憶領域に前記自己の処理単位の動作状態に係る情報(以下、動作情報)を記憶する動作情報記憶部と、
前記自己の処理単位と前記他の処理単位との間で所定の条件が成立するまでに時間差がある場合に、前記時間差の開始時と終了時とにおいて、前記他の処理単位の記憶領域から前記他の処理単位の前記動作情報を読み出し、前記動作情報のうちの少なくとも一部を所定の記憶部に記憶する情報取得部と、を含み、
前記自己の処理単位の前記記憶領域と前記他の処理単位の前記記憶領域とは、互いに異なる、情報処理装置。 - 前記記憶領域が、前記自己の処理単位における実行中のユーザルーチンおよび前記ユーザルーチンの呼び出し履歴を格納するスタック領域を含み、
前記情報取得部が、他の前記処理単位における前記実行中のユーザルーチンおよび前記ユーザルーチンの呼び出し履歴を含む前記動作情報を読み出す
請求項1に記載の情報処理装置。 - 前記動作情報が、前記処理単位の動作状態に応じて変化する数値情報を含み、
前記情報取得部は、前記開始時の前記数値情報と前記終了時の前記数値情報の差分を前記記憶部に記憶する
請求項1または2に記載の情報処理装置。 - 前記処理単位が、プロセスまたはスレッドである
請求項1から3のいずれか1項に記載の情報処理装置。 - 前記他の処理単位が、前記自己の処理単位が読み出し可能である前記他の処理単位の記憶領域に前記他の処理単位の動作情報を記憶する動作情報記憶部を備える、請求項1に記載の情報処理装置。
- 複数の処理単位を並列して処理する方法であって、
前記複数の処理単位のうちの自己の処理単位において、
他の処理単位が読み出し可能である前記自己の処理単位の記憶領域に前記自己の処理単位の動作状態に係る情報(以下、動作情報)を記憶するステップと、
前記自己の処理単位と前記他の処理単位との間で所定の条件が成立するまでに時間差がある場合に、前記時間差の開始時と終了時とにおいて、前記他の処理単位の記憶領域から前記他の処理単位の前記動作情報を読み出し、前記動作情報のうち少なくとも一部を所定の記憶部に記憶するステップと、を含み、
前記自己の処理単位の前記記憶領域と前記他の処理単位の前記記憶領域とは、互いに異なる、情報処理方法。 - 複数の処理単位を並列して処理する際に、
前記複数の処理単位のうちの自己の処理単位において、
他の処理単位が読み出し可能である前記自己の処理単位の記憶領域に前記自己の処理単位の動作状態に係る情報(以下、動作情報)を記憶するステップと、
前記自己の処理単位と前記他の処理単位との間で所定の条件が成立するまでに時間差がある場合に、前記時間差の開始時と終了時とにおいて、前記他の処理単位の記憶領域から前記他の処理単位の前記動作情報を読み出し、前記動作情報のうち少なくとも一部を所定の記憶部に記憶するステップと、をコンピュータに実行させ、
前記自己の処理単位の前記記憶領域と前記他の処理単位の前記記憶領域とは、互いに異なる、プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020009086A JP7434925B2 (ja) | 2020-01-23 | 2020-01-23 | 情報処理装置、情報処理方法およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020009086A JP7434925B2 (ja) | 2020-01-23 | 2020-01-23 | 情報処理装置、情報処理方法およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021117577A JP2021117577A (ja) | 2021-08-10 |
JP7434925B2 true JP7434925B2 (ja) | 2024-02-21 |
Family
ID=77174867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020009086A Active JP7434925B2 (ja) | 2020-01-23 | 2020-01-23 | 情報処理装置、情報処理方法およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7434925B2 (ja) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009059316A (ja) | 2007-09-04 | 2009-03-19 | Nec Corp | 測定装置、測定プログラム、および、測定方法 |
JP2009199121A (ja) | 2008-02-19 | 2009-09-03 | Nec Corp | 情報処理装置、通信情報採取方法、及び、プログラム |
JP2011175459A (ja) | 2010-02-24 | 2011-09-08 | Nec Corp | 性能情報採取装置、性能情報採取方法、及び性能情報採取プログラム |
JP2014092873A (ja) | 2012-11-01 | 2014-05-19 | Nec Corp | ハイブリッド並列処理システム、ハイブリッド並列処理方法およびコンピュータプログラム |
JP2019521413A (ja) | 2016-05-09 | 2019-07-25 | オラクル・インターナショナル・コーポレイション | メモリ使用量判断技術 |
-
2020
- 2020-01-23 JP JP2020009086A patent/JP7434925B2/ja active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009059316A (ja) | 2007-09-04 | 2009-03-19 | Nec Corp | 測定装置、測定プログラム、および、測定方法 |
JP2009199121A (ja) | 2008-02-19 | 2009-09-03 | Nec Corp | 情報処理装置、通信情報採取方法、及び、プログラム |
JP2011175459A (ja) | 2010-02-24 | 2011-09-08 | Nec Corp | 性能情報採取装置、性能情報採取方法、及び性能情報採取プログラム |
JP2014092873A (ja) | 2012-11-01 | 2014-05-19 | Nec Corp | ハイブリッド並列処理システム、ハイブリッド並列処理方法およびコンピュータプログラム |
JP2019521413A (ja) | 2016-05-09 | 2019-07-25 | オラクル・インターナショナル・コーポレイション | メモリ使用量判断技術 |
Also Published As
Publication number | Publication date |
---|---|
JP2021117577A (ja) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Cho et al. | Natjam: Design and evaluation of eviction policies for supporting priorities and deadlines in mapreduce clusters | |
EP1916601A2 (en) | Multiprocessor system | |
KR101400286B1 (ko) | 다중 프로세서 시스템에서 작업을 이동시키는 방법 및 장치 | |
WO2014090008A1 (zh) | 一种任务处理的方法和虚拟机 | |
US20060015542A1 (en) | Performance metric-based selection of one or more database server instances to perform database recovery | |
CN109983440A (zh) | 数据处理 | |
CN106293881B (zh) | 一种基于非一致性i/o访问构架的性能监控器及其监控方法 | |
CN110457261B (zh) | 数据访问方法、装置及服务器 | |
TW405090B (en) | Predictive cache loading by program address discontinuity history | |
CN101563674A (zh) | 对来自多处理器系统上的多线程程序的存储器访问进行管理的方法和系统 | |
Wang et al. | Hybrid pulling/pushing for i/o-efficient distributed and iterative graph computing | |
JP2012160014A (ja) | データ分析及び機械学習処理装置及び方法及びプログラム | |
Liu et al. | Optimizing shuffle in wide-area data analytics | |
Zhang et al. | Scalable adaptive NUMA-aware lock | |
US20170371707A1 (en) | Data analysis in storage system | |
US7921220B2 (en) | Reducing occurrences of two-phase commits in a multi-node computing system | |
CN105988856A (zh) | 解释器访存优化方法及装置 | |
JP7434925B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
JP7089530B2 (ja) | データ処理 | |
US9015717B2 (en) | Method for processing tasks in parallel and selecting a network for communication | |
CN110647357B (zh) | 同步多线程处理器 | |
Zhu et al. | A tool to detect performance problems of multi-threaded programs on numa systems | |
Ren et al. | Efficient shuffle management for DAG computing frameworks based on the FRQ model | |
CN111756802A (zh) | 一种数据流任务在numa平台上的调度方法及系统 | |
Kukreti et al. | CloneHadoop: Process Cloning to Reduce Hadoop's Long Tail |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221208 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230814 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230815 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231013 |
|
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: 20240109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240122 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7434925 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |