JP4967646B2 - Particle behavior analyzer, program - Google Patents
Particle behavior analyzer, program Download PDFInfo
- Publication number
- JP4967646B2 JP4967646B2 JP2006346978A JP2006346978A JP4967646B2 JP 4967646 B2 JP4967646 B2 JP 4967646B2 JP 2006346978 A JP2006346978 A JP 2006346978A JP 2006346978 A JP2006346978 A JP 2006346978A JP 4967646 B2 JP4967646 B2 JP 4967646B2
- Authority
- JP
- Japan
- Prior art keywords
- force
- particle
- calculation
- particles
- division
- 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.)
- Expired - Fee Related
Links
- 239000002245 particle Substances 0.000 title claims description 336
- 238000012545 processing Methods 0.000 claims description 157
- 238000004364 calculation method Methods 0.000 claims description 134
- 238000000034 method Methods 0.000 claims description 132
- 238000004458 analytical method Methods 0.000 claims description 131
- 230000003993 interaction Effects 0.000 claims description 129
- 239000011159 matrix material Substances 0.000 claims description 127
- 238000004891 communication Methods 0.000 claims description 29
- 239000000126 substance Substances 0.000 claims description 6
- 230000006399 behavior Effects 0.000 description 135
- 230000006870 function Effects 0.000 description 31
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 17
- 230000006872 improvement Effects 0.000 description 16
- 230000009881 electrostatic interaction Effects 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 9
- 230000007246 mechanism Effects 0.000 description 9
- 108091008695 photoreceptors Proteins 0.000 description 8
- 238000011161 development Methods 0.000 description 7
- 230000018109 developmental process Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 7
- 238000004088 simulation Methods 0.000 description 7
- 238000001454 recorded image Methods 0.000 description 6
- 230000001105 regulatory effect Effects 0.000 description 6
- 230000002040 relaxant effect Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 230000033001 locomotion Effects 0.000 description 5
- 230000004044 response Effects 0.000 description 5
- 238000003756 stirring Methods 0.000 description 5
- 239000006247 magnetic powder Substances 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 239000000843 powder Substances 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 230000000052 comparative effect Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000011163 secondary particle Substances 0.000 description 3
- 230000002730 additional effect Effects 0.000 description 2
- 230000003542 behavioural effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 239000012212 insulator Substances 0.000 description 2
- 238000012482 interaction analysis Methods 0.000 description 2
- 230000007257 malfunction Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000704 physical effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000001994 activation Methods 0.000 description 1
- 238000013019 agitation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000011439 discrete element method Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000005288 electromagnetic effect Effects 0.000 description 1
- 230000005686 electrostatic field Effects 0.000 description 1
- 239000008187 granular material Substances 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000696 magnetic material Substances 0.000 description 1
- 230000005389 magnetism Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000000329 molecular dynamics simulation Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000001179 sorption measurement Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Cleaning In Electrography (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Dry Development In Electrophotography (AREA)
Description
本発明は、粒子挙動解析装置並びにプログラムに関する。より詳細には、たとえば、プリンタ装置、ファクシミリ装置、あるいはそれらの機能を有する複合機などの画像形成装置において使用される色材(粉体、現像剤)などにおける、複数の粒子が混合された状態での粒子の挙動をシミュレーションにより解析する仕組みに関する。 The present invention relates to a particle behavior analysis apparatus and a program. More specifically, for example, a state in which a plurality of particles are mixed in a color material (powder, developer) used in an image forming apparatus such as a printer device, a facsimile device, or a multifunction device having these functions. It is related with the structure which analyzes the behavior of the particle in the simulation by simulation.
たとえば、プリンタ装置、ファクシミリ装置、あるいはそれらの機能を有する複合機などの画像形成装置において、電子写真方式を利用する場合、一般的には、感光ドラムなどの光導電性絶縁体上に一様な静電荷を与え、様々な手段によりこの光導電性絶縁体上に光像を照射することによって静電潜像を形成し、次いで、形成した潜像を現像器を用いて磁性粉体を用いて現像可視化し、紙などの記録媒体にトナー粉像を転写した後に定着させ、印刷物を得る。 For example, when an electrophotographic system is used in an image forming apparatus such as a printer device, a facsimile device, or a multifunction device having these functions, it is generally uniform on a photoconductive insulator such as a photosensitive drum. An electrostatic latent image is formed by giving an electrostatic charge and irradiating a light image on this photoconductive insulator by various means, and then the formed latent image is formed with a magnetic powder using a developing device. Development is visualized, and the toner powder image is transferred to a recording medium such as paper and then fixed to obtain a printed matter.
このような電子写真法による画像形成装置においては、容器に収容されている磁性粉体の攪拌や磁性ローラへの搬送、磁性ローラへの吸着、記録画像に応じて帯電され潜像が形成されている感光体への飛翔などの振る舞いが記録画像の画質に影響を与える。そこで、この磁性粉体の挙動の解析が電子写真装置本体や現像装置の開発にとって重要となる。 In such an electrophotographic image forming apparatus, the magnetic powder contained in the container is stirred, conveyed to the magnetic roller, adsorbed to the magnetic roller, and charged according to the recorded image to form a latent image. The behavior such as flight to the existing photoconductor affects the quality of the recorded image. Therefore, analysis of the behavior of the magnetic powder is important for the development of the electrophotographic apparatus main body and the developing apparatus.
粉体や粒体などの粒子の挙動シミュレーションについては、個別要素法あるいは離散粒子法と呼ばれる方法が普及されている。しかしながら、個別要素法に基づいた粒子挙動計算アルゴリズムでは、概ね粒子数の2乗で解析負荷が増大するので、粒子数が多くなると、計算量が膨大になり、いくら計算機の性能が向上したとはいっても、実際の系と同等の粒子数での計算を実行することは困難な場合が多い。 Regarding behavioral simulation of particles such as powders and granules, a method called individual element method or discrete particle method is widely used. However, in the particle behavior calculation algorithm based on the discrete element method, the analysis load increases approximately by the square of the number of particles. Therefore, if the number of particles increases, the amount of calculation becomes enormous and the performance of the computer improves. However, it is often difficult to perform calculations with the same number of particles as the actual system.
そこで、従来の粒子挙動シミュレーション方法として、計算時間の短縮を目的として、プログラムがインストールされた電子計算機を複数台使用し、各プログラムの並列化動作による分散処理が提案されている(たとえば特許文献1を参照)。 Therefore, as a conventional particle behavior simulation method, for the purpose of shortening the calculation time, a plurality of electronic computers in which programs are installed are used, and distributed processing by parallel operation of each program is proposed (for example, Patent Document 1). See).
特許文献1に記載の仕組みでは、複数のプロセッサを有する並列計算機を用いてn次元空間における多数の粒子の運動をシミュレートする分子動力学計算装置が提案されており、隣接する領域の数が3^n−1(“^”はべき乗を示す;3のn乗引く1)よりも小さい数の局所的領域に空間分割することで、通信時間を削減し、全体としての計算処理の高速化を図っている。考え方としては、計算領域の空間を各並列プロセッサに分割する場合に、計算領域の空間をより球に近い多面体で分割することにより、境界近傍の粒子データを交換する転送相手の数を減らすことで、通信の起動回数を減らすようにしている。
In the mechanism described in
本発明は、粒子間相互作用を考慮する場合において、特許文献1に記載の仕組みとは異なるアプローチで、並列化処理の計算速度向上比を向上させることのできる仕組みを提供することを目的とする。
An object of the present invention is to provide a mechanism capable of improving the calculation speed improvement ratio of the parallel processing by an approach different from the mechanism described in
請求項1に記載の発明は、粒子を力マトリクスを使用した力分割法により分割し、それぞれの分割部分を各計算装置に割り当てる分割処理部と、それぞれの前記計算装置に設けられた、他の前記計算装置との間でデータ通信を行ないつつ、前記力分割法により割り当てられた前記分割部分について、粒子に作用する他の物質との間での相互作用力を考慮して前記粒子の挙動を解析するデータ処理部とを備え、分割処理部は、計算装置の数Mに対して、N^2<M<(N+1)^2となるように、拡張した力マトリックスを使用するように設定し、さらに、拡張した力マトリックスにおける(N+1)^2−M個の実際には存在しない計算装置の部分について、実体のある計算装置を代替装置として割り当てることを特徴とする粒子挙動解析装置である。
The invention according to
請求項2に記載の発明は、請求項1に記載の発明においてさらに、分割処理部は、計算装置の数Mが、N^2の関係を満たさず、かつ、N・(N+1)+1≦M≦(N+1)^2−1の関係を満たすときには、縦(N+1)・横(N+1)の力マトリクスを使用するように分割を行ない、さらに、実際には存在しない計算装置が担当するはずの計算部分に関しては、N+1番目の行に存在する、実体のある計算装置が代替装置として担当するように粒子の情報を振り分けることを特徴とする。 According to a second aspect of the present invention, in the first aspect of the present invention, the division processing unit is configured such that the number M of computing devices does not satisfy the relationship of N ^ 2 and N · (N + 1) + 1 ≦ M When the relationship of ≦ (N + 1) ^ 2-1 is satisfied, the division is performed so that the vertical (N + 1) / horizontal (N + 1) force matrix is used, and the calculation that should not be handled by a computing device that does not actually exist is performed. As for the portion, the particle information is distributed so that a substantial computing device existing in the (N + 1) th row is in charge as an alternative device.
請求項3に記載の発明は、請求項2に記載の発明においてさらに、分割処理部は、N+1番目の行に実体のある計算装置が複数存在する場合には、粒子の情報を均等に振り分けることを特徴とする。 According to a third aspect of the present invention, in the second aspect of the present invention, the division processing unit distributes the particle information evenly when there are a plurality of substantial calculation devices in the (N + 1) th row. It is characterized by.
請求項4に記載の発明は、粒子を力マトリクスを使用した力分割法により分割し、それぞれの分割部分を各計算装置に割り当てるに当たり、計算装置の数Mが、N^2の関係を満たさず、かつ、N・(N+1)+1≦M≦(N+1)^2−1の関係を満たすときには、縦(N+1)・横(N+1)の力マトリクスを使用するように分割を行ない、さらに、実際には存在しない計算装置が担当するはずの計算部分に関しては、N+1番目の行に存在する、実体のある計算装置が担当するように粒子の情報を振り分ける手順と、他の計算装置との間でデータ通信を行ないつつ、力分割法により割り当てられた分割部分について、粒子に作用する他の物質との間での相互作用力を考慮して粒子の挙動を解析する手順とを実行することを特徴とする粒子挙動解析用のプログラムである。
In the invention according to
請求項1に記載の発明によれば、領域分割法や粒子分割法ではなく力マトリックスを用いたアルゴリズムである力分割法を用いて解析することで、全計算装置間の通信量を低減させることができる。通信量を低減させると、多くの計算装置を使用したときのプログラムの並列化性能を向上させることができ、計算時間を大幅に短縮することができる。 According to the first aspect of the present invention, the amount of communication among all the computing devices is reduced by performing analysis using a force division method that is an algorithm using a force matrix instead of a region division method or a particle division method. Can do. Reducing the amount of communication can improve the parallelization performance of the program when many computing devices are used, and can greatly reduce the computation time.
加えて、力分割法を適用した粒子挙動解析における計算装置数MがN^2の関係を満たさなければならないという従来の制限を排除し、N^2<M<(N+1)^2のときには、縦(N+1)・横(N+1)の力マトリクスを使用した並列処理で粒子挙動解析を実行できる。N^2個の以外の計算装置数においても、力分割並列化法の適用による高速化が可能となるのである。その結果、計算速度の速度向上比は、N^2個の計算装置で並列処理したときより高くなる。 In addition, the conventional limitation that the number M of calculation devices in the particle behavior analysis to which the force splitting method is applied must satisfy the relationship of N ^ 2 is eliminated, and when N ^ 2 <M <(N + 1) ^ 2, Particle behavior analysis can be performed by parallel processing using a vertical (N + 1) and horizontal (N + 1) force matrix. Even in the number of computing devices other than N ^ 2, the speed can be increased by applying the force division parallelization method. As a result, the speed improvement ratio of the calculation speed is higher than when parallel processing is performed with N ^ 2 calculation devices.
また、付加的な効果として、縦n・横nの力マトリクスを使用するn^2個の計算装置で構成された並列計算システムの一部の計算装置が動作不良となった際にも、1ランク下の(n−1)^2個の計算装置に適合した縦(n−1)・横(n−1)の力マトリクスを使用した運用に切り替えるのではなく、縦n・横nの力マトリクスの使用を継続して、その時点で動作可能な計算装置を動作させる運用ができるので、計算性能低下を最小限に抑えた稼働が可能である。 Further, as an additional effect, even when some of the computing devices of the parallel computing system composed of n ^ 2 computing devices using a vertical n and horizontal n force matrix malfunction, Instead of switching to an operation using a vertical (n-1) / horizontal (n-1) force matrix that is compatible with (n-1) ^ 2 computing devices below the rank, the forces of vertical n and horizontal n Since the matrix can be continuously used and the computing device operable at that time can be operated, it is possible to operate with the minimum degradation in computing performance.
請求項2に記載の発明によれば、縦(N+1)・横(N+1)の力マトリクスに拡張する場合において、実際には力分割法を適用した粒子挙動解析が実現できない、N^2+1≦M≦N・(N+1)の範囲を排除することができる。 According to the second aspect of the present invention, in the case of extending to a vertical (N + 1) / horizontal (N + 1) force matrix, particle behavior analysis to which a force division method is actually applied cannot be realized. N ^ 2 + 1 ≦ M The range of ≦ N · (N + 1) can be excluded.
また、付加的な効果として、縦n・横nの力マトリクスを使用するn^2個の計算装置で構成された並列計算システムの一部の計算装置が動作不良となった際にも、その時点で動作可能な残りの計算装置数が(n−1)・n+1≦M≦n^2−1の関係を満たすときには、1ランク下の(n−1)^2個の計算装置に適合した縦(n−1)・横(n−1)の力マトリクスを使用した運用に切り替えるのではなく、縦n・横nの力マトリクスの使用を継続して、その時点で動作可能な全ての計算装置を動作させる運用ができるので、計算性能低下を最小限に抑えた稼働が可能である。 As an additional effect, even when some of the computing devices of the parallel computing system composed of n ^ 2 computing devices using the vertical n and horizontal n force matrix malfunction, When the number of remaining computing devices operable at the time satisfies the relationship of (n−1) · n + 1 ≦ M ≦ n ^ 2-1, the number of computing apparatuses adapted to (n−1) ^ 2 computing devices below one rank Instead of switching to the operation using the vertical (n-1) / horizontal (n-1) force matrix, all calculations that can be performed at that time are continued using the vertical n / horizontal n force matrix. Since the system can be operated to operate, it can be operated with minimal degradation in computing performance.
請求項3に記載の発明によれば、代替装置と他の計算装置との間での計算負荷のアンバランス(不均衡)を小さくすることができる。 According to the third aspect of the present invention, it is possible to reduce the unbalance (unbalance) of the calculation load between the alternative device and another calculation device.
請求項4に記載の発明によれば、並列化処理の計算速度向上比を向上させることのできる粒子挙動解析装置の仕組みをコンピュータを用いて実現できる。 According to the fourth aspect of the present invention, the mechanism of the particle behavior analysis apparatus capable of improving the calculation speed improvement ratio of the parallel processing can be realized using a computer.
以下、図面を参照して本発明の実施形態について詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
<現像装置の概要>
図1は、印刷装置(プリンタ)や複写装置(コピー機)などの画像形成装置に使用される現像装置100の一構成例を示す図である。
<Overview of development device>
FIG. 1 is a diagram illustrating a configuration example of a developing device 100 used in an image forming apparatus such as a printing apparatus (printer) or a copying apparatus (copier).
図1(A)に示すように、現像装置100は、感光体130に対向して配置されており、現像剤102を収納容器101の内部に充填している。収納容器101は、現像剤102を感光体130側に飛翔させるための開口部101aが形成されている。
As shown in FIG. 1A, the developing device 100 is disposed so as to face the
現像剤102は、図1(B)に示すように、それぞれ物性や粒径の異なるキャリア粒子102aとトナー粒子102b(たとえば黒色トナー粒子)とを含有して構成された2成分方式のものである。キャリア粒子102aとトナー粒子102bとの対によって、全体として磁性粉体が形成されるようにしている。すなわち、キャリア粒子102aは磁性体から構成され、マグネットに吸着するようになっている。一方、トナー粒子102bは非磁性トナーであって、所定の色を持つ粉体である。一般的には、キャリア粒子102aの粒径の方がトナー粒子102bの粒径よりも大きい。なお、トナー粒子102bとしては、磁性トナーを使用することも可能である。
As shown in FIG. 1B, the developer 102 is a two-component system configured to include
収納容器101内には、表面に現像剤102を担持する担持ロールの一例である現像ロール(マグロール、マグネットローラ、磁気搬送ローラとも言われる)140を、周面が開口部101aから少し突き出すように備えている。現像ロール140内には、その内周縁に沿って、所定間隔で所定数のマグネット142が配置されている。
Inside the
また、現像装置100は、現像ロール140の近傍に、高さ規制部材や層形成部材として機能する規制ブレード(トリマーバー)150を備えており、マグネット142による磁力線に沿ってできた現像剤102の穂立ちの高さを規制するようになっている。
Further, the developing device 100 is provided with a regulating blade (trimmer bar) 150 that functions as a height regulating member or a layer forming member in the vicinity of the developing
また、収納容器101内には、現像剤102を攪拌するとともに現像ロール140側に搬送する1対の攪拌搬送ロール160(それぞれを160a,160bとする)を備えている。一方の攪拌搬送ロール160aは、収納容器101内の奥の方に配置され、他方の攪拌搬送ロール160bは現像ロール140と対向して配置されている。攪拌搬送ロール160は、その回転動作によって、現像剤102を現像ロール140側に攪拌しながら搬送する。
Further, the
現像ロール140は、矢印X方向に回転される感光体130とともに、感光体130と対向する側のその表面の回転移動方向が、感光体130の移動方向Xと同じき(矢印Y方向)に回転される。なお、感光体130の移動方向Xと逆向きに回転駆動するようにしてもよい。
The developing
現像ロール140内にはマグネット142を内蔵している。現像ロール140は、現像剤102を攪拌搬送ロール160bから磁気力により吸着する。現像ロール140に吸着された現像剤102は、規制ブレード150により現像剤102の吸着量が規制される。すなわち、キャリア粒子102aおよびトナー粒子102bは、攪拌機能を持つ攪拌搬送ロール160により攪拌され摩擦帯電されつつ現像ロール140側に搬送され、規制ブレード150によって一定の高さで、現像ロール140の周縁に付着する。
A
トナー粒子102bは、キャリア粒子102aに静電力により互いに吸着されている。キャリア粒子102aは、現像ロール140に内蔵されたマグネット142からの磁場により磁気ブラシを構成する。トナー粒子102bはキャリア粒子102aとともに、感光体130に対向する部分まで搬送される。
The
現像ロール140は、感光体130に対向して設けられており、現像ロール140に吸着された現像剤102のうちトナー粒子102bは、帯電されており、感光体130に吸着される。このとき、感光体130の表面は、記録画像に応じて帯電されることで静電潜像が形成されており、トナー粒子102bは、感光体130に形成された静電潜像に応じて吸着される。
The developing
つまり、現像ロール140は、キャリア粒子102aを介して現像ロール140に担持されたトナー粒子102bを感光体130側に飛翔させ、感光体130の表面に形成された潜像を現像化するようになっている。現像処理後のキャリア粒子102aと、感光体130側に飛翔されなかったトナー粒子102bは、収納容器101内に回収される。
That is, the developing
ここで、図1(B)に示すように、感光体130の表面は、記録画像に応じて帯電されており、トナー粒子102bは、静電力により感光体130の表面に飛翔する。感光体130の表面には、飛翔したトナー粒子102bが付着し、記録画像に応じたトナー像が形成される。このとき、トナー粒子102bの感光体130への吸着のされ方によって、記録画像の画質が左右される。
Here, as shown in FIG. 1B, the surface of the
トナー粒子102bは、キャリア粒子102aにより感光体130に搬送されているので、トナー粒子102bの感光体130への吸着のされ方は、現像ロール140と感光体130との間の現像ギャップでのキャリア粒子102aおよびトナー粒子102bの挙動により決定される。このため、キャリア粒子102aおよびトナー粒子102bの挙動の解析が電子写真装置本体や現像装置100の開発にとって重要な要素となる。
Since the
<粒子挙動解析システム;基本>
図2は、本発明に係る粒子挙動解析装置の一構成例である粒子挙動解析システムの基本構成を示すブロック図である。基本構成の粒子挙動解析システム200は、それぞれ粒子挙動解析機能を有する複数台の粒子挙動解析装置202がネットワーク接続されて構成されている。
<Particle behavior analysis system; basics>
FIG. 2 is a block diagram showing a basic configuration of a particle behavior analysis system which is a configuration example of the particle behavior analysis device according to the present invention. The particle behavior analysis system 200 having a basic configuration is configured by connecting a plurality of particle behavior analysis devices 202 each having a particle behavior analysis function to a network.
各粒子挙動解析装置202は、主要の処理データを相互にネットワーク208を介して伝達し合い、粒子挙動解析処理を並列的に実行可能になっており、粒子挙動解析システム200としては、事実上の並列型計算装置(クラスタ計算機)として構成されている。ネットワーク208は、通信状態がルーティング機能を持つネットワーク管理装置208aで管理されるようになっている。
Each particle behavior analysis device 202 communicates main processing data to each other via a
各粒子挙動解析装置202は、一般の電子計算機と同様のもので構成されている。また、図示した例では、粒子挙動解析システム200を構成する各粒子挙動解析装置202のうちの1台が全体を統括する計算管理ノードとしての機能を持つ主粒子挙動解析装置202aとして機能するようになっており、この主粒子挙動解析装置202aに対して残りの粒子挙動解析装置202が、主粒子挙動解析装置202aにより制御される副粒子挙動解析装置202bとしてネットワーク接続されている。
Each particle behavior analysis device 202 is configured by the same as a general electronic computer. In the illustrated example, one of the particle behavior analysis devices 202 constituting the particle behavior analysis system 200 functions as a main particle
なお、図では便宜的に、ネットワーク管理装置208aから1本のネットワーク線を出し、そのネットワーク線上に主粒子挙動解析装置202aと副粒子挙動解析装置202bとを接続する態様で示しているが、実際には、ネットワーク管理装置208aに備えられる個別のポートに各粒子挙動解析装置202が接続され、各粒子挙動解析装置202間の通信は、このネットワーク管理装置208aを介してなされるようになっている。
In the figure, for convenience, one network line is drawn from the
主粒子挙動解析装置202aには、粒子挙動解析処理用の各種の操作を行なうためのキーボードやマウスなどの指示入力装置210と、処理結果をユーザに画像情報として提示する表示装置212とが接続されている。
The main particle
このような基本構成のシステム構成を採ることで、複数種類の多体粒子間相互作用がある系について粒子挙動解析処理を行なうに当たり、各粒子の磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力;壁などと粒子間の接触力や粒子間接触)などの各相互作用について、並列処理にて解析を実行する。なお、機械的相互作用は、たとえば、壁やその他の物体と粒子間の接触力や粒子間接触による接触力である。 By adopting such a basic system configuration, when performing particle behavior analysis on a system with multiple types of multi-particle interactions, each particle's magnetic interaction, electrostatic interaction, or mechanical interaction Analysis of each interaction such as action (contact force; contact force between particles and particles and contact between particles) is performed in parallel processing. The mechanical interaction is, for example, a contact force between a wall or other object and particles, or a contact force due to contact between particles.
たとえば、キャリア粒子102aについてはMaxwell方程式を基礎とした磁場解析法などを利用した磁気的な運動解析を行ない、またトナー粒子102bについては粒子要素法などを利用した純力学的な運動解析やクーロン力に着目した静電界解析を行ない、最終的には、各解析結果を組み合わせて、現像剤102の流動挙動を高精度で予測する。
For example, the
特に本実施形態では、各粒子挙動解析装置202において各相互作用の解析を行なう際、領域分割法(SD;Spatial Decomposition Method)や粒子分割法(PD;Particle Decomposition Method あるいはRD;Replicated Data Method)ではなく力分割法(力マトリックスを用いたアルゴリズム)を用いて解析することで、全プロセッサ(本実施形態の各粒子挙動解析装置202)間の通信量を低減させるようにしている。通信量を低減させることで、多プロセッサ使用時のプログラムの並列化性能を向上させ、計算時間を大幅に短縮するのである。 In particular, in the present embodiment, when each interaction analysis is performed in each particle behavior analysis apparatus 202, a region decomposition method (SD) or a particle decomposition method (PD: Particle Decomposition Method or RD: Replicated Data Method) is used. Instead, the amount of communication among all the processors (each particle behavior analysis device 202 of the present embodiment) is reduced by analyzing using a force division method (algorithm using a force matrix). By reducing the amount of communication, the parallelization performance of the program when using multiple processors is improved, and the calculation time is greatly shortened.
なお、図2に示した粒子挙動解析システム200の基本構成では、事実上の並列型計算装置(クラスタ計算機)の構成で示したが、これに限らず、図示を割愛するが、それぞれ粒子挙動解析機能を有する複数台の粒子挙動解析装置を第1ネットワークにてネットワーク接続されて並列型計算装置として構成されている複数の粒子挙動解析システムを、さらに、別の第2ネットワークで接続して構成されたものとしてもよい。 In addition, in the basic configuration of the particle behavior analysis system 200 shown in FIG. 2, the configuration of a de facto parallel computer (cluster computer) is shown. A plurality of particle behavior analysis devices having a function are connected by a network in a first network and a plurality of particle behavior analysis systems configured as a parallel computing device are further connected by another second network. It is also good.
この場合、各粒子挙動解析システムは、主要の処理データを相互に外部ネットワーク(第2ネットワーク)を介して伝達し合い、それぞれ対象の異なる粒子挙動解析処理を並列的に実行可能になり、このような変形例の粒子挙動解析システムとしては、事実上の並列型計算装置をネットワーク接続してなるグリッド型計算装置として構成される。 In this case, each particle behavior analysis system can transmit main processing data to each other via an external network (second network), and can execute different particle behavior analysis processing for different objects in parallel. The particle behavior analysis system of a modified example is configured as a grid-type computing device formed by connecting a virtual parallel computing device over a network.
たとえば、各粒子挙動解析システムにおいては、磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力)などの各相互作用の何れかに特化した解析処理を行ない、それぞれ個別の相互作用についての解析処理を並列して実行する。つまり、複数種類の相互作用を、それぞれ独立して同時に、別の粒子挙動解析システムを用いて解析する。 For example, in each particle behavior analysis system, analysis processing specialized in each interaction such as magnetic interaction, electrostatic interaction, or mechanical interaction (contact force) is performed, and each interaction is individually performed. The analysis process for is executed in parallel. That is, a plurality of types of interactions are analyzed independently and simultaneously using different particle behavior analysis systems.
あるいは、現像剤102を構成するキャリア粒子102aやトナー粒子102bの別に、磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力)などの各相互作用の解析処理を並列して実行する。たとえば、磁気力の影響度が大きいキャリア粒子102aについては特に磁気力に特化した粒子挙動解析処理を行ないつつ、磁気力および静電気力の双方の影響度が大きいトナー粒子102bについては特に磁気力および静電気力に特化した粒子挙動解析処理を行なうなど、粒子種ごとに、別の粒子挙動解析システムを用いて粒子挙動解析処理を行なってもよい。
Alternatively, analysis processing of each interaction such as magnetic interaction, electrostatic interaction, or mechanical interaction (contact force) is executed in parallel for the
各粒子挙動解析システムは、基本構成で説明したように、各相互作用の解析を行なう際、粒子分割法ではなく力分割法を用いて解析する。処理速度の改善効果を高めるべく、並列計算装置として構成されている粒子挙動解析システム同士での通信においても、通信量の少ない力分割並列化法を採用する。つまり、このような変形構成のシステム構成を採ることで、各粒子挙動解析システムは、それぞれ独立した粒子挙動解析処理を行なうことで、基本構成のシステム構成よりもさらに処理時間の短縮を図る。 As described in the basic configuration, each particle behavior analysis system uses force splitting instead of particle splitting when analyzing each interaction. In order to enhance the effect of improving the processing speed, a force-division parallelization method with a small communication amount is adopted even in communication between particle behavior analysis systems configured as parallel computing devices. That is, by adopting such a modified system configuration, each particle behavior analysis system performs an independent particle behavior analysis process, thereby further reducing the processing time compared to the system configuration of the basic configuration.
また、粒子間相互作用の計算負荷の程度に応じて、使用する粒子挙動解析システム(事実上の並列計算装置)を、その処理能力を基に選択してもよい。たとえば、異種環境(性能など)のシステムが混在する状況において、効率的に計算機リソースを用いて粒子挙動解析処理を行なう。 Further, the particle behavior analysis system to be used (de facto parallel computing device) may be selected based on the processing capability depending on the degree of calculation load of the interparticle interaction. For example, in a situation where systems of different environments (performance, etc.) coexist, the particle behavior analysis process is efficiently performed using computer resources.
<粒子挙動解析装置;機能ブロック>
図3は、各粒子挙動解析装置202の一構成例を示すブロック図である。ここでは、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aについて示している。図示のように、主粒子挙動解析装置202aは、指示入力装置210などを利用して処理対象データを取り込むデータ入力部220と、粒子挙動解析処理を行なうデータ処理部230と、処理結果を表示装置212などを利用してユーザに提示する情報提示部240とを備えている。データ入力部220と情報提示部240とは、主粒子挙動解析装置202aの計算管理ノードに相当する部分に設けられている。
<Particle behavior analyzer; functional block>
FIG. 3 is a block diagram illustrating a configuration example of each particle behavior analysis apparatus 202. Here, the main particle
データ入力部220は、指示入力装置210を構成するキーボードやマウスを介してユーザより入力されるコマンドやデータを受け付け、データ処理部230に渡す。
The
データ処理部230は、データ入力部220から入力されたデータに基づいて後述する粒子挙動解析処理を行なう。このデータ処理部230は、より詳細には、データ受付部232、数値演算処理部234、および出力データ処理部236を有している。副粒子挙動解析装置202bは、このデータ処理部230のみで構成すればよい。
The data processing unit 230 performs a particle behavior analysis process described later based on the data input from the
データ受付部232は、図示を割愛したデータ記憶部を具備しており、データ入力部220から入力されたデータをデータ記憶部に記憶し、数値計算時に必要なデータを数値演算処理部234に供給する。データ受付部232のデータ記憶部には、たとえば、解析の対象としている現像装置100の構成および現像剤102の物性値に関するデータなどが記憶される。
The
数値演算処理部234は、データ受付部232から供給されたデータに基づいて、粒子の一例である現像剤102(詳細にはキャリア粒子102aやトナー粒子102b)について、磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力)など、複数の相互作用を同時に考慮した粒子挙動を、力分割法を適用してシミュレーション処理にて解析する。数値演算処理部234は、その解析結果を出力データ処理部236に供給する。
Based on the data supplied from the
出力データ処理部236は、数値演算処理部234での計算結果を受け取り、数値演算処理部234での計算結果を表示データに変換し、表示装置212に供給する。表示装置212は、出力データ処理部236から供給された表示データに基づいた処理結果画像を表示する。実際には確認困難な現像剤102の挙動を視覚的に把握することができるように、現像剤102の挙動予測を可視化して表示装置212上に表示するのである。
The output
また、本実施形態の特徴部分として、主粒子挙動解析装置202aの計算管理ノードに相当する部分に、処理対象要素を力分割法により分割するに当たり、それぞれ計算装置で構成され力分割法による粒子挙動解析を行なう各計算システム(プロセッサとも称する;図1では粒子挙動解析装置202)に各分割部分を割り当てる分割処理部250を備えている。
In addition, as a characteristic part of the present embodiment, when the processing target element is divided into the parts corresponding to the calculation management node of the main particle
分割処理部250は、プロセッサ数Mに対して、N^2<M<(N+1)^2となるように、縦N・横Nの力マトリックスではなく、縦(N+1)・横(N+1)の拡張した力マトリックスを使用するように設定し、さらに、拡張した力マトリックスにおける(N+1)^2−M個の実際には存在しないプロセッサ部分については、実体のあるプロセッサを代替プロセッサ(代替装置)として割り当てる。
The
また、分割処理部250は、縦(N+1)・横(N+1)の力マトリクスに拡張する場合において、実際には力分割法を適用した粒子挙動解析が実現できない、N^2+1〜N・(N+1)の範囲を排除するべく、N^2の関係を満たさず、かつ、N・(N+1)+1〜(N+1)^2−1の関係を満たすときに限って、縦(N+1)・横(N+1)の力マトリクスを使用するように分割を行ない、さらに、実際には存在しないプロセッサが担当するはずの計算部分に関しては、N+1番目の行に存在する、実体のあるプロセッサが担当するように粒子の情報を振り分ける。
In addition, when the
分割処理部250におけるこれらの処理に関しては、後で詳しく説明する。
These processes in the
<粒子挙動解析装置;計算機構成>
図4は、各粒子挙動解析装置202の他の構成例を示すブロック図である。ここでは、パーソナルコンピュータなどの電子計算機を利用して、粒子挙動解析をソフトウェアを実行するマイクロプロセッサなどから構築されるより現実的なハードウェア構成を示している。
<Particle behavior analyzer; computer configuration>
FIG. 4 is a block diagram illustrating another configuration example of each particle behavior analysis apparatus 202. Here, a more realistic hardware configuration is shown that is constructed from a microprocessor that executes software for particle behavior analysis using an electronic computer such as a personal computer.
すなわち、本実施形態において、2種類以上の相互作用力を考慮して、力マトリクスを使用した力分割並列化アルゴリズムを用いて、粒子の挙動を解析する仕組みは、ハードウェア処理回路により構成することに限らず、その機能を実現するプログラムコードに基づき電子計算機(コンピュータ)を用いてソフトウェア的に実現することも可能である。 That is, in this embodiment, a mechanism for analyzing the behavior of particles using a force-division parallelization algorithm using a force matrix in consideration of two or more kinds of interaction forces is configured by a hardware processing circuit. However, the present invention is not limited to this, and can be realized in software using an electronic computer (computer) based on a program code that realizes the function.
よって、本発明に係る仕組みを、電子計算機(コンピュータ)を用いてソフトウェアで実現するために好適なプログラムあるいはこのプログラムを格納したコンピュータ読取可能な記憶媒体を発明として抽出することもできる。 Therefore, a program suitable for realizing the mechanism according to the present invention by software using an electronic computer (computer) or a computer-readable storage medium storing this program can be extracted as an invention.
電子計算機に、力分割並列化アルゴリズムを用いて2種類以上の相互作用力を考慮した粒子挙動解析処理機能をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ(組込マイコンなど)、あるいは、CPU(Central Processing Unit )、論理回路、記憶装置などの機能を1つのチップ上に搭載して所望のシステムを実現するSOC(System On a Chip:システムオンチップ)、または、各種のプログラムをインストールすることで各種の機能を実行することが可能な汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。 When a computer executes a particle behavior analysis function that takes into account two or more types of interaction forces using a force-division parallelization algorithm, the program that configures the software is built into dedicated hardware. System on a chip (SOC) that implements a desired system by mounting functions such as a built-in computer (such as an embedded microcomputer) or a CPU (Central Processing Unit), a logic circuit, and a storage device on one chip. System on chip) or a general-purpose personal computer capable of executing various functions by installing various programs is installed from a recording medium.
記録媒体は、コンピュータのハードウェア資源に備えられている読取装置に対して、プログラムの記述内容に応じて、磁気、光、電気などのエネルギの状態変化を引き起こして、それに対応する信号の形式で、読取装置にプログラムの記述内容を伝達できるものである。 The recording medium causes a state change of energy such as magnetism, light, electricity, etc. according to the description contents of the program to the reading device provided in the hardware resource of the computer, and in the form of a signal corresponding to the change. The program description can be transmitted to the reader.
たとえば、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク(フレキシブルディスクFDを含む)、光ディスク(CD−ROM(Compact Disc-Read Only Memory )、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MO(Magneto Optical Disk)を含む)、または半導体メモリなどよりなるパッケージメディア(可搬型の記憶媒体)により構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているROMやハードディスクなどで構成されてもよい。 For example, a magnetic disk (including a flexible disk FD), an optical disk (CD-ROM (Compact Disc-Read Only Memory)), a DVD on which a program is recorded, which is distributed to provide a program to a user separately from a computer. (Including Digital Versatile Disc), magneto-optical disk (including MO (Magneto Optical Disk)), or package media (portable storage medium) made of semiconductor memory, etc. It may be composed of a ROM, a hard disk, or the like in which a program is recorded that is provided to the user.
また、ソフトウェアを構成するプログラムは、記録媒体を用いずに、記録媒体を介して提供されることに限らず、有線あるいは無線などの通信網を介して提供されてもよい。 The program constituting the software is not limited to being provided via the recording medium without using the recording medium, and may be provided via a wired or wireless communication network.
たとえば、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、ハードウェア処理回路にて構成する場合と同様の効果は達成される。この場合、記憶媒体から読み出されたプログラムコード自体が力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理の機能を実現する。 For example, a storage medium in which a program code of software that realizes a particle behavior analysis processing function that considers multiple types of interaction forces using a force-division parallelization method is supplied to a system or apparatus, and the system or apparatus The same effect as the case where the computer (or CPU or MPU) is configured by the hardware processing circuit is also achieved by reading and executing the program code stored in the storage medium. In this case, the program code itself read from the storage medium realizes a particle behavior analysis process function that takes into account a plurality of types of interaction forces using a force-division parallelization method.
また、コンピュータが読み出したプログラムコードを実行することで、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理を行なう機能が実現されるだけでなく、プログラムコードの指示に基づき、コンピュータ上で稼働しているOS(Operating Systems ;基本ソフト)などが実際の処理の一部または全部を行ない、その処理により力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理を行なう機能が実現される場合であってもよい。 In addition, by executing the program code read by the computer, not only the function of performing the particle behavior analysis process considering the multiple types of interaction force using the force division parallelization method is realized, but also the program code instruction Based on the above, the OS (Operating Systems; basic software) running on the computer performs part or all of the actual processing, and considers multiple types of interaction forces using the force-division parallelization method. The function of performing the particle behavior analysis process may be realized.
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行ない、その処理によって粒子挙動解析処理を行なう機能が実現される場合であってもよい。 Further, after the program code read from the storage medium is written in a memory provided in a function expansion card inserted into the computer or a function expansion unit connected to the computer, the function expansion is performed based on the instruction of the program code. The CPU or the like provided in the card or the function expansion unit may perform part or all of the actual processing, and the function of performing the particle behavior analysis processing may be realized by the processing.
なお、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理を行なう機能を実現するプログラムコードを記述したファイルとしてプログラムが提供されるが、この場合、一括のプログラムファイルとして提供されることに限らず、コンピュータで構成されるシステムのハードウェア構成に応じて、個別のプログラムモジュールとして提供されてもよい。 Note that the program is provided as a file that describes the program code that implements the function of performing particle behavior analysis processing that takes into account multiple types of interaction forces using the force-division parallelization method. However, the program may be provided as an individual program module according to the hardware configuration of a system configured with a computer.
たとえば、コンピュータシステム900は、コントローラ部901と、ハードディスク装置、フレキシブルディスク(FD)ドライブ、あるいはCD−ROM(Compact Disk ROM)ドライブ、半導体メモリコントローラなどの、所定の記憶媒体からデータを読み出したり記録したりするための記録・読取制御部902とを有する。
For example, the computer system 900 reads and records data from a
コントローラ部901は、CPU(Central Processing Unit )912、読出専用の記憶部であるROM(Read Only Memory)913、随時書込みおよび読出しが可能であるとともに揮発性の記憶部の一例であるRAM(Random Access Memory)915、および不揮発性の記憶部の一例であるRAM(NVRAMと記述する)916を有している。
The
なお、上記において“揮発性の記憶部”とは、装置の電源がオフされた場合には、記憶内容を消滅してしまう形態の記憶部を意味する。一方、“不揮発性の記憶部”とは、装置のメイン電源がオフされた場合でも、記憶内容を保持し続ける形態の記憶部を意味する。記憶内容を保持し続けることができるものであればよく、半導体製のメモリ素子自体が不揮発性を有するものに限らず、バックアップ電源を備えることで、揮発性のメモリ素子を“不揮発性”を呈するように構成するものであってもよい。 In the above description, the “volatile storage unit” means a storage unit in which the stored contents are lost when the power of the apparatus is turned off. On the other hand, the “nonvolatile storage unit” means a storage unit in a form that keeps stored contents even when the main power supply of the apparatus is turned off. Any memory device can be used as long as it can retain the stored contents. The semiconductor memory device itself is not limited to a nonvolatile memory device, and a backup power supply is provided to make a volatile memory device “nonvolatile”. You may comprise as follows.
また、半導体製のメモリ素子により構成することに限らず、磁気ディスクや光ディスクなどの媒体を利用して構成してもよい。たとえば、ハードディスク装置を不揮発性の記憶部として利用できる。また、CD−ROMなどの記録媒体から情報を読み出す構成を採ることでも不揮発性の記憶部として利用できる。 Further, the present invention is not limited to a semiconductor memory element, and may be configured using a medium such as a magnetic disk or an optical disk. For example, a hard disk device can be used as a nonvolatile storage unit. In addition, it is possible to use as a nonvolatile storage unit by adopting a configuration for reading information from a recording medium such as a CD-ROM.
また、コンピュータシステム900は、ユーザインタフェースをなす機能部としての指示入力部903と、操作時のガイダンス画面や処理結果などの所定の情報をユーザに提示する表示出力部904と、各機能部との間のインタフェース機能をなすインタフェース部(IF部)909とを有する。
Further, the computer system 900 includes an
なお、解析処理結果を印刷出力してユーザに提示する構成とするべく、処理結果を所定の出力媒体(たとえば印刷用紙)に出力する画像形成部906を設けてもよい。
Note that an
指示入力部903としては、たとえば、ユーザインタフェース部985の操作キー部985bを利用してもよい。あるいは、キーボードやマウスなどを利用してもよい。
As the
表示出力部904は、表示制御部919と表示装置とを備える。表示装置としては、たとえば、ユーザインタフェース部985の操作パネル部985aを利用してもよい。あるいは、CRT(Cathode Ray Tube;陰極線管)やLCD(Liquid Crystal Display;液晶)などでなるその他のディスプレイ部を利用してもよい。
The display output unit 904 includes a
たとえば、表示制御部919が、操作パネル部985aやディスプレイ部上に、ガイダンス情報や画像読取部905が取り込んだ全体画像などを表示させる。また、各種の情報をユーザに通知する際の表示デバイスとしても利用される。なお、表示面上にタッチパネルを有するディスプレイ部とすることで、指先やペンなどで所定の情報を入力する指示入力部903を構成してもよい。
For example, the
インタフェース部909としては、処理データ(画像データを含む)や制御データの転送経路であるシステムバス991の他、たとえば、画像形成部906や他のプリンタとのインタフェース機能をなすプリンタIF部996、およびネットワークとの間の通信データの受け渡しを仲介する通信IF部999を有している。
The interface unit 909 includes a system bus 991 that is a transfer path for processing data (including image data) and control data, a printer IF
このような構成において、CPU912は、システムバス991を介してシステム全体の制御を行なう。ROM913は、CPU912の制御プログラムなどを格納する。RAM915は、SRAM(Static Random Access Memory )などで構成され、プログラム制御変数や各種処理のためのデータなどを格納する。また、RAM915は、所定のアプリケーションプログラムに従って演算して得たデータや外部から取得したデータなどを一時的に格納する領域を含んでいる。
In such a configuration, the
たとえば、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理機能をコンピュータに実行させるプログラムは、CD−ROMなどの記録媒体を通じて配布される。あるいは、このプログラムは、CD−ROMではなくFDに格納されてもよい。また、MOドライブを設け、MOに前記プログラムを格納してもよく、またフラッシュメモリなどの不揮発性の半導体メモリカードなど、その他の記録媒体にプログラムを格納してもよい。さらに、他のサーバなどからインターネットなどのネットワークを経由してプログラムをダウンロードして取得したり、あるいは更新したりしてもよい。 For example, a program that causes a computer to execute a particle behavior analysis processing function that takes into account a plurality of types of interaction forces using a force-division parallelization method is distributed through a recording medium such as a CD-ROM. Alternatively, this program may be stored in the FD instead of the CD-ROM. In addition, an MO drive may be provided to store the program in the MO, or the program may be stored in another recording medium such as a nonvolatile semiconductor memory card such as a flash memory. Furthermore, the program may be downloaded from another server or the like via a network such as the Internet, or may be updated or updated.
なおプログラムを提供するための記録媒体としては、FDやCD−ROMなどの他にも、DVDなどの光学記録媒体、MOなどの光磁気記録媒体、テープ媒体、磁気記録媒体、ICカードやミニチュアカードなどの半導体メモリを用いてもよい。記録媒体の一例としてのFDやCD−ROMなどには、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理機能を実現する際の、一部または全ての機能を格納してもよい。 As a recording medium for providing the program, in addition to FD and CD-ROM, optical recording medium such as DVD, magneto-optical recording medium such as MO, tape medium, magnetic recording medium, IC card and miniature card A semiconductor memory such as the above may be used. FD and CD-ROM as examples of recording media have some or all of the functions for realizing particle behavior analysis processing functions that take into account multiple types of interaction forces using the force-division parallelization method. It may be stored.
また、ハードディスク装置は、制御プログラムによる各種処理のためのデータを格納したり、自装置で取得したデータや外部から取得したデータなどを大量に一時的に格納したりする領域を含んでいる。 Further, the hard disk device includes an area for storing data for various processes by the control program, and temporarily storing a large amount of data acquired by the device itself or data acquired from the outside.
このような構成により、操作キー部985bを介した操作者による指令にて、後述する粒子挙動解析方法を実行するプログラムが記憶されているCD−ROMなどの読取可能な記録媒体からRAM915に粒子挙動解析プログラムがインストールされ、また操作キー部985bを介した操作者による指令や自動処理にて粒子挙動解析プログラムが起動される。
With such a configuration, the particle behavior is stored in the
CPU912は、この粒子挙動解析プログラムに従って後述する粒子挙動解析方法に伴う計算処理を施し、処理結果をRAM915やハードディスクなどの記憶装置に格納し、必要により操作パネル部985a、あるいはCRTやLCDなどの表示装置に出力する。
The
なお、このようなコンピュータを用いた構成に限らず、図4を用いて示した各機能部の処理をなす専用のハードウェアの組合せにより、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理を行なう粒子挙動解析システム200や粒子挙動解析装置202を構成してもよい。 Not only the configuration using such a computer, but also a combination of dedicated hardware that performs processing of each functional unit shown in FIG. A particle behavior analysis system 200 or a particle behavior analysis device 202 that performs a particle behavior analysis process considering the above may be configured.
たとえば、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理のための各機能部分の全ての処理をソフトウェアで行なうのではなく、これら機能部分の一部を専用のハードウェアにて行なう処理回路908を設けてもよい。ソフトウェアで行なう仕組みは、並列処理や連続処理に柔軟に対処し得るものの、その処理が複雑になるに連れ、処理時間が長くなるため、処理速度の低下が問題となる。
For example, instead of performing all the processing of each functional part for particle behavior analysis processing that considers multiple types of interaction forces using the force division parallelization method, a part of these functional parts is dedicated. A
これに対して、ハードウェア処理回路で構築すると、処理が複雑であっても、処理速度の低下を防ぐことができ、高いスループットを得ることができる高速化を図ったアクセラレータシステムが構築される。 On the other hand, when constructed with a hardware processing circuit, even if the process is complicated, a reduction in processing speed can be prevented, and an accelerator system capable of achieving high throughput can be constructed.
たとえば、力分割並列化法を利用し複数種の相互作用力を考慮した粒子挙動解析処理機能を実現する場合であれば、処理回路908としては、図4に示したデータ処理部230を構成するデータ受付部232に相当するデータ受付部908a、数値演算処理部234に相当する数値演算処理部908b、出力データ処理部236に相当する出力データ処理部908cなどをハードウェアで構成するとよい。
For example, in the case of realizing a particle behavior analysis processing function that takes into account a plurality of types of interaction forces using the force-division parallelization method, the data processing unit 230 shown in FIG. A
また、全体を統括する主粒子挙動解析装置202aを構成する場合であれば、分割処理部250に相当する分割処理部908dをハードウェアで構成するとよい。
In the case of configuring the main particle
<力分割並列処理;基本(プロセッサ数M=N^2)>
図5〜図12は、本実施形態の粒子挙動解析処理において適用する力分割法(力マトリックスを用いたアルゴリズム)の並列化処理を説明する図である。ここで、図5は、力分割並列処理手順の一例を示したフローチャートである。
<Force division parallel processing; basic (number of processors M = N ^ 2)>
5 to 12 are diagrams for explaining the parallelization processing of the force division method (algorithm using a force matrix) applied in the particle behavior analysis processing of the present embodiment. Here, FIG. 5 is a flowchart showing an example of a force-division parallel processing procedure.
図6は、解析対象粒子を各ノードに割り当てる手法を説明する図である。図7〜図9は、磁気相互作用、静電相互作用、機械的相互作用(接触力)について、各ノードでの相互作用力の計算対象を説明する図である。 FIG. 6 is a diagram illustrating a method of assigning analysis target particles to each node. FIG. 7 to FIG. 9 are diagrams for explaining calculation targets of the interaction force at each node with respect to magnetic interaction, electrostatic interaction, and mechanical interaction (contact force).
図10は、各ノードで求められた相互作用力の加算処理(特に力マトリクスの行方向について)を説明する図である。図11は、行方向および列方向に計算した相互作用力を通信し合う必要のある他の特定プロセッサを説明する図である。図12は、力分割法における力マトリクスを利用した際の通信対象のプロセッサを、ノード6に着目して纏めた図である。なお、力マトリクスでは、全粒子がキャリア粒子102aであるものとし、磁気力の相互作用で示す。
FIG. 10 is a diagram for explaining the interaction force addition processing (particularly in the row direction of the force matrix) obtained at each node. FIG. 11 is a diagram for explaining another specific processor that needs to communicate the interaction forces calculated in the row direction and the column direction. FIG. 12 is a diagram summarizing the communication target processor when the force matrix in the force division method is used, focusing on the
本実施形態では、各粒子挙動解析装置202において各相互作用の解析を行なう際、領域分割法や粒子分割法ではなく力分割法(力マトリックスを用いたアルゴリズム)を用いて解析することで、全プロセッサ間の通信量を低減させるようにしている。通信量を低減させることで、多プロセッサ使用時のプログラムの並列化性能を向上させ、計算時間を短縮するのである。 In the present embodiment, when each particle behavior analysis apparatus 202 analyzes each interaction, the analysis is performed using a force division method (algorithm using a force matrix) instead of a region division method or a particle division method. The amount of communication between processors is reduced. By reducing the amount of communication, the parallelization performance of the program when using multiple processors is improved, and the calculation time is shortened.
先ず、主粒子挙動解析装置202aにおいて、分割処理部250は、現時点において粒子挙動解析処理に使用可能なクラスタ構成の粒子挙動解析システム200を構成する粒子挙動解析装置202の数やグリッド構成の粒子挙動解析システムを構成する各粒子挙動解析システム200の数(纏めてプロセッサ数Mと呼ぶ)を特定する(S102)。
First, in the main particle
ここで、力分割法の基本原理としては、プロセッサ数Mは、N^2であり、N行N列の正方の力マトリクスに配されることが前提となっている。ここでは、一例として、N=4で、プロセッサ数Mが計16(=4^2)台であるとする。この場合、各プロセッサは、4行4列の力マトリクスに配される。詳細は後述するが、本実施形態の仕組みでは、この2^Nの制限を緩和して、N^2以外のプロセッサ数Mでも力分割法を適用できるようにする点に特徴を有している。 Here, the basic principle of the force division method is that the number of processors M is N ^ 2, and is assumed to be arranged in a square force matrix of N rows and N columns. Here, as an example, it is assumed that N = 4 and the total number of processors M is 16 (= 4 ^ 2). In this case, each processor is arranged in a force matrix of 4 rows and 4 columns. Although the details will be described later, the mechanism of this embodiment is characterized in that the restriction of 2 ^ N is relaxed so that the force division method can be applied even with the number of processors M other than N ^ 2. .
この後、データ処理部230は、データ入力部220を介して、計算に必要な各種物理パラメータや粒子の初期配置や力分割法で特に必要となる解析対象粒子数などの計算条件を読み込む(S104)。
Thereafter, the data processing unit 230 reads, via the
次に、分割処理部250は、ステップS102にて特定したプロセッサ数Mが、N^2の関係を満たすか否かを判定する(S105)。プロセッサ数MがN^2の関係を満たす場合(S105−YES)、分割処理部250は、ステップS102にて特定した各プロセッサを、図6に示すように正方行列でマトリクス配置して、解析対象の粒子(現像剤102を構成するキャリア粒子102aやトナー粒子102b)を割り当てる(S108)。各番号のプロセッサ(各粒子挙動解析装置202もしくは各粒子挙動解析システム200)をノードN(本例では0〜15の計16台)とも呼ぶ。
Next, the
一方、プロセッサ数MがN^2の関係を満たさない場合(S105−NO)、分割処理部250は、本実施形態特有の処理として、プロセッサ数Mの制限(M=N^2)を緩和する処理(S106)を実行してから、ステップS108に移行する。
On the other hand, when the number of processors M does not satisfy the relationship of N ^ 2 (S105-NO), the
たとえば、図6に示す例では、32粒子を16個のプロセッサで並列計算する場合の力マトリクスを示している。縦方向が実体のあるプロセッサであり、自身のノードN(プロセッサ番号)と着目粒子とを示し、横方向は通信相手のノードN(プロセッサ番号)と着目粒子とを示す。 For example, the example shown in FIG. 6 shows a force matrix when 32 particles are calculated in parallel by 16 processors. The vertical direction is a substantial processor, which indicates its own node N (processor number) and the target particle, and the horizontal direction indicates the communication partner node N (processor number) and the target particle.
16個のプロセッサで32粒子について並列計算するので、4行4列の力マトリクスに配される各プロセッサは、先ず、それぞれ2個の粒子に着目して、着目粒子ごとに対象となる他の粒子との間での相互作用を解析することになる。たとえば、ノード6に着目すると、先ず、12番目と13番目の粒子を着目粒子とする。
Since 32 particles are calculated in parallel by 16 processors, each processor arranged in a force matrix of 4 rows and 4 columns first focuses on two particles, and other particles targeted for each particle of interest. Will be analyzed. For example, when focusing on the
次に、複数種類の多体粒子間相互作用力を、力マトリクス中の自身を中心とする行方向および列方向に存在する通信を必要とするプロセッサ(特に特定プロセッサと呼ぶ)に分散して計算する(S110)。このとき、詳細は後述するが、複数種類の多体粒子間相互作用に対しては、それぞれ別の力マトリックスを用いて計算する。 Next, multiple types of interaction forces between many-body particles are distributed and calculated in processors (especially called specific processors) that require communication in the row and column directions centered on themselves in the force matrix. (S110). At this time, although the details will be described later, for a plurality of types of multi-particle interactions, calculation is performed using different force matrices.
たとえば、図7に示す磁気相互作用を解析するための力マトリックスを用いて、磁気相互作用を解析する。また、図8に示す静電相互作用を解析するための力マトリックスを用いて、静電相互作用を解析する。また、図9に示す機械的相互作用(接触力)を解析するための力マトリックスを用いて、接触力を解析する。 For example, the magnetic interaction is analyzed using a force matrix for analyzing the magnetic interaction shown in FIG. Further, the electrostatic interaction is analyzed using a force matrix for analyzing the electrostatic interaction shown in FIG. Further, the contact force is analyzed using a force matrix for analyzing the mechanical interaction (contact force) shown in FIG.
ここで、図7〜図9に示す各相互作用用の各別の力マトリックスは、取り扱う粒子番号が異なる点に特徴を有する。複数種類の多体粒子間相互作用に対して各別の力マトリックスを用いて計算することで、各力マトリックスでは相互作用計算に必要な最小数の粒子のみを計算するようにし、全粒子を計算する場合に比べて計算時間を短縮するのである。また、その時間短縮分、つまり計算負荷の低減分を見越して、各プロセッサが担当する解析対象の粒子数を増やす方向で調整するようにしてもよい。 Here, each force matrix for each interaction shown in FIGS. 7 to 9 is characterized in that the particle numbers handled are different. By calculating each type of many-body particle interaction using a separate force matrix, each force matrix calculates only the minimum number of particles required for the interaction calculation and calculates all particles. The calculation time is shortened compared to the case of doing so. In addition, in anticipation of the time reduction, that is, the reduction of the calculation load, the adjustment may be made in the direction of increasing the number of particles to be analyzed which each processor is in charge of.
たとえば、32個の解析対象粒子のうち、粒子番号0〜15はキャリア粒子102a(図7〜図9中で粒子番号の右に“C”を付して示す)、粒子番号16〜31はトナー粒子102b(図7〜図9中で粒子番号の右に“T”を付して示す)であるとする。また、キャリア粒子102aについての解析を必要とする相互作用力は磁気力と接触力であり、トナー粒子102bについての解析を必要とする相互作用力は静電気力と接触力であるとする。
For example, among 32 analysis target particles,
この場合、磁気力の力マトリックスはキャリア粒子102aのみを含む図7として、また静電気力の力マトリックスはトナー粒子102bのみを含む図8として、また接触力の力マトリックスはキャリア粒子102aとトナー粒子102bとを含んだ図9として、それぞれ表される。各プロセッサが担当する粒子数に関しては、接触力用の力マトリクス(図9)では“2”にしているが、磁気相互作用用の力マトリクス(図7)並びに静電相互作用用の力マトリクス(図8)では“2”ではなく“4”にしている。
In this case, the force matrix of the magnetic force is as FIG. 7 including only the
このように、各別の力マトリックスを用いることにより、各々のマトリックスでは必要最小数の粒子のみを計算するようにし、マトリックスによっては計算時間を短縮する。たとえば、磁気力の力マトリックスでは、16個のキャリア粒子102aについての計算のみを行なうことで、全粒子32個を計算する場合に比べて全計算時間を短縮する。
In this way, by using each separate force matrix, only the minimum required number of particles is calculated in each matrix, and the calculation time is shortened depending on the matrix. For example, in the force matrix of magnetic force, only the calculation for 16
なお、たとえば図6(もしくは図9)から分かるように、力分割法では、相互作用力を求める際の相手粒子の組合せ方に特徴があり、たとえば、ノード6に着目すると、解析対象粒子の関係を、行方向の粒子番号と、列方向の粒子番号との相互作用計算を示すインデックス“−”で対応付けて示すように(一部は省略して示す)、粒子番号8〜15のそれぞれは、粒子番号4,5,12,13,20,21,28,29のそれぞれとの間の相互作用を解析する。
For example, as can be seen from FIG. 6 (or FIG. 9), the force splitting method has a feature in the way of combining the partner particles when obtaining the interaction force. As shown in association with an index “−” indicating an interaction calculation between the particle number in the row direction and the particle number in the column direction (partially omitted), each of the
ここで、各粒子は自分自身に作用する、他粒子からの作用力の総和を計算する。このために、粒子番号12,13に関しては、12番の粒子は13番の相互作用力を、13番の粒子は12番の相互作用力を必要とする。ただし、12と13,13と12の相互作用力の大きさは同じであるから、計算は1回で行なってもよい。
Here, each particle calculates the sum of the acting forces from other particles acting on itself. For this reason, for
なお、組合せ的には“12−12”や“13−13”を採り得るが、これは自己相互作用を意味し、本実施形態では、その解析は不要である。 In addition, “12-12” and “13-13” can be taken in combination, but this means self-interaction, and in this embodiment, the analysis is unnecessary.
次に、特定プロセッサ間で通信し、磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力)などの各相互作用について、力マトリックスにおける行方向の相互作用同士を足し合わせる、つまり、分散して計算した全ての相互作用力の全総和値SUM_Totalを求める(S112)。全総和値SUM_Totalは、静電気力、磁気力、機械的接触力、あるいは付着力などの複数の相互作用を一括して表わしたものとなる。 Next, it communicates between specific processors and for each interaction, such as magnetic interaction, electrostatic interaction, or mechanical interaction (contact force), adds the row-wise interactions in the force matrix, A total sum SUM_Total of all interaction forces calculated in a distributed manner is obtained (S112). The total sum value SUM_Total collectively represents a plurality of interactions such as electrostatic force, magnetic force, mechanical contact force, or adhesion force.
たとえば、図10に示すように、ノード6に着目すると、ノード4,5,7での相互作用値をノード6に送り、ノード6にて総和計算を行なう。これにより、ノード6の担当粒子12,13の相互作用力の総和値が求まる。
For example, as shown in FIG. 10, when attention is paid to
次に、複数の相互作用を一括して表している全総和値SUM_Totalを使用して、各粒子の運動方程式を解き、位置座標を計算する(S114)。そして、このようにして求めた各粒子の位置座標を、相互作用マトリクスに関係する特定プロセッサに送り(通信し)、計算情報を更新する(S116)。 Next, using the total sum value SUM_Total that collectively represents a plurality of interactions, the equation of motion of each particle is solved, and the position coordinates are calculated (S114). Then, the position coordinates of each particle obtained in this way are sent (communication) to a specific processor related to the interaction matrix, and the calculation information is updated (S116).
たとえば、図11に示すように、ノード6に着目すると、相互作用力の総和値から計算して更新されたノード6が担当する担当粒子12,13の位置座標を、相互作用マトリクスに関係する行方向のノード4,5,7および列方向のノード2,10,14に送る。これは、ノード6が担当する粒子12,13の情報を必要とするのは、行方向のノード4,5,7および列方向のノード2,10,14のみだからである。よって、ノード6は、この6つのノードとの間でのみ通信を行なうことで、通信量を少なくする。
For example, as shown in FIG. 11, when attention is paid to the
この後、所定の計算ステップに到達するまで、ステップS110に戻り、同様の処理を繰り返す(S118)。ここで“所定の計算ステップ”とは、解析対象の全粒子が、概ね安定した位置に納まった状態(全て流れてしまった状態)となるまでとすればよい。 Thereafter, the process returns to step S110 until the predetermined calculation step is reached, and the same processing is repeated (S118). Here, the “predetermined calculation step” may be performed until all the particles to be analyzed are in a state where they are in a generally stable position (a state in which all particles have flowed).
このように、プロセッサ数MがN^2の関係を満たす場合において、演算プロセッサとしてのCPUや記憶媒体(メモリ)としてのRAMなどを備えたプロセッサ(各粒子挙動解析装置202や各粒子挙動解析システム200)をネットワーク208で接続して相互通信可能にして並列型計算装置(クラスタ計算機)やグリッド型計算機を構成し、図6〜図11に示したように、力マトリクスに従って力分割並列化アルゴリズムを用いて、磁気相互作用、静電相互作用、あるいは機械的相互作用(接触力)など、複数の相互作用を同時に考慮して挙動解析を行なう。
Thus, when the number of processors M satisfies the relationship of N ^ 2, a processor (each particle behavior analysis device 202 or each particle behavior analysis system) including a CPU as an arithmetic processor, a RAM as a storage medium (memory), or the like. 200) are connected via a
画像形成装置1の現像装置100に収容される現像剤102(詳しくはキャリア粒子102aやトナー粒子102b)における磁気力、静電気力、機械的接触など電子写真現像プロセスの粒子挙動シミュレーションのように、複数種類の多体粒子間相互作用がある粒子について挙動解析を、図12に示す力マトリックス(粒子間相互作用規則)を用いて処理を行なう。1種類の粒子の挙動に限らず、キャリア粒子102aとトナー粒子102bから構成される2成分現像剤の相互作用を解析してもよい。
As in the particle behavior simulation of the electrophotographic development process such as magnetic force, electrostatic force, mechanical contact, etc., in the developer 102 (specifically,
たとえば、感光体130にトナー粒子102bを電着した後のキャリア粒子102aからの電磁気的影響や摺擦の影響、また、キャリア粒子102aの中から現像に寄与するトナー粒子102bがどの程度の量、感光体130に飛翔しているのなどの解析、さらに、トナー粒子102bとキャリア粒子102aに働く接触力の影響などを解析してもよい。
For example, the influence of the electromagnetic effect and the rubbing from the
また、電子写真における現像剤粒子シミュレーションに適用するために必要となる、静電気力、磁気力、機械的接触力、あるいは付着力などを同時に考慮した高速並列処理アルゴリズムを実現するようにしてもよい。 Further, a high-speed parallel processing algorithm that simultaneously considers electrostatic force, magnetic force, mechanical contact force, adhesion force, and the like necessary for application to developer particle simulation in electrophotography may be realized.
それぞれの特定プロセッサは、相互作用マトリクスに関係する自身を中心とする行方向および列方向の他の特定プロセッサとの間でのみ通信を行なえばよい。使用する特定プロセッサの数を増やすほど通信量を少なくすることで、解析処理時間を確実に低減するのである。 Each specific processor only needs to communicate with other specific processors in the row and column directions centered on itself associated with the interaction matrix. By increasing the number of specific processors to be used, the amount of communication is reduced, thereby reliably reducing the analysis processing time.
<力分割並列処理;制限緩和手法>
図13は、本実施形態で採用する、力分割法におけるプロセッサ数Mの制限を緩和する手法、すなわち図5のステップS106の詳細を説明するフローチャートである。
<Force division parallel processing; Restriction relaxation method>
FIG. 13 is a flowchart for explaining the details of the technique that relaxes the limitation on the number of processors M in the force division method employed in the present embodiment, that is, step S106 of FIG.
先にも述べたが、力分割法の基本原理としては、プロセッサ数MがN^2の関係を満たす必要があり、処理対象要素である粒子がN行N列の正方の力マトリクスに配されることが前提となっている。つまり、力分割法を適用できるのは、プロセッサ数MがN^2個のの関係を満たすときのみという制限がある。 As described above, the basic principle of the force division method is that the number of processors M needs to satisfy the relationship of N ^ 2, and the particles to be processed are arranged in a square force matrix of N rows and N columns. It is assumed that. In other words, the force division method can be applied only when the number of processors M satisfies the relationship of N ^ 2.
たとえば、3^2(=9)となるように9プロセッサを利用して、縦3×横3の組み合わせにて力マトリックスを構成することになる。また、4^2(=16)となるように16プロセッサを利用して、縦4×横4の組み合わせにて力マトリックスを構成することになる。また、5^2(=25)となるように25プロセッサを利用して、縦5×横5の組み合わせにて力マトリックスを構成することになる。 For example, a force matrix is configured by a combination of 3 × 3 by using 9 processors so that 3 ^ 2 (= 9). In addition, a force matrix is configured by a combination of 4 × 4 by using 16 processors so that 4 ^ 2 (= 16). In addition, a force matrix is configured by a combination of 5 × 5 by using 25 processors so that 5 ^ 2 (= 25).
ところが、このような制限がある力分割法の仕組みでは、当然の如く、N^2以外のプロセッサ数Mでは、力分割法を利用した並列処理を行なうことができない。したがって、プロセッサ数MがN^2〜(N+1)^2−1の範囲内にあるときには、プロセッサ数Mに関わらず、縦N・横Nの力マトリクスを使用することになる。事実上、N^2番目までしか使われず、N^2+1〜(N+1)^2−1番目のプロセッサは、使用しないことになる。 However, in the mechanism of the force division method with such limitations, as a matter of course, parallel processing using the force division method cannot be performed with the number of processors M other than N ^ 2. Therefore, when the number of processors M is within the range of N ^ 2 to (N + 1) ^ 2-1, a force matrix of vertical N and horizontal N is used regardless of the number of processors M. In effect, only the N ^ 2nd processor is used, and the N ^ 2 + 1 to (N + 1) ^ 2-1th processors are not used.
その結果として、たとえば、並列計算機システムの一部(たとえば1台)の粒子挙動解析装置202がダウンした際には、それまでのN^2に対して、1クラス下(N−1)^2でのプロセッサ数Mで粒子挙動解析システム200を構成して対処せざるを得ず、計算性能低下が大きくなってしまう。また、実際には動作可能な残り(N^2−1−(N−1)^2台分)の粒子挙動解析装置202を非稼働状態にせざるを得ず、無駄が生じてしまう。 As a result, for example, when the particle behavior analysis device 202 of a part (for example, one) of the parallel computer system goes down, one class lower (N−1) ^ 2 than the previous N ^ 2. Therefore, the particle behavior analysis system 200 must be configured with the number M of processors in order to cope with it, and the calculation performance is greatly reduced. Further, in practice, the remaining operable particle behavior analysis apparatus 202 (for N ^ 2-1- (N-1) ^ 2) must be in a non-operating state, resulting in waste.
たとえば、N=5として25台の粒子挙動解析装置202で粒子挙動解析システム200を構成していたときに、1台の粒子挙動解析装置202がダウンしたときには、N=4として16台の粒子挙動解析装置202で粒子挙動解析システム200を構成し直して動作させる必要がある。16プロセッサで計算を実施しなければならず、それだけ並列処理能力が低下するし、5^2−4^2−1=8台分の粒子挙動解析装置202を非稼働状態にせざるを得ず無駄が生じてしまう。 For example, when N = 5 and 25 particle behavior analyzers 202 constitute the particle behavior analysis system 200, when one particle behavior analyzer 202 goes down, N = 4 and 16 particle behaviors. It is necessary to reconfigure and operate the particle behavior analysis system 200 with the analysis device 202. The computation must be performed by 16 processors, and the parallel processing capacity is reduced accordingly, and 5 ^ 2-4 ^ 2-1 = 8 particle behavior analyzers 202 must be put into a non-operating state, which is wasteful. Will occur.
同様に、N=4として16台の粒子挙動解析装置202で粒子挙動解析システム200を構成していたときに、1台の粒子挙動解析装置202がダウンしたときには、N=3として9台の粒子挙動解析装置202で粒子挙動解析システム200を構成し直して動作させる必要がある。9プロセッサで計算を実施しなければならず、それだけ並列処理能力が低下するし、4^2−3^2−1=6台分の粒子挙動解析装置202を非稼働状態にせざるを得ず無駄が生じてしまう。 Similarly, when the particle behavior analysis system 200 is configured with 16 particle behavior analysis devices 202 with N = 4, when one particle behavior analysis device 202 goes down, N = 3 and nine particles It is necessary to reconfigure and operate the particle behavior analysis system 200 with the behavior analysis device 202. The calculation must be performed by 9 processors, and the parallel processing capacity is reduced accordingly, and 4 ^ 2-3 ^ 2-1 = 6 particle behavior analyzers 202 must be put into a non-operating state, which is wasteful. Will occur.
そこで、本実施形態では、このようなプロセッサ数Mの制限条件(M=N^2)を緩和する手法を提案する。その仕組みは、図13に示すように、先ず、分割処理部250は、その時点で使用可能なプロセッサ数Mを特定する(S210)。そして、プロセッサ数Mに対して、N^2<M<(N+1)^2となるように、拡張した力マトリックスを作成する(S211)。この場合の拡張した力マトリックスは、縦(N+1)・横(N+1)の力マトリクスである。
Therefore, in the present embodiment, a method of relaxing such a limit condition (M = N ^ 2) for the number of processors M is proposed. As shown in FIG. 13, first, the
具体的には、使用可能なプロセッサ数Mが、N・(N+1)+1≦M≦(N+1)^2−1の関係を満たすか否かを判定する(S212)。 Specifically, it is determined whether or not the number M of usable processors satisfies a relationship of N · (N + 1) + 1 ≦ M ≦ (N + 1) ^ 2-1 (S212).
プロセッサ数MがN・(N+1)+1≦M≦(N+1)^2−1の関係を満たさないときには(S212−NO)、つまりN^2+1≦M≦N・(N+1)であるときには、分割処理部250は、本実施形態の拡張手法は適用できないものとして、従来のように、N+1に対して1クラス下のNで力分割法を適用するべく、縦N・横Nの力マトリクスを使用することにする(S214)。
When the number of processors M does not satisfy the relationship of N · (N + 1) + 1 ≦ M ≦ (N + 1) ^ 2-1 (S212-NO), that is, when N ^ 2 + 1 ≦ M ≦ N · (N + 1), division processing is performed. The
ここで、N・(N+1)+1≦M≦(N+1)^2−1を排除しているのは(S212−NO,S214)、力分割並列化法のアルゴリズム上、力マトリックスは正方行列である必要があるからである。すなわち、力マトリクスにおいて、N+1番目の行に、実体のあるプロセッサが1つも配されず、実質的に正方行列を取り得ない場合は、本実施形態の拡張処理が、事実上適用できないからである。 Here, N · (N + 1) + 1 ≦ M ≦ (N + 1) ^ 2-1 is excluded (S212-NO, S214), and the force matrix is a square matrix due to the algorithm of the force division parallelization method. It is necessary. That is, in the force matrix, when no substantial processor is arranged in the (N + 1) th row and a square matrix cannot be obtained substantially, the extension processing of the present embodiment is practically not applicable.
一方、プロセッサ数MがN・(N+1)+1≦M≦(N+1)^2−1の関係を満たすときには(S212−YES)、分割処理部250は、縦(N+1)・横(N+1)の力マトリクスを使用することにする(S216)。この際、その拡張した力マトリクスにおいて、実際には存在しないプロセッサはダミーとする(S218)。
On the other hand, when the number of processors M satisfies the relationship of N · (N + 1) + 1 ≦ M ≦ (N + 1) ^ 2-1 (S212—YES), the
たとえば、プロセッサ数Mが、2・3+1(=7)〜3^2−1(=8)の範囲にあるときには、縦3・横3の力マトリクスを使用することにする。縦2×横3というマトリックス構成となる、N^2+1〜N・(N+1)に該当する5および6プロセッサでは、本実施形態の拡張処理は適用できない。 For example, when the number of processors M is in the range of 2 · 3 + 1 (= 7) to 3 ^ 2−1 (= 8), a force matrix of 3 in length and 3 in width is used. The extension processing of this embodiment cannot be applied to the 5 and 6 processors corresponding to N ^ 2 + 1 to N · (N + 1), which have a matrix configuration of 2 × 3.
また、プロセッサ数Mが、3・4+1(=13)〜4^2−1(=15)の範囲にあるときには、縦4・横4の力マトリクスを使用することにする。縦3×横4というマトリックス構成となる、N^2+1〜N・(N+1)に該当する10〜12プロセッサでは、本実施形態の拡張処理は適用できない。 When the number of processors M is in the range of 3 · 4 + 1 (= 13) to 4 ^ 2−1 (= 15), a force matrix of 4 × 4 is used. The expansion processing of this embodiment cannot be applied to 10-12 processors corresponding to N ^ 2 + 1 to N · (N + 1), which have a matrix configuration of 3 × 4.
また、プロセッサ数Mが、4・5+1(=21)〜5^2−1(=24)の範囲にあるときには、縦5・横5の力マトリクスを使用することにする。縦4×横5というマトリックス構成となる、N^2+1〜N・(N+1)に該当する17〜20プロセッサでは、本実施形態の拡張処理は適用できない。 When the number of processors M is in the range of 4 · 5 + 1 (= 21) to 5 ^ 2−1 (= 24), a force matrix of 5 × 5 is used. The expansion processing of this embodiment cannot be applied to 17 to 20 processors corresponding to N ^ 2 + 1 to N · (N + 1) having a matrix configuration of 4 × 5.
また、分割処理部250は、このような拡張処理を適用する場合において、拡張した縦(N+1)・横(N+1)の力マトリックスにおける(N+1)^2−M個のダミープロセッサ部分について、実体のあるプロセッサを代替プロセッサとして割り当てる。つまり、実際には存在しない(N+1)^2−M個のダミープロセッサが担当するはずの計算部分に関しては、N+1番目の行に存在する、実体のあるプロセッサが代替プロセッサとして担当するように粒子の情報を振り分ける(S220)。N+1番目の行に存在する、実体のあるプロセッサを、追加マトリックスのプロセッサとも称する。このとき、N+1番目の行に実体のあるプロセッサが複数存在するときには、その全てのプロセッサに均等に振り分けるのが好ましい。
Further, in the case of applying such an extension process, the
具体的には、実体のないプロセッサ担当計算部分について、実体のあるプロセッサに対してデータ(粒子の情報)をコピー(複製)し、その実体のあるプロセッサが代理で計算処理を実行するようにする。以後の並列計算は、通常の力分割並列化法に従って行なえばよい。 Specifically, for the computation part in charge of the intangible processor, the data (particle information) is copied (duplicated) to the actual processor so that the actual processor executes the calculation process on behalf of the processor. . Subsequent parallel calculations may be performed according to a normal force-division parallelization method.
このようにして、本実施形態では、拡張された縦(N+1)・横(N+1)の力マトリックスを用いて、従来の力分割法で利用できる制限(N^2)以外のプロセッサ数N・(N+1)+1〜(N+1)^2−1においても力分割並列処理を実施する。以下、具体的な事例を用いて説明する。 In this way, in the present embodiment, the number of processors other than the limit (N ^ 2) that can be used in the conventional force division method is used by using the expanded vertical (N + 1) / horizontal (N + 1) force matrix. N + 1) +1 to (N + 1) ^ 2-1 also performs force-division parallel processing. Hereinafter, a description will be given using specific examples.
<力分割並列処理;制限緩和例1>
図14は、力分割法を適用する場合において、プロセッサ数Mの制限(M=N^2)を緩和する手法の第1例(制限緩和例1)を説明する図である。この制限緩和例1は、N・(N+1)+1〜(N+1)^2−1におけるN=2の場合、すなわちプロセッサ数Mが、4(N=2のとき)プロセッサと9(N=3のとき)プロセッサでの範囲内で、かつ本実施形態の拡張処理を適用し得る範囲内にあり、2・3+1(=7)の場合である。
<Force division parallel processing; restriction relaxation example 1>
FIG. 14 is a diagram for explaining a first example (limitation relaxation example 1) of a technique for relaxing the restriction on the number of processors M (M = N ^ 2) when the force division method is applied. In this restriction relaxation example 1, in the case of N = 2 in N · (N + 1) +1 to (N + 1) ^ 2-1, that is, the number of processors M is 4 (when N = 2) and 9 (when N = 3). In the case of 2 · 3 + 1 (= 7) within the range of the processor and within the range to which the extension processing of this embodiment can be applied.
この場合、前述の説明から分かるように、先ず、分割処理部250は、図14に示すように、縦3・横3の拡張された力マトリックスを用いるように設定する。そして、分割処理部250は、プロセッサ数Mは“7”であるので、縦3・横3の拡張された力マトリックスにおいて、3番目の行のノード6に7番目のプロセッサを実体のあるものとして配し、粒子番号12,13を割り当てる。また、分割処理部250は、残りのノード7,8に関しては、粒子番号を割り当てず(図では“none”で示す)、実体のないダミープロセッサとする。
In this case, as can be seen from the above description, first, the
また、分割処理部250は、実際には存在しないノード7,8のダミープロセッサが担当するはずの計算部分に関しては、3番目の行に存在する、実体のあるノード6のプロセッサ(追加マトリックスの#6プロセッサ)が担当するように振り分ける。
Further, the
たとえば、本来のノード7(実体のないプロセッサの一例)が担当する計算部分A(#7ノードの相互作用マトリクス内)と、本来のノード8(実体のないプロセッサの一例)が担当する計算部分B(#8ノードの相互作用マトリクス内)とについて、実体のあるノード6のプロセッサは、計算に必要なデータ(粒子の情報)を一旦メモリにコピー(複製)する。その後、通常の力分割並列化法に従って、ノード6(実体のあるプロセッサの一例)が代理で相互作用の物理量の計算を実行する。図中において、#6の相互作用マトリクスのノード7,8部分の点線は、コピーデータのメモリ上の位置(=データ配列上の位置)を示す。
For example, the calculation part A (in the # 7 node interaction matrix) that the original node 7 (an example of an intangible processor) takes charge of and the calculation part B that the original node 8 (an example of an intangible processor) takes charge of With respect to (in the # 8 node interaction matrix), the substantial processor of the
たとえば、図14に示すように、ノード2に着目すると、相互作用力の総和値から計算して更新されたノード2が担当する担当粒子4,5の位置座標を、ノード2が担当する粒子4,5の情報を必要とするプロセッサ(つまり通信の際に関連するプロセッサ)である、相互作用マトリクスに関係する行方向のノード0,1並びに列方向のノード5およびノード8を代行するノード6(計算部分Bを担当)に送ればよい。
For example, as shown in FIG. 14, when attention is paid to the
また、図示を割愛するが、ノード5に着目すると、相互作用力の総和値から計算して更新されたノード5が担当する担当粒子10,11の位置座標を、相互作用マトリクスに関係する行方向のノード3,4および列方向のノード2およびノード8を代行するノード6(計算部分Bを担当)に送ればよい。
Although not shown in the drawing, when attention is paid to the
さらに、図示を割愛するが、ノード1に着目すると、相互作用力の総和値から計算して更新されたノード1が担当する担当粒子2,3の位置座標を、相互作用マトリクスに関係する行方向のノード0,2および列方向のノード4およびノード7を代行するノード6(計算部分Aを担当)に送ればよい。また、ノード4に着目すると、相互作用力の総和値から計算して更新されたノード4が担当する担当粒子8,9の位置座標を、相互作用マトリクスに関係する行方向のノード3,5および列方向のノード1およびノード7を代行するノード6(計算部分Aを担当)に送ればよい。
Further, although omitted from the drawing, when attention is paid to the
これを受けて、ノード7の計算部分Aを代行するノード6は、粒子番号12,13のそれぞれと、粒子番号2,3,8,9のそれぞれとの間の相互作用を解析する。また、ノード8の計算部分Bを代行するノード6は、粒子番号12,13のそれぞれと、粒子番号4,5,10,11のそれぞれとの間の相互作用を解析する。
In response to this, the
<力分割並列処理;制限緩和例2>
図15は、力分割法を適用する場合において、プロセッサ数Mの制限(M=N^2)を緩和する手法の第2例(制限緩和例2)を説明する図である。この制限緩和例2は、N・(N+1)+1〜(N+1)^2−1におけるN=2の場合、すなわちプロセッサ数Mが、4(N=2のとき)プロセッサと9(N=3のとき)プロセッサでの範囲内で、かつ本実施形態の拡張処理を適用し得る範囲内にあり、2・3+2=3^2−1(=8)の場合である。
<Force division parallel processing; restriction relaxation example 2>
FIG. 15 is a diagram for explaining a second example (limitation relaxation example 2) of a technique for relaxing the restriction on the number of processors M (M = N ^ 2) when the force division method is applied. In this example of relaxed restriction, in the case of N = 2 in N · (N + 1) +1 to (N + 1) ^ 2-1, that is, the number of processors M is 4 (when N = 2) and 9 (N = 3). In the case of 2) 3 + 2 = 3 ^ 2-1 (= 8), which is within the range of the processor and within the range to which the extension processing of this embodiment can be applied.
この場合、前述の説明から分かるように、先ず、分割処理部250は、図15に示すように、縦3・横3の拡張された力マトリックスを用いるように設定する。そして、分割処理部250は、プロセッサ数Mは“8”であるので、縦3・横3の拡張された力マトリックスにおいて、3番目の行のノード6に7番目のプロセッサを実体のあるものとして配し、粒子番号12,13を割り当て、さらにノード7に8番目のプロセッサを実体のあるものとして配し、粒子番号14,15を割り当てる。また、分割処理部250は、残りのノード8に関しては、粒子番号を割り当てず(図では“none”で示す)、実体のないダミープロセッサとする。
In this case, as can be understood from the above description, first, the
また、分割処理部250は、実際には存在しないダミーであるノード8のプロセッサが担当するはずの計算部分に関しては、3番目の行に存在する、実体のあるノード6,7のプロセッサ(追加マトリックスの#6,7プロセッサ)が均等に担当するようにデータ(粒子の情報)を振り分ける。
In addition, the
たとえば、本来のノード8が担当する2箇所の計算部分A,B(#8ノードの相互作用マトリクス内)について、実体のあるノード6,7のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。その後、通常の力分割並列化法に従って、相互作用の物理量の計算を行なう。
For example, for the two calculation parts A and B (in the # 8 node interaction matrix) that the
たとえば、図15に示すように、ノード2に着目すると、相互作用力の総和値から計算して更新されたノード2が担当する担当粒子4,5の位置座標を、相互作用マトリクスに関係する行方向のノード0,1並びに列方向のノード5およびノード8を代行するノード6(計算部分Aを担当)およびノード7(計算部分Bを担当)に送ればよい。図中において、#6,#7の相互作用マトリクスのノード8部分の点線は、コピーデータのメモリ上の位置(=データ配列上の位置)を示す。
For example, as shown in FIG. 15, when attention is paid to the
また、図示を割愛するが、ノード5に着目すると、相互作用力の総和値から計算して更新されたノード5が担当する担当粒子10,11の位置座標を、相互作用マトリクスに関係する行方向のノード3,4および列方向のノード2およびノード8を代行するノード6(計算部分Aを担当)およびノード7(計算部分Bを担当)に送ればよい。
Although not shown in the drawing, when attention is paid to the
これを受けて、ノード8の計算部分Aを代行するノード6は、粒子番号12,13のそれぞれと、粒子番号4,5,10,11のそれぞれとの間の相互作用を解析する。また、ノード8の計算部分Bを代行するノード7は、粒子番号14,15のそれぞれと、粒子番号4,5,10,11のそれぞれとの間の相互作用を解析する。
In response to this, the
なお、原理的には、実体のあるノード6,7の何れか一方のプロセッサがノード8の2箇所の計算部分A,Bの全ての処理を代行する代替プロセッサとして機能するようにデータをコピー(複製)することも可能であるが、その場合、その代替プロセッサと他のプロセッサとの間で計算負荷のアンバランス(不均衡)が大きくなるので、好ましくない。
In principle, data is copied so that either one of the
<力分割並列処理;制限緩和例3>
図16は、力分割法を適用する場合において、プロセッサ数Mの制限(M=N^2)を緩和する手法の第3例(制限緩和例3)を説明する図である。この制限緩和例3は、N・(N+1)+1〜(N+1)^2−1におけるN=3の場合、すなわちプロセッサ数Mが、9(N=3のとき)プロセッサと16(N=4のとき)プロセッサでの範囲内で、かつ本実施形態の拡張処理を適用し得る範囲内にある場合である。
<Force division parallel processing; restriction relaxation example 3>
FIG. 16 is a diagram for explaining a third example (limitation relaxation example 3) of a technique for relaxing the restriction on the number of processors M (M = N ^ 2) when the force division method is applied. In this restriction relaxation example 3, N = (N + 1) +1 to (N + 1) ^ 2-1 where N = 3, that is, the number of processors M is 9 (when N = 3) and 16 (N = 4). When) it is within the range of the processor and within the range to which the expansion processing of this embodiment can be applied.
この場合、前述の説明から分かるように、13〜15プロセッサまで対応できる。図では、プロセッサ数Mが4^2−2(=14)の場合で示している。 In this case, as can be seen from the above description, 13 to 15 processors can be supported. In the figure, the number of processors M is 4 ^ 2-2 (= 14).
この場合、前述の説明から分かるように、先ず、分割処理部250は、図16に示すように、縦4・横4の拡張された力マトリックスを用いるように設定する。そして、分割処理部250は、プロセッサ数Mは“14”であるので、縦4・横4の拡張された力マトリックスにおいて、4番目の行のノード12に13番目のプロセッサを実体のあるものとして配し、粒子番号24,25を割り当て、さらにノード13に14番目のプロセッサを実体のあるものとして配し、粒子番号26,27を割り当てる。また、分割処理部250は、残りのノード14,15に関しては、粒子番号を割り当てず(図では“none”で示す)、実体のないダミープロセッサとする。
In this case, as can be understood from the above description, first, the
また、分割処理部250は、実際には存在しないダミーであるノード14,15のプロセッサが担当するはずの計算部分に関しては、4番目の行に存在する、実体のあるノード12,13のプロセッサ(追加マトリックスの#12,13プロセッサ)が均等に担当するように振り分ける。
In addition, regarding the calculation portion that should be handled by the
たとえば、本来のノード14が担当する2箇所の計算部分A,B(#14ノードの相互作用マトリクス内)について、実体のあるノード12,13のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。また、本来のノード15が担当する2箇所の計算部分C,D(#15ノードの相互作用マトリクス内)について、実体のあるノード12,13のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。その後、通常の力分割並列化法に従って、相互作用の物理量の計算を行なう。
For example, for the two calculation parts A and B (in the # 14 node interaction matrix) that the
たとえば、図16に示すように、ノード6に着目すると、相互作用力の総和値から計算して更新されたノード6が担当する担当粒子12,13の位置座標を、相互作用マトリクスに関係する行方向のノード4,5,7並びに列方向のノード2,10およびノード14を代行するノード12(計算部分Aを担当)およびノード13(計算部分Bを担当)に送ればよい。詳細説明は割愛するが、代行処理に関連するその他のノード2,10(計算部分A,Bと関連)やノード3,7,11(計算部分C,Dと関連)についても同様である。図中において、#12,#13の相互作用マトリクスのノード14,15部分の点線は、コピーデータのメモリ上の位置(=データ配列上の位置)を示す。
For example, as shown in FIG. 16, when attention is paid to the
これを受けて、ノード14の計算部分Aを代行するノード12は、粒子番号24,25のそれぞれと、粒子番号4,5,12,13,20,21のそれぞれとの間の相互作用を解析する。また、ノード14の計算部分Bを代行するノード13は、粒子番号26,27のそれぞれと、粒子番号4,5,12,13,20,21のそれぞれとの間の相互作用を解析する。さらに、ノード15の計算部分Cを代行するノード12は、粒子番号24,25のそれぞれと、粒子番号6,7,14,15,22,23のそれぞれとの間の相互作用を解析する。また、ノード15の計算部分Dを代行するノード13は、粒子番号26,27のそれぞれと、粒子番号6,7,14,15,22,23のそれぞれとの間の相互作用を解析する。
In response to this, the
なお、制限緩和例3においても、原理的には、実体のあるノード12,13の何れか一方のプロセッサが、ノード14,15の4箇所の計算部分A,B,C,Dの全ての処理を代行するように、計算に必要な値を一旦メモリにコピー(複製)することも可能であるが、その場合、他のプロセッサとの間で計算負荷のアンバランス(不均衡)が大きくなるので、好ましくない。
Note that, in the restriction relaxation example 3 as well, in principle, any one of the
なお、ここでは、プロセッサ数Mが4^2−2(=14)の場合で示したが、N・(N+1)+1〜(N+1)^2−1においてN=3とした場合の、残りの13,15に関しても、本実施形態の拡張処理を適用できる。 Here, although the case where the number of processors M is 4 ^ 2-2 (= 14) is shown, the remaining number when N = 3 in N · (N + 1) +1 to (N + 1) ^ 2-1 is shown. The extended processing of the present embodiment can also be applied to 13 and 15.
<力分割並列処理;制限緩和例4>
図17は、力分割法を適用する場合において、プロセッサ数Mの制限(M=N^2)を緩和する手法の第4例(制限緩和例4)を説明する図である。この制限緩和例4は、N・(N+1)+1〜(N+1)^2−1におけるN=4の場合、すなわちプロセッサ数Mが、16(N=4のとき)プロセッサと25(N=5のとき)プロセッサでの範囲内で、かつ本実施形態の拡張処理を適用し得る範囲内にある場合である。
<Force division parallel processing; restriction relaxation example 4>
FIG. 17 is a diagram for explaining a fourth example (limitation relaxation example 4) of a technique for relaxing the limit on the number of processors M (M = N ^ 2) when the force division method is applied. In this restriction relaxation example 4, in the case of N = 4 in N · (N + 1) +1 to (N + 1) ^ 2-1, that is, when the number of processors M is 16 (when N = 4) and 25 (N = 5) When) it is within the range of the processor and within the range to which the expansion processing of this embodiment can be applied.
この場合、前述の説明から分かるように、21〜24プロセッサまで対応できる。図では、プロセッサ数Mが5^2−3(=22)の場合で示している。 In this case, as can be understood from the above description, 21 to 24 processors can be supported. In the figure, the number of processors M is 5 ^ 2-3 (= 22).
この場合、前述の説明から分かるように、先ず、分割処理部250は、図17に示すように、縦5・横5の拡張された力マトリックスを用いるように設定する。そして、分割処理部250は、プロセッサ数Mは“22”であるので、縦5・横5の拡張された力マトリックスにおいて、5番目の行のノード20に21番目のプロセッサを実体のあるものとして配し、粒子番号40,41を割り当て、さらにノード21に22番目のプロセッサを実体のあるものとして配し、粒子番号42,43を割り当てる。また、分割処理部250は、残りのノード22,23,24に関しては、粒子番号を割り当てず(図では“none”で示す)、実体のないダミープロセッサとする。
In this case, as can be understood from the above description, first, the
また、分割処理部250は、実際には存在しないダミーであるノード22,23,24のプロセッサが担当するはずの計算部分に関しては、5番目の行に存在する、実体のあるノード20,21のプロセッサ(追加マトリックスの#20,21プロセッサ)が均等に担当するように振り分ける。
In addition, the
たとえば、本来のノード22が担当する2箇所の計算部分A,B(#22ノードの相互作用マトリクス内)について、実体のあるノード20,21のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。また、本来のノード23が担当する2箇所の計算部分C,D(#23ノードの相互作用マトリクス内)について、実体のあるノード20,21のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。さらに、本来のノード24が担当する2箇所の計算部分E,F(#24ノードの相互作用マトリクス内)についても、実体のあるノード20,21のプロセッサは、計算に必要な値を一旦メモリにコピー(複製)する。その後、通常の力分割並列化法に従って、相互作用の物理量の計算を行なう。
For example, for the two calculation parts A and B (in the # 22 node interaction matrix) that the
たとえば、図17に示すように、ノード7に着目すると、相互作用力の総和値から計算して更新されたノード7が担当する担当粒子14,15の位置座標を、相互作用マトリクスに関係する行方向のノード5,6,8,9並びに列方向のノード2,12,17およびノード22を代行するノード20(計算部分Aを担当)およびノード21(計算部分Bを担当)に送ればよい。詳細説明は割愛するが、代行処理に関連するその他のノード2,12,17(計算部分A,Bと関連)やノード3,8,13,18(計算部分C,Dと関連)やノード4,9,14,19(計算部分E,Fと関連)についても同様である。図中において、#20,#21の相互作用マトリクスのノード22,23,24部分の点線は、コピーデータのメモリ上の位置(=データ配列上の位置)を示す。
For example, as shown in FIG. 17, focusing on the
これを受けて、ノード22の計算部分Aを代行するノード20は、粒子番号40,41のそれぞれと、粒子番号4,5,14,15,24,25,34,35のそれぞれとの間の相互作用を解析する。また、ノード22の計算部分Bを代行するノード21は、粒子番号42,43のそれぞれと、粒子番号4,5,14,15,24,25,34,35のそれぞれとの間の相互作用を解析する。
In response to this, the
さらに、ノード23の計算部分Cを代行するノード20は、粒子番号40,41のそれぞれと、粒子番号6,7,16,17,26,27,36,37のそれぞれとの間の相互作用を解析する。また、ノード23の計算部分Dを代行するノード21は、粒子番号42,43のそれぞれと、粒子番号6,7,16,17,26,27,36,37のそれぞれとの間の相互作用を解析する。
Further, the
さらに、ノード24の計算部分Eを代行するノード20は、粒子番号40,41のそれぞれと、粒子番号8,9,18,19,28,29,38,39のそれぞれとの間の相互作用を解析する。また、ノード24の計算部分Fを代行するノード21は、粒子番号42,43のそれぞれと、粒子番号8,9,18,19,28,29,38,39のそれぞれとの間の相互作用を解析する。
Further, the
なお、制限緩和例4においても、原理的には、実体のあるノード20,21の何れか一方のプロセッサが、ノード22,23,24の6箇所の計算部分A,B,C,D,E,Fの全ての処理を代行するように、計算に必要な値を一旦メモリにコピー(複製)することも可能であるが、その場合、他のプロセッサとの間で計算負荷のアンバランス(不均衡)が大きくなるので、好ましくない。
Note that, also in the restriction relaxation example 4, in principle, any one of the
なお、ここでは、プロセッサ数Mが5^2−3(=22)の場合で示したが、N・(N+1)+1〜(N+1)^2−1においてN=4とした場合の、残りの21,23,24に関しても、本実施形態の拡張処理を適用できる。 Here, the case where the number of processors M is 5 ^ 2−3 (= 22) is shown, but the remaining number when N = 4 in N · (N + 1) +1 to (N + 1) ^ 2−1 is shown. The extended processing of this embodiment can also be applied to 21, 23, 24.
なお、プロセッサ数Mの制限(M=N^2)を緩和する手法の具体例として、N=2〜4の場合について説明したが、N=5以上に関しても、同様に、本実施形態の拡張処理を適用できる。 Note that, as a specific example of the technique for relaxing the limit on the number of processors M (M = N ^ 2), the case of N = 2 to 4 has been described. However, the extension of the present embodiment is similarly applied to N = 5 or more. Processing can be applied.
<並列化処理の計算速度向上比>
図18〜図20は、通常の力分割並列化法による速度向上比と、本実施形態の制限緩和手法(拡張力分割並列化法とも称する)による速度向上比とを比較した図である。
<Improvement ratio of parallel processing speed>
18 to 20 are diagrams comparing the speed improvement ratio obtained by the normal force division parallelization method and the speed improvement ratio obtained by the restriction relaxation method (also referred to as extended force division parallelization method) of the present embodiment.
図18は、本実施形態の拡張力分割並列化法において、2^2(=4)<M<3^2(=9)の場合、つまり4プロセッサを超える拡張における比較例である。この場合、通常の力分割並列化法では、縦2・横2の力マトリクスを適用することになり、最大でも、速度向上比は4.0倍程度に留まっていた。 FIG. 18 is a comparative example in the case of 2 ^ 2 (= 4) <M <3 ^ 2 (= 9), that is, an expansion exceeding four processors in the expansion force division parallelization method of the present embodiment. In this case, in the normal force-division parallelization method, a vertical 2 and horizontal 2 force matrix is applied, and the speed improvement ratio remains at about 4.0 times at the maximum.
これに対して、本実施形態の拡張力分割並列化法では、プロセッサ数M=5,6の場合は、通常の力分割並列化法と同様に縦2・横2の力マトリクスを適用せざるを得ないが、プロセッサ数M=7,8の場合には、縦3・横3の力マトリクスを適用することができ、速度向上比は6倍弱〜7倍弱程度にまで向上していることが分かる。 On the other hand, in the extended force division parallelization method of the present embodiment, when the number of processors is M = 5 and 6, a force matrix of 2 × 2 is applied as in the normal force division parallelization method. However, when the number of processors is M = 7, 8, a force matrix of 3 × 3 can be applied, and the speed improvement ratio is improved to about 6 to 7 times. I understand that.
図19は、本実施形態の拡張力分割並列化法において、3^3(=9)<M<4^2(=16)の場合、つまり9プロセッサを超える拡張における比較例である。この場合、通常の力分割並列化法では、縦3・横3の力マトリクスを適用することになり、最大でも、速度向上比は8.0倍程度に留まっていた。 FIG. 19 shows a comparative example in the case of 3 ^ 3 (= 9) <M <4 ^ 2 (= 16), that is, an expansion exceeding 9 processors in the expansion force division parallelization method of the present embodiment. In this case, in the normal force division parallelization method, a force matrix of 3 in length and 3 in width is applied, and the speed improvement ratio remains at about 8.0 times at the maximum.
これに対して、本実施形態の拡張力分割並列化法では、プロセッサ数M=10〜12の場合は、通常の力分割並列化法と同様に縦3・横3の力マトリクスを適用せざるを得ないが、プロセッサ数M=13〜15の場合には、縦4・横4の力マトリクスを適用することができ、速度向上比は10倍〜11倍程度にまで向上していることが分かる。 On the other hand, in the extended force division parallelization method of the present embodiment, when the number of processors M = 10 to 12, a force matrix of 3 in length and 3 in width is applied as in the normal force division parallelization method. However, when the number of processors M = 13 to 15, a force matrix of 4 × 4 can be applied, and the speed improvement ratio is improved to about 10 to 11 times. I understand.
図20は、本実施形態の拡張力分割並列化法において、4^4(=16)<M<5^2(=25)の場合、つまり16プロセッサを超える拡張における比較例である。この場合、通常の力分割並列化法では、縦4・横4の力マトリクスを適用することになり、最大でも、速度向上比は14.0倍程度に留まっていた。
これに対して、本実施形態の拡張力分割並列化法では、プロセッサ数M=17〜20の場合は、通常の力分割並列化法と同様に縦4・横4の力マトリクスを適用せざるを得ないが、プロセッサ数M=21〜24の場合には、縦5・横5の力マトリクスを適用することができ、速度向上比は15倍〜16倍程度にまで向上していることが分かる。
FIG. 20 is a comparative example in the case of 4 ^ 4 (= 16) <M <5 ^ 2 (= 25), that is, an expansion exceeding 16 processors in the expansion force division parallelization method of the present embodiment. In this case, in the normal force-division parallelization method, a force matrix of vertical 4 and horizontal 4 is applied, and the speed improvement ratio remains at about 14.0 times at the maximum.
On the other hand, in the extended force division parallelization method of this embodiment, when the number of processors is M = 17 to 20, a force matrix of 4 vertical and 4 horizontal sides is applied as in the normal force division parallelization method. However, when the number of processors M is 21 to 24, a force matrix of 5 × 5 can be applied, and the speed improvement ratio is improved to about 15 to 16 times. I understand.
何れにしても、計算速度の速度向上比は、(N+1)^2個の計算装置で並列処理したときの方が、N^2個の計算装置で並列処理したときより高くなっていることは明白である。 In any case, the speed improvement ratio of the calculation speed is higher when parallel processing is performed with (N + 1) ^ 2 computing devices than when parallel processing is performed with N ^ 2 computing devices. It is obvious.
100…現像装置、101…収納容器、101a…開口部、102…現像剤、102a…キャリア粒子、102b…トナー粒子、130…感光体、140…現像ロール、142…マグネット、150…規制ブレード、160…攪拌搬送ロール、200…粒子挙動解析システム、202…粒子挙動解析装置、208…ネットワーク、208a…ネットワーク管理装置、210…指示入力装置、212…表示装置、220…データ入力部、230…データ処理部、232…データ受付部、234…数値演算処理部、236…出力データ処理部、240…情報提示部、250…分割処理部 DESCRIPTION OF SYMBOLS 100 ... Developing apparatus, 101 ... Storage container, 101a ... Opening part, 102 ... Developer, 102a ... Carrier particle, 102b ... Toner particle, 130 ... Photoconductor, 140 ... Developing roll, 142 ... Magnet, 150 ... Regulating blade, 160 DESCRIPTION OF SYMBOLS ... Agitation conveyance roll, 200 ... Particle behavior analysis system, 202 ... Particle behavior analysis device, 208 ... Network, 208a ... Network management device, 210 ... Instruction input device, 212 ... Display device, 220 ... Data input unit, 230 ... Data processing , 232... Data receiving unit, 234... Numerical value calculation processing unit, 236... Output data processing unit, 240.
Claims (4)
それぞれの前記計算装置に設けられた、他の前記計算装置との間でデータ通信を行ないつつ、前記力分割法により割り当てられた前記分割部分について、粒子に作用する他の物質との間での相互作用力を考慮して前記粒子の挙動を解析するデータ処理部とを備え、
前記分割処理部は、前記計算装置の数Mに対して、N^2<M<(N+1)^2となるように、拡張した力マトリックスを使用するように設定し、さらに、拡張した力マトリックスにおける(N+1)^2−M個の実際には存在しない前記計算装置の部分について、実体のある前記計算装置を代替装置として割り当てる
ことを特徴とする粒子挙動解析装置。 A division processing unit that divides the particles by a force division method using a force matrix, and assigns each divided portion to each computing device;
While performing data communication with the other calculation devices provided in the respective calculation devices, the divided portions allocated by the force division method are exchanged with other substances acting on the particles. A data processing unit for analyzing the behavior of the particles in consideration of the interaction force,
The division processing unit is set to use an expanded force matrix so that N ^ 2 <M <(N + 1) ^ 2 with respect to the number M of the computing devices, and further, the expanded force matrix A (N + 1) ^ 2-M piece of the calculation device that does not actually exist is assigned as the substitute calculation device as a substitute device.
ことを特徴とする請求項1に記載の粒子挙動解析装置。 When the number M of the computing devices does not satisfy the relationship of N ^ 2 and satisfies the relationship of N · (N + 1) + 1 ≦ M ≦ (N + 1) ^ 2-1, the division processing unit performs vertical (N + 1) ) ・ The division is performed so that a lateral (N + 1) force matrix is used. Further, regarding the calculation part that the calculation device that is not actually present is supposed to be in charge, there is an entity existing in the (N + 1) th row. The particle behavior analysis apparatus according to claim 1, wherein the particle information is distributed so that the calculation apparatus is in charge of the substitute apparatus.
ことを特徴とする請求項2に記載の粒子挙動解析装置。 3. The particle behavior analysis apparatus according to claim 2, wherein the division processing unit equally distributes the information on the particles when there are a plurality of the actual calculation apparatuses in the N + 1th row.
他の前記計算装置との間でデータ通信を行ないつつ、前記力分割法により割り当てられた前記分割部分について、粒子に作用する他の物質との間での相互作用力を考慮して前記粒子の挙動を解析する手順と
を実行することを特徴とする粒子挙動解析用のプログラム。 When the particles are divided by a force division method using a force matrix and each divided portion is assigned to each calculation device, the number M of the calculation devices does not satisfy the relationship of N ^ 2, and N · (N + 1) When the relationship of + 1 ≦ M ≦ (N + 1) ^ 2-1 is satisfied, the division is performed so that the vertical (N + 1) / horizontal (N + 1) force matrix is used. Regarding the calculation part that should be in charge, the procedure of distributing the information of the particles so that the actual calculation device in charge in the (N + 1) th row is in charge;
While performing data communication with the other calculation device, the divided portion allocated by the force division method takes into account the interaction force with other substances acting on the particles, and A program for particle behavior analysis, characterized by executing a procedure for analyzing behavior.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006346978A JP4967646B2 (en) | 2006-12-25 | 2006-12-25 | Particle behavior analyzer, program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006346978A JP4967646B2 (en) | 2006-12-25 | 2006-12-25 | Particle behavior analyzer, program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008158821A JP2008158821A (en) | 2008-07-10 |
JP4967646B2 true JP4967646B2 (en) | 2012-07-04 |
Family
ID=39659655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006346978A Expired - Fee Related JP4967646B2 (en) | 2006-12-25 | 2006-12-25 | Particle behavior analyzer, program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4967646B2 (en) |
-
2006
- 2006-12-25 JP JP2006346978A patent/JP4967646B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008158821A (en) | 2008-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Kannan et al. | A high-performance parallel algorithm for nonnegative matrix factorization | |
JP4169053B2 (en) | Image processing apparatus and image processing method | |
JP4946069B2 (en) | Particle behavior analysis method, particle behavior analysis apparatus, and program | |
CN105190542A (en) | Scalable compute fabric | |
Khalil et al. | Distributed whale optimization algorithm based on MapReduce | |
JP2009087282A (en) | Parallel computation system and parallel computation method | |
JP5217227B2 (en) | Particle behavior analyzer, program | |
JP4967646B2 (en) | Particle behavior analyzer, program | |
JP2008176084A (en) | Particle behavior analyzer and program | |
JP2007017380A (en) | Particle simulation device, particle simulation method and computer program | |
JP2009134504A (en) | Particle behavior analyzer and program | |
JP2007304904A (en) | Particle behavior analyzing method, particle behavior analyzer, and program | |
JP2007265097A (en) | Particle behavior analysis method, particle behavior analysis device, and program | |
JP2007280242A (en) | Particle behavior analyzing method and particle behavior analyzing device, and program | |
JP2006330893A (en) | Apparatus and method for analyzing particle behavior, and computer program | |
JP2011008382A (en) | Particle behavior analysis system, information processing apparatus, particle behavior analysis apparatus, information processing system and program | |
JP2010079493A (en) | Particle behavior analyzer and program | |
JP2010198399A (en) | Particle behavior analyzing device and program | |
Calegari et al. | Engineering micro-intelligence at the edge of CPCS: Design guidelines | |
JP5521346B2 (en) | Particle behavior analyzer, program | |
JP2008170696A (en) | Particle behavior analyzer and program | |
JP2009075201A (en) | Particle behavior analysis device and program | |
JP2009075708A (en) | Device and program for analyzing particle behavior | |
JP5417865B2 (en) | Particle behavior analysis apparatus and program | |
JP2010072379A (en) | Particle behavior analysis device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20091008 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20091124 |
|
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: 20120306 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120319 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150413 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4967646 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |