JP2010218500A - 粒子挙動解析装置、情報処理装置、プログラム - Google Patents
粒子挙動解析装置、情報処理装置、プログラム Download PDFInfo
- Publication number
- JP2010218500A JP2010218500A JP2009067500A JP2009067500A JP2010218500A JP 2010218500 A JP2010218500 A JP 2010218500A JP 2009067500 A JP2009067500 A JP 2009067500A JP 2009067500 A JP2009067500 A JP 2009067500A JP 2010218500 A JP2010218500 A JP 2010218500A
- Authority
- JP
- Japan
- Prior art keywords
- calculation
- particle behavior
- information
- particle
- particles
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】複数のプロセッサコアを有する情報処理装置において、同一バスを使用してコア間通信とメモリアクセスを行なうことに伴う処理効率低下を抑制する。
【解決手段】計算負荷が異なるよう処理対象データを分割し、マルチコアCPUの各プロセッサコアに投入する。たとえば、各プロセッサコアへ割り当てる粒子数を変える。複数種類の粒子を対象とするときには粒子種類の割合を異ならせる。各プロセッサコアは、キャリア粒子の割当数は同じであるのでキャリア粒子に関する計算時間は同じであるが、トナー粒子の割当数が異なるのでトナー粒子に関する計算時間が異なる。そのため、各プロセッサコアは、それぞれ異なるタイミングで計算処理が完了し、他のプロセッサコアと通信し得るタイミングも異なる。各コア間通信およびメモリアクセス用のバスを共有する構成でも、コア間通信とメモリアクセスの競合が緩和・解消される。
【選択図】図6
【解決手段】計算負荷が異なるよう処理対象データを分割し、マルチコアCPUの各プロセッサコアに投入する。たとえば、各プロセッサコアへ割り当てる粒子数を変える。複数種類の粒子を対象とするときには粒子種類の割合を異ならせる。各プロセッサコアは、キャリア粒子の割当数は同じであるのでキャリア粒子に関する計算時間は同じであるが、トナー粒子の割当数が異なるのでトナー粒子に関する計算時間が異なる。そのため、各プロセッサコアは、それぞれ異なるタイミングで計算処理が完了し、他のプロセッサコアと通信し得るタイミングも異なる。各コア間通信およびメモリアクセス用のバスを共有する構成でも、コア間通信とメモリアクセスの競合が緩和・解消される。
【選択図】図6
Description
本発明は、粒子挙動解析装置および情報処理装置とプログラムに関する。
デジタル処理を行なう情報処理装置において、複数のプロセッサコアやメモリを搭載するものが知られている(特許文献1を参照)。以下では、このような情報処理装置をマルチプロセッサ装置と称する。
特許文献1では、マルチプロセッサ装置において、メモリを共有する構成を採った場合、複数のプロセッサコア間でメモリアクセスの調停が行なわれることから、プロセッサコアにおける処理が待機状態となる期間が発生し期待される性能が実現できないという問題を解決する仕組みが提案されている。その実現手段としては、たとえば、デュアルポートメモリである共有メモリを用いて改善することが提案されている。
本発明は、通信線を介して行なわれるプロセッサコア同士の通信(プロセッサコア間通信)と共有メモリへの情報の入出力の競合による処理効率低下を抑制することのできる仕組みを提供することを目的とする。
請求項1に記載の発明は、解析対象範囲内の粒子に関する計算情報を記憶する記憶部と、予め決められた分割法に従って前記記憶部との間で計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当てる解析負荷分散処理部と、を備え、複数の前記粒子挙動計算部が同一筐体に収容されており、前記通信線は、前記記憶部と前記複数の粒子挙動計算部との間で情報の入出力と各粒子挙動計算部間の情報通信に共用されるものであり、前記解析負荷分散処理部は、前記複数の粒子挙動計算部で並列計算処理を実行する際の計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる粒子挙動解析装置である。
請求項2に記載の発明は、請求項1に記載の発明において、前記解析負荷分散処理部は、各粒子挙動計算部に割り当てる前記粒子の数を異ならせることで、前記計算負荷が異なるようにする。
請求項3に記載の発明は、請求項1に記載の発明において、前記解析負荷分散処理部は、前記粒子に作用する作用力の種類や前記粒子の種類に基づいて、計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる。
請求項4に記載の発明は、請求項3に記載の発明において、前記解析負荷分散処理部は、各粒子挙動計算部に割り当てる前記粒子の数を同じにし、かつ、各粒子挙動計算部に割り当てる粒子種類の割合を異ならせることで、前記計算負荷が異なるようにする。
請求項5に記載の発明は、請求項1〜4の内の何れか一項に記載の発明において、前記解析負荷分散処理部は、何れかの筐体に前記複数の粒子挙動計算部のそれぞれに割り当てられた粒子に関する計算情報が投入され、当該筐体に収容された前記複数の粒子挙動計算部で計算情報が全て使用された後、他の筐体に前記複数の粒子挙動計算部のそれぞれに割り当てられた粒子に関する計算情報が投入されるように、計算情報の投入を順に制御する。
請求項6に記載の発明は、請求項5に記載の発明において、前記複数の粒子挙動計算部を収容する筐体を複数備え、前記解析負荷分散処理部は、各筐体に収容された前記複数の粒子挙動計算部の合計の前記計算負荷が同じになるようにする。
請求項7に記載の発明は、解析対象範囲内の粒子に関する計算情報を記憶する記憶部との間で、予め決められた分割法に従って計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当て、かつ、前記複数の粒子挙動計算部で並列計算処理を実行する際の計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる解析負荷分散処理部と、してコンピュータを機能させるプログラムである。
請求項8に記載の発明は、計算情報を記憶する記憶部と、前記記憶部との間で計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、計算情報を、通信線で接続された複数の計算部のそれぞれに割り当てる解析負荷分散処理部と、を備え、複数の前記計算部が同一筐体に収容されており、前記通信線は、前記記憶部と前記複数の計算部との間で情報の入出力と各計算部間の情報通信に共用されるものであり、前記解析負荷分散処理部は、前記複数の計算部で並列情報処理計算を実行する際の計算負荷が異なるように、前記計算情報を各計算部に割り当てる情報処理装置である。
請求項9に記載の発明は、計算情報を記憶する記憶部との間で、計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、計算情報を通信線で接続された複数の計算部のそれぞれに割り当て、かつ、前記複数の計算部で並列情報処理計算を実行する際の計算負荷が異なるように、前記計算情報を各計算部に割り当てる解析負荷分散処理部と、してコンピュータを機能させるプログラムである。
請求項10に記載の発明は、解析対象範囲内の粒子に関する計算情報を記憶する記憶部と、予め決められた分割法に従って前記記憶部との間で計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当てる解析負荷分散処理部と、を備え、複数の前記粒子挙動計算部が同一筐体に収容されており、前記通信線は、前記記憶部と前記複数の粒子挙動計算部との間で情報の入出力と各粒子挙動計算部間の情報通信に共用されるものであり、同一筐体内の前記複数の粒子挙動計算部によるそれぞれの前記通信線への情報の入出力時刻をずらすように制御する粒子挙動解析装置である。
請求項11に記載の発明は、計算情報を記憶する記憶部との間で、計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、計算情報を通信線で接続された複数の計算部のそれぞれに割り当てる解析負荷分散処理部と、してコンピュータを機能させ、同一筐体内の前記複数の粒子挙動計算部によるそれぞれの前記通信線への情報の入出力時刻をずらすように制御するプログラムである。
請求項1,7,8,9,10,11に記載の発明によれば、請求項1に係る発明の構成を有さない場合と比較して、通信線の使用競合による処理効率低下を抑制することができる。
請求項2に記載の発明によれば、各粒子挙動計算部に割り当てる粒子の数を異ならせることで、計算負荷を異なるようにしない場合と比べて、通信線の使用競合による処理効率低下を抑制することができる。
請求項3に記載の発明によれば、前記解析負荷分散処理部は、前記粒子に作用する作用力の種類や前記粒子の種類に基づいて、計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てない場合に比べて、通信線の使用競合による処理効率低下を抑制することができる。
請求項4に記載の発明によれば、本構成を有さない場合に比べて、通信線の使用競合による処理効率低下を抑制することができる。
請求項5に記載の発明によれば、本構成を有さない場合に比べて、複数の粒子挙動計算部を収容する筐体を複数備えた構成において、通信線の使用競合による処理効率低下を抑制することができる。
請求項6に記載の発明によれば、本構成を有さない場合に比べて、通信線の使用競合による処理効率低下の抑制効果を大きくすることができる。
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下においては、情報処理装置が適用される具体例として、粒子挙動解析装置を例に説明する。粒子挙動解析装置の解析対象粒子が存在する装置としては、たとえば、プリンタ装置、ファクシミリ装置、またはそれらの機能を有する複合機などの画像形成装置を例に説明する。
解析対象粒子との関係においては、トナー粒子のみまたはキャリア粒子とトナー粒子からなる現像剤を用いる電子写真方式による画像形成装置の現像装置における現像剤挙動解析に着目する。ただしこれは一例であって、解析対象粒子が存在する装置は画像形成装置に限定されない。
<画像形成装置の概要>
図1は、印刷装置(プリンタ)や複写装置(コピー機)などの電子写真方式の画像形成装置の一構成例を示す図である。図示のように、画像形成装置1は、感光体10を中心として、その近傍に配された直流電源22、交流バイアス電源24、および帯電部26を具備した帯電装置20と、レーザ光源32やポリゴンミラー34やモータ36を具備した露光装置30と、図示しない攪拌機構を備えた現像装置40と、転写電源52および転写部54を具備した転写装置50と、ブレード機構を持つクリーニング装置60と、用紙搬送路上の後流側の予め決められた位置に配されたロール機構を具備した定着装置70とを備えている。
図1は、印刷装置(プリンタ)や複写装置(コピー機)などの電子写真方式の画像形成装置の一構成例を示す図である。図示のように、画像形成装置1は、感光体10を中心として、その近傍に配された直流電源22、交流バイアス電源24、および帯電部26を具備した帯電装置20と、レーザ光源32やポリゴンミラー34やモータ36を具備した露光装置30と、図示しない攪拌機構を備えた現像装置40と、転写電源52および転写部54を具備した転写装置50と、ブレード機構を持つクリーニング装置60と、用紙搬送路上の後流側の予め決められた位置に配されたロール機構を具備した定着装置70とを備えている。
現像装置40には、現像剤粒子102が充填されている。図では、1つの現像剤粒子102を便宜的に1つの丸で示している。実際には、現像剤粒子102はたとえば、それぞれ物性や粒径の異なる磁性体から構成されたキャリア粒子と非磁性のトナー粒子(たとえば各色のトナー粒子)を主成分として含有する2成分方式のものである。キャリア粒子とトナー粒子の対によって、全体として磁性粉体が形成されるようにしている。トナー粒子は、キャリア粒子に静電力により互いに吸着されている。一般的には、キャリア粒子の粒径の方がトナー粒子の粒径よりも大きい。なお、トナー粒子としては、磁性トナーを使用してもよい。現像剤粒子102は、実際にはさらに、キャリア粒子およびトナー粒子の他に外添剤などの他の粒子も含む。
現像装置40は、収納容器101内に、表面に現像剤粒子102を担持する担持ロールの一例である現像ロール140(マグロール、マグネットローラ、磁気搬送ローラとも言われる)を、周面が開口部101aから少し突き出すように備える。現像ロール140内には、その内周縁に沿って、予め決められた間隔で予め決められた数のマグネット142が配置されている。
また、現像装置40は、現像ロール140の近傍に、高さ規制部材や層形成部材として機能する規制ブレード150を備え、マグネット142による磁力線に沿ってできた現像剤粒子102の磁気ブラシ(穂立ち)の高さを規制するようになっている。
現像ロール140は、矢印X方向に回転される感光体10とともに、感光体10と対向する側のその表面の回転移動方向が、感光体10の移動方向Xと同じ向き(矢印Y方向)に回転される。感光体10の移動方向Xと逆向きに回転駆動するようにしてもよい。
現像剤粒子102は、攪拌機能を持つ攪拌搬送ロール(図示せず)により攪拌され摩擦帯電されつつ現像ロール140側に搬送される。規制ブレード150によって現像剤粒子102の現像ロール140への吸着量が規制され一定の高さで現像ロール140の周縁に現像剤粒子102が付着する。キャリア粒子は、現像ロール140に内蔵されたマグネット142からの磁場により磁気ブラシを構成する。トナー粒子はキャリア粒子とともに、感光体10に対向する部分まで搬送される。
画像形成装置1を複写装置として構成する場合、帯電装置20によって、直流電源22からの直流電圧に交流バイアス電源24からの交流バイアス電圧を重畳させて帯電電位(初期電位)を生成し、この帯電電位で、感光体10の表面を一様な表面電位に帯電させる。
この後、原稿を図示しない読取装置によってスキャンして得た画像データに従って感光体10の表面に露光装置30に備えられるレーザ光源32から発せられるレーザ・ビームをモータ36により回転駆動されるポリゴンミラー34でスキャンすることによって、感光体10表面を露光して潜像電位からなる静電潜像を形成する。
続いて、現像装置40は、図示しない攪拌機構において出力色のトナー粒子やキャリア粒子などでなる現像剤粒子102を混合しながら、その現像剤粒子102中のトナー粒子を感光体10の表面に形成されている静電潜像に重畳することでトナー像を感光体10の表面に形成させる。
すなわち、現像ロール140は、感光体10に対向して設けられており、現像ロール140に吸着された現像剤粒子102のうちトナー粒子は、帯電されており、静電気力により感光体10に吸着される。このとき、感光体10の表面は、記録画像に応じて露光されることで静電潜像が形成されており、トナー粒子は、感光体10に形成された静電潜像に応じて吸着される。これによって、感光体10の表面に形成された潜像は現像化される。現像処理後のキャリア粒子と、感光体10側に飛翔されなかったトナー粒子とは、収納容器101内に回収される。
この後、転写装置50は、感光体10の表面に形成されているトナー像を、外部から搬送されてきた印刷用紙上に転写する。感光体10と転写部54とが対向する予め決められた範囲を転写領域と称する。
転写済の用紙は定着装置70側に搬送され、定着装置70にて加熱溶融・圧着作用によりトナー像を転写体としての印刷用紙上に定着する。定着済の用紙は、図示しない排出装置によって、画像形成装置1の外に排紙される。
一方、クリーニング装置60は、転写装置50による転写後の感光体10の表面に残留する残留トナーを除去する。清掃後の感光体10の表面には残留電位が残っているが、帯電装置20で初期電位を印加してから次の電子写真プロセスに利用される。
なお、カラー画像形成用の画像形成装置1を構成する場合、画像形成に関わる主要部の構成としては、たとえば転写装置50にて直接に用紙に感光体10のトナー像を転写体である用紙に転写させるのではなく、たとえば、K(黒),Y(イエロー),M(マゼンタ),C(シアン)の出力色に対応する複数のエンジンを、たとえばK→Y→M→Cの順にインライン状に配列し、K,Y,M,Cの画像を4つのエンジンで並列的(同時進行的)に処理する、すなわち配置位置に応じた時間を隔てて、1色ずつ中間転写ベルトに感光体10のトナー像を転写(特に1次転写という)させ、その後、中間転写ベルト上のトナー像を用紙に転写(特に2次転写という)させるように構成したタンデム型のカラー画像形成装置にしてもよい。
このような電子写真プロセスでは、感光体10に対する帯電、スキャンした原稿イメージの露光、現像すなわち感光体10へのトナー重畳、用紙へのトナー転写およびトナー定着、感光体10のクリーニングという複数の工程からなる。電子写真プロセスでは、たとえば、攪拌、現像、転写などの各プロセスにおいて粉体挙動解析シミュレーションを適用することで、現実に画像形成実験を行なうことなく、形成される画像を予測し評価する。キャリア粒子およびトナー粒子の挙動の解析が、電子写真装置本体や現像装置40の開発にとって重要な要素となる。
たとえば、現像装置40の解析では、攪拌プロセスや現像プロセスなどが解析対象となる。たとえば、規制ブレード150の攪拌搬送ロール側の予め決められた範囲領域を層形成領域と称し、現像剤粒子102についての粒子挙動解析では、磁場および重力場の作用を考慮する。攪拌搬送ロールにより攪拌・搬送される予め決められた範囲領域を攪拌搬送領域と称し、現像剤粒子102についての粒子挙動解析では、重力場の作用を考慮する。
攪拌搬送領域と層形成領域との間の現像剤粒子102が現像ロール140に磁気吸着される予め決められた範囲領域をピックアップ領域と称し、現像剤粒子102についての粒子挙動解析では、磁場および重力場の作用を考慮する。
感光体10と現像ロール140の各周縁が対向し現像作用の行なわれる範囲領域を現像ニップ領域と称し、現像剤粒子102についての粒子挙動解析では、電場、磁場、重力場の作用を考慮する。現像剤粒子102の回収される予め決められた範囲領域をピックオフ領域と称し、現像剤粒子102についての粒子挙動解析では、磁場および重力場の作用を考慮する。
感光体10の表面は、記録画像に応じた静電潜像が形成されており、トナー粒子は、静電力により感光体10の表面に飛翔する。感光体10の表面には、飛翔したトナー粒子が付着し、記録画像に応じたトナー像が形成される。このとき、トナー粒子の感光体10への吸着のされ方によって、記録画像の画質が左右される。トナー粒子は、キャリア粒子により感光体10に搬送されているので、トナー粒子の感光体10への吸着のされ方は、現像ロール140と感光体10との間の現像ニップ領域でのキャリア粒子およびトナー粒子の挙動により決定される。
また、転写装置50における転写プロセスでは、感光体表面粗さや、感光体・中間転写ベルトや用紙などの転写体間の速度差、転写体の接触幅などの転写プロセスにおける条件パラメータを変更しながら、粉体挙動解析シミュレーションを繰り返し行なっていくことで、転写プロセスを再現しながら形成される画質の評価を行なう。因みに、転写プロセスについての粒子挙動解析では、現像剤粒子102(特にトナー粒子)に作用する電場および重力場を考慮する。
<粒子挙動解析システム>
図2〜図2Bは、本実施形態の粒子挙動解析システムの構成例を説明する図である。ここで、図2は比較例の粒子挙動解析システムを示すブロック図である。図2Aは、本実施形態の粒子挙動解析システムの第1構成例を示すブロック図である。図2Bは、本実施形態の粒子挙動解析システムの第2構成例を示すブロック図である。
図2〜図2Bは、本実施形態の粒子挙動解析システムの構成例を説明する図である。ここで、図2は比較例の粒子挙動解析システムを示すブロック図である。図2Aは、本実施形態の粒子挙動解析システムの第1構成例を示すブロック図である。図2Bは、本実施形態の粒子挙動解析システムの第2構成例を示すブロック図である。
粒子挙動解析システムにおいては、各相互作用の解析を行なう際、粒子分割法や力分割法を用いて解析する。以下では、特段の断りのない限り、力分割法を適用した粒子挙動解析を行なうものとして説明する。
比較例の粒子挙動解析システム200Cは、力分割法により粒子の挙動を解析する際に当該行以外の各計算ノードとの間で情報通信を行なう主通信線とは別に、力マトリクスにおける行方向の各計算ノードとの間で情報通信を行なう副通信線を行ごとに設けている。具体的には、粒子挙動解析システム200Cは、それぞれ粒子挙動解析機能を有する複数台の粒子挙動解析装置202が副通信線の一例であるサブネットワーク209_1(外部バス)にてネットワーク(バス)接続されて並列型計算装置として構成されている複数の粒子挙動解析システム200が、さらに、主通信線の一例であるメインネットワーク209_2(外部バス)で接続されて構成されている。構成的には、事実上の並列型計算装置をネットワーク接続してなるグリッド型計算装置に近いものである。
サブネットワーク209_1は、通信状態がルーティング機能を持つネットワーク管理装置208_1で管理されるようになっている。メインネットワーク209_2は、通信状態がルーティング機能を持つネットワーク管理装置208_2で管理されるようになっている。
なお、図では便宜的に、ネットワーク管理装置208_2から1本のネットワーク線を出し、そのネットワーク線上に主粒子挙動解析システム200aおよび副粒子挙動解析システム200b(詳細にはネットワーク管理装置208_1)を接続する態様で示しているが、実際には、ネットワーク管理装置208_2に備えられる個別のポートに各粒子挙動解析システム200のネットワーク管理装置208_1が接続され、各粒子挙動解析システム200間の通信は、ネットワーク管理装置208_2を介してなされるようになっている。
ネットワーク209(サブネットワーク209_1とメインネットワーク209_2)の通信仕様は不問とする。たとえば、通信プロトコルが同じものでもよいし異なるものでもよい。また、通信速度は、同じものでもよいし、異なるものでもよい。
図示した例では、粒子挙動解析システム200Cを構成する各粒子挙動解析システム200のうちの1つ(1つの並列計算装置)が全体を統括する主粒子挙動解析システム200aとして機能するようになっており、この主粒子挙動解析システム200aに対して残りの粒子挙動解析システム200が、主粒子挙動解析システム200aにより制御される副粒子挙動解析システム200b1,200b2,…としてメインネットワーク209_2で接続されている。粒子挙動解析システム200a,200b1,200b2,…は、各相互作用の解析を行なう際、力分割法を用いて解析する。
また、主粒子挙動解析システム200aの各粒子挙動解析装置202の内の1台が全体を統括する計算管理ノードの機能を持つ主粒子挙動解析装置202aとして機能するようになっている。主粒子挙動解析装置202aに対して残りの粒子挙動解析装置202が、主粒子挙動解析装置202aにより制御される副粒子挙動解析装置202bとしてネットワーク接続されている。一方、各副粒子挙動解析システム200bは、全てが副粒子挙動解析装置202bで構成されている。
各粒子挙動解析装置202は、一例として、一般の電子計算機と同様のもので構成する。ここで、比較例の粒子挙動解析システム200Cでは、各粒子挙動解析装置202は、本実施形態の構成の場合とは異なり、計算処理を行なうコア部分(いわゆるCPUの部分)が1つのシングルコアのものである。
粒子挙動解析システム200Cは、主要の処理データを相互にサブネットワーク209_1およびメインネットワーク209_2を介して伝達し合い、粒子挙動解析処理を並列的に実行する。ここで、サブネットワーク209_1が、力マトリクスとの行方向のデータ通信の他、行方向のファイル出力処理に寄与するように、計算ノードを割り当てる。基本的な考え方は、粒子挙動解析システム200a,200b1,200b2,…に属する各計算ノードは、力マトリクスの行方向に、同一位置のものとなるように割り当てる。たとえば、32粒子を16個のプロセッサで並列計算する場合は、1行分の計算ノードは4つになるので、2つの粒子挙動解析システム200(200a,200b1,200b2,200b3)で粒子挙動解析システム200Cを構成し、各粒子挙動解析システム200a,200b1,200b2,200b3を力マトリクスの行方向に割り当てる。
一方、本実施形態の粒子挙動解析システム200D,200Eは、比較例に対する変形例である。具体的には、比較例の粒子挙動解析システム200a,200b1,200b2,…のそれぞれを、複数のコア部分(いわゆるCPUの部分)を1つの筐体(半導体チップ)に収容したマルチコアを有する粒子挙動解析装置202に置き換えて構成している。よって、サブネットワーク209_1の部分は筐体外部に出ることはなく、事実上、同一の筐体に収容された内部配線209_3(内部バス)となっている。
たとえば、第1構成例の粒子挙動解析システム200Dの場合において、32粒子を16個のプロセッサで並列計算する場合は、1行分の計算ノードは4つになるので、同一の筐体に4つのCPUを収容したクワッドコア(Quad Core :4コア)CPUを有する粒子挙動解析装置202を4台使用し、各粒子挙動解析装置202(つまりクワッドコアCPU#0〜#3)を力マトリクスの行方向に割り当てる。その他の点に関しては、比較例と同様である。
一方、第2構成例の粒子挙動解析システム200Eは、第1構成例の主粒子挙動解析システム200aのみで構成したものである。32粒子を16個のプロセッサで並列計算する場合は、1行分の計算ノードは4つになるが、計算ノードごとに粒子挙動解析装置202を割り当てるのではなく、同一筐体内で4つ計算ノードの機能を持つように構成する。一例として、クワッドコアCPUを4個配置し、各クワッドコアCPU#0〜#3を力マトリクスの行方向に割り当てる。その他の点に関しては、比較例と同様である。
つまり、第1構成例は、各クワッドコアを別筐体(別の計算装置)に配置しそれらをネットワーク接続する(外部バスで接続する)構成である。一方、第2構成例は、各クワッドコアを同一筐体(1つの計算装置)に配置して、それらを内部バスのみで接続する構成である。
<粒子挙動解析装置:第1構成例>
図3〜図3Bは、粒子挙動解析装置202の第1構成例を説明する図である。ここで、図3は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図3Aは、一般ノードの機能を具備した副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図3Bは、粒子挙動解析装置202の第1構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置に対するメモリアクセスに着目したシステム構成図である。
図3〜図3Bは、粒子挙動解析装置202の第1構成例を説明する図である。ここで、図3は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図3Aは、一般ノードの機能を具備した副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図3Bは、粒子挙動解析装置202の第1構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置に対するメモリアクセスに着目したシステム構成図である。
粒子挙動解析装置202の第1構成例は、後述するバスアクセス制御の第1実施形態に適用されるものである。
図3に示すように、主粒子挙動解析装置202aは、指示入力装置210などを利用して処理対象データを取り込むデータ入力部220と、粒子挙動解析処理を行なうデータ処理部230と、処理結果を表示装置212などを利用して操作者に提示する情報提示部240とを備えている。データ入力部220と情報提示部240とは、主粒子挙動解析装置202aの計算管理ノードに相当する部分に設けられている。図3Aにも示すように、副粒子挙動解析装置202bは、このデータ処理部230のみで構成すればよい。
また、主粒子挙動解析装置202aの計算管理ノード側の筐体内に、処理対象要素を力分割法により分割するに当たり、それぞれ計算装置で構成され力分割法による粒子挙動解析を行なう各計算システム(プロセッサとも称する:図1では粒子挙動解析装置202)に各分割部分を割り当てる分割処理部250を備えている。
データ入力部220は、指示入力装置210を構成するキーボードやマウスを介して操作者より入力されるコマンドやデータを受け付け、データ処理部230、分割処理部250にそれぞれで必要とされるデータを渡す。
分割処理部250は、縦N・横Nの力マトリクスを使用するように設定し、各力マトリクスに解析対象粒子を割り当てる。
なお、分割処理部250は、各ノードでの計算負荷が概ね均等となるようにすることも考慮するのがよい。たとえば、処理対象要素を予め決められた分割法により分割するに当たり、それぞれ複数の計算装置で構成された各計算システム(粒子挙動解析システム200)における同一範囲時点での計算時間(ステップ当たりの計算時間)が同等となるように解析対象要素を配分する解析負荷分散処理部を具備する構成とする。この解析負荷分散処理部は、分割処理部250が兼用する構成(解析負荷分散処理部250aと記す)としてもよいし、分割処理部250とは別の機能要素として設けてもよい。
解析負荷分散処理部250aは、静電相互作用、磁気相互作用、機械的相互作用(接触力)、または付着力などの複数種類の粒子間相互作用を考慮する場合や、現像剤102を構成する物性の異なる複数種類の粒子(本例ではキャリア粒子、トナー粒子、外添剤)を解析対象とする場合においても、並列解析処理時の各マルチコア部239間の計算時間差が確実に小さくなるように、解析対象の作用力の相違や粒子種の相違を勘案して解析対象要素を配分する分割処理を行なう。
また解析負荷分散処理部250aは、粒子挙動解析システム200を構成する各粒子挙動解析装置202や、粒子挙動解析システム201を構成する各粒子挙動解析システム200の処理性能(計算能力)をも勘案して、解析対象要素を配分するのがよい。そして、解析負荷分散処理部250aは、分割担当領域や分割担当粒子(のグループ)をそれぞれ複数の計算装置(粒子挙動解析装置202)で構成された計算システム(粒子挙動解析システム200)に割り当てる。データ処理部230では、他の分割部分に関しての処理を担当する他の各マルチコア部239(そこに属する各数値演算処理部234)との間でデータ通信を行ないつつ、分割された担当する分割部分について、力分割法による粒子挙動解析を行なう。
力分割法を適用したデータ処理時には、粒子間距離と相互作用力との関係(相互作用力の距離依存性)を考慮して、解析対象粒子種を複数とする複数成分粒子系の解析時には複数のカットオフを設定してもよい。たとえば、解析対象の相互作用力が距離の近い粒子との相互作用についてのみ着目すればよい相互作用力(近距離力もしくは短距離力と称する)であるときにはカットオフを小さく設定し、距離の近い粒子とだけでなく距離の離れた粒子との相互作用についても着目する必要のある相互作用力(遠距離力もしくは長距離力と称する)であるときにはカットオフを大きく設定する。
データ処理部230は、データ入力部220から入力されたデータに基づいて粒子挙動解析処理を行なう。そのため、データ処理部230は、データ受付部232、解析負荷分散処理部233、メモリアクセス制御部237、データ記憶部238、複数の数値演算処理部234および一時記憶部238aを同一パッケージ(筐体)に具備するマルチコア部239を有している。
メモリアクセス制御部237は、粒子挙動解析装置202aの計算管理ノード側の筐体内に設けられている。メモリアクセス制御部237は、粒子挙動解析システム200D,200Eを構成する全ての粒子挙動解析装置202の外部記憶装置238bへのメモリアクセスを管理する。
マルチコア部239は、数値演算処理を行なう複数のプロセッサコア(単に「コア」とも称する)とキャッシュメモリと称される内蔵メモリを具備したマルチコアCPUで構成されるものである。ここでは一例として4個のプロセッサコアを具備するクアッドコアCPUの例で示す。
マルチコア部239は、各プロセッサコアが機能する4つの数値演算処理部234(234_1,234_2,234_3,234_4)、2つの数値演算処理部234ごとに設けられた出力データ処理部として機能するバスインタフェース部235(235_1,235_2)、2つの数値演算処理部234ごとに設けられた一時記憶部238a(238a_1,238a_2)を有する。
数値演算処理部234は、分割処理部250による分割処理により割り当てられた分割部分について、決められた分割法に従ってデータ記憶部238との間でデータ(情報)の入出力(メモリアクセス)を行ないながら計算を行なう粒子挙動計算部として機能する。
なお、この例では、2つの数値演算処理部234ごとにバスインタフェース部235(235_1,235_2)を設けているがこのことは必須ではなく、数値演算処理部234ごとに設けてもよいし、データ処理部230内の全ての数値演算処理部234に対して1つのバスインタフェース部235を設けてもよい。
データ記憶部238は、相互作用を計算するためのパラメータ表のデータを記憶する装置であり、メモリバスを介して数値演算処理部234に接続される。ここで、データ記憶部238は、粒子挙動解析装置202ごとに設けられる一時記憶部238aおよび外部記憶装置238bで構成される。
一時記憶部238aは、マルチコア部239が具備するCPUと同一の半導体基板上に内蔵されるいわゆるキャッシュメモリ(Cache Memory)である。外部記憶装置238bは、いわゆるメインメモリとも称される外部の半導体製の記憶媒体(たとえば数100MB〜数GB程度の容量のもの)、およびメインメモリより大容量(数100GB以上)のハードディスク装置(HDD)などである。周知のように、CPUのアクセスは、メインメモリよりもキャッシュメモリの方が高速である。
マルチコア部239は、外部記憶装置238bと各数値演算処理部234との間でデータ入出力と各粒子挙動解析装置202間の情報通信に同じバスを共用するものである。つまり、マルチコア部239は、各プロセッサコア間の通信(他の粒子挙動解析装置202のものも含む:以下コア間通信と称する)用および共有メモリ(外部記憶装置238b)へのアクセス(以下メモリアクセスと称する)用のバス(ネットワーク209を含む)を共有する構成となっている。
データ受付部232は、データ入力部220から入力されたデータを外部記憶装置238bに記憶し、数値計算時に必要なデータを数値演算処理部234に供給する。外部記憶装置238bには、たとえば、解析の対象としている現像装置40の構成および現像剤粒子102の座標、物性値に関するデータなどが記憶される。
解析負荷分散処理部233は、データ受付部232が受け付けた解析対象データ(外部記憶装置238bに保存される)を、さらに、マルチコア部239が備える各数値演算処理部234に分散する。解析負荷分散処理部233は、マルチコア部239(マルチコアCPU)の数値演算処理部234(プロセッサコア)ごとのメモリアクセスタイミングをずらすように粒子を割り当てることで負荷分散を図る。そのため具体的な仕組みとしては、一例として、各数値演算処理部234への粒子数や粒子種類の割合を変えることで実現する。
各数値演算処理部234は、解析負荷分散処理部233から供給されたデータに基づき、粒子の一例である現像剤粒子102(詳細にはキャリア粒子やトナー粒子など)について、磁気相互作用、静電相互作用、または機械的相互作用(接触力)など、複数の相互作用を同時に考慮した粒子挙動を、力分割法を適用してシミュレーション処理にて解析する。数値演算処理部234は、その解析結果の出力ファイルを予め決められたタイミングごとにバスインタフェース部235に供給する。
たとえば、先ず、主粒子挙動解析装置202aは、現時点において粒子挙動解析処理に使用可能な粒子挙動解析システム200を構成する粒子挙動解析装置202の数(プロセッサ数)を特定する。この後、計算に必要な各種物理パラメータや粒子の初期配置や力分割法で特に必要となる解析対象粒子数などの計算条件を読み込む。そして、特定した各粒子挙動解析装置202(プロセッサ)を、力分割法に従ってマトリクス配置して、解析対象の粒子(現像剤102を構成するキャリア粒子やトナー粒子)を割り当てる。
次に、複数種類の多体粒子間相互作用力を、特定プロセッサコアに分散して計算する。このとき、複数種類の多体粒子間相互作用に対しては、それぞれ別の力マトリックスを用いて計算する。たとえば、担当マトリクス中の相手粒子との間における磁気相互作用を、当該磁気相互作用解析用の力マトリックスを用いて解析処理する。次に、バスインタフェース部235を介して特定プロセッサコア間で通信し、磁気相互作用について、分散して計算した磁気相互作用力の総和値を求める。
同様にして、担当マトリクス中の相手粒子との間における静電相互作用を、当該静電相互作用解析用の力マトリックスを用いて解析処理する。次に、バスインタフェース部235を介して特定プロセッサコア間で通信し、静電相互作用について、分散して計算した静電相互作用力の総和値を求める。
また、担当マトリクス中の相手粒子との間における機械的相互作用(接触力)を、当該機械的相互作用解析用の力マトリックスを用いて解析処理する。次に、バスインタフェース部235を介して特定プロセッサコア間で通信し、機械的相互作用について、分散して計算した機械的相互作用力の総和値を求める。
さらに、磁気相互作用、静電相互作用、および機械的相互作用(接触力)のそれぞれについて求めた各総和値を加算して全総和値を求める。次に、磁気相互作用、静電相互作用、および機械的相互作用(接触力)の全総和値を使用して、各粒子の運動方程式を解き、位置座標を計算する。そして、このようにして求めた各粒子の位置座標を、相互作用マトリクスに関係する特定プロセッサコアに送り(通信し)、計算情報を更新する。この後、予め決められた計算ステップに到達するまで、同様の処理を繰り返す。
バスインタフェース部235は、各計算ステップでの計算データの受け渡しを各数値演算処理部234間(他の粒子挙動解析装置202のものも含む)で行なう以外に、予め決められた計算ステップごとに、数値演算処理部234での計算結果の出力ファイルを受け取り、情報提示部240に渡す。情報提示部240は、各粒子挙動解析装置202からのデータを集約して、表示データに変換し、表示装置212に供給する。表示装置212は、情報提示部240から供給された表示データに基づく処理結果画像を表示する。実際には確認困難な現像剤粒子102の挙動を視覚的に把握できるように、現像剤粒子102の挙動予測を可視化して表示装置212上に表示するのである。
なお、プロセッサコアは、数値演算処理部234として機能するだけでなく、その他の一般的な演算処理機能や制御機能など、一般的なCPUが備える機能を実現し得るものである。副粒子挙動解析装置202bには、CPU(本例の場合は各プロセッサコア)がプログラム処理により各機能部として機能するようにするための仕組みとして、一般的な電子計算機(コンピュータ)と同様の構成も備え、コンピュータシステムを構築している。
本実施形態において、粒子の挙動を解析する仕組みは、ハードウェア処理回路により構成することに限らず、その機能を実現するプログラムコードに基づき電子計算機(コンピュータ)を用いてソフトウェア的に実現することも可能である。よって、本実施形態に係る仕組みを、電子計算機(コンピュータ)を用いてソフトウェアで実現するために好適なプログラムまたはこのプログラムを格納したコンピュータ読取可能な記録媒体(記憶媒体)が発明として抽出される。ソフトウェアにより実行させる仕組みとすることで、ハードウェアの変更を伴うことなく、処理手順などが容易に変更されることとなる。
一連の粒子挙動解析処理はハードウェアまたはソフトウェアの単独に限らずその両者の複合構成によっても実現され得る。ソフトウェアによる処理を実行する場合、処理手順を示したプログラムを、ハードウェアに組み込まれたコンピュータ内の記憶媒体に組み込んで(インストールして)実行させたり、各種処理が実行可能な汎用の電子計算機にプログラムを組み込んで実行させる。
粒子挙動解析処理機能をコンピュータに実行させるプログラムは、CD−ROMなどの記録媒体を通じて配布される。または、このプログラムは、CD−ROMではなくFDに格納されてもよい。また、MOドライブを設け、MOに前記プログラムを格納してもよく、またフラッシュメモリなどの不揮発性の半導体メモリカードなど、その他の記録媒体にプログラムを格納してもよい。
ソフトウェアを構成するプログラムは、記録媒体を介して提供されることに限らず、有線または無線などの通信網を介して提供されてもよい。たとえば、他のサーバなどからインターネットなどのネットワークを経由してプログラムをダウンロードして取得したり、または更新したりしてもよい。粒子挙動解析処理を行なう機能を実現するプログラムコードを記述したファイルとしてプログラムが提供されるが、この場合、一括のプログラムファイルとして提供されることに限らず、コンピュータで構成されるシステムのハードウェア構成に応じて、個別のプログラムモジュールとして提供されてもよい。
たとえば、コンピュータシステムは、プロセッサコアが機能する中央制御部910、読出専用の記憶部であるROM(Read Only Memory)、または随時読出し・書込みが可能なメモリであるRAM(Random Access Memory)などを具備する記憶部912、操作部914、図示を割愛したその他の周辺部材を有する。ROMには粒子挙動解析処理機能用の制御プログラムなどが格納される。操作部914は、利用者による操作を受け付けるためのユーザインタフェースである。
なお、コンピュータシステムの制御系としては、メモリカードなどの図示を割愛した外部記録媒体を挿脱可能に構成し、またインターネットなどの通信網との接続が可能に構成するとよい。このためには、制御系は、中央制御部910や記憶部912の他に、可搬型の記録媒体の情報を読み込むメモリ読出部920や外部との通信インタフェース手段としての通信I/F922を備えるようにするとよい。メモリ読出部920を備えることで外部記録媒体からプログラムのインストールや更新ができる。通信I/F922を備えることで、通信網を介しプログラムのインストールや更新を行ない得るようになる。
なお、本実施形態の粒子挙動解析処理を実現するための情報処理装置の各部(機能ブロックを含む)の具体的手段は、ハードウェア、ソフトウェア、通信手段、これらの組み合わせ、その他の手段を用いてよく、このこと自体は当業者において自明である。また、機能ブロック同士が複合して1つの機能ブロックに集約されてもよい。また、コンピュータにプログラム処理を実行させるソフトウェアは、組合せの態様に応じて分散してインストールされ得る。
図3Bに示すように、粒子挙動解析装置202の第1構成例が適用されるシステム構成図では、外部記憶装置238bは、物理的には粒子挙動解析装置202ごとに設けられる。しかし、1つのメモリアクセス制御部237の制御の元で、論理的には1つのメモリ空間として扱われ、各粒子挙動解析装置202が共用する共有メモリとして機能する。
<粒子挙動解析装置:第2構成例>
図4〜図4Bは、粒子挙動解析装置202の第2構成例を説明する図である。ここで、図4は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図4Aは、一般ノードの機能を具備した副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図4Bは、粒子挙動解析装置202の第2構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置238bに対するメモリアクセスに着目したシステム構成図である。
図4〜図4Bは、粒子挙動解析装置202の第2構成例を説明する図である。ここで、図4は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図4Aは、一般ノードの機能を具備した副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図4Bは、粒子挙動解析装置202の第2構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置238bに対するメモリアクセスに着目したシステム構成図である。
粒子挙動解析装置202の第2構成例は、後述するバスアクセス制御の第2実施形態およびその変形例に適用されるものである。第1構成例との相違は、メモリアクセス制御部237が粒子挙動解析装置202ごとに配置される点にある。図4に示すように、主粒子挙動解析装置202aに関しては、計算管理ノード側の筐体や計算管理ノードに併設される粒子挙動解析装置202bにメモリアクセス制御部237を配置するとよい。
これにより、図4Bに示すように、各粒子挙動解析装置202に備えられる外部記憶装置238bは、それぞれのメモリアクセス制御部237の元で、マルチコア部239の各数値演算処理部234(プロセッサコア)が共用する共有メモリとして機能する。この場合でも、マルチコア部239は、各コア間通信およびメモリアクセス用のバス(本構成では内部バスでありネットワーク209は含まない)を共有する構成となっている。ただし、第1構成例とは異なり、各粒子挙動解析装置202の外部記憶装置238bは、他の粒子挙動解析装置202の外部記憶装置238bとは独立に扱われる。
<粒子挙動解析装置:第3構成例>
図5〜図5Cは、粒子挙動解析装置202の第3構成例を説明する図である。ここで、図5は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図5Aは、一般ノードの機能を具備し、かつグループを代表する副粒子挙動解析装置202bに着目したブロック図である。図5Bは、一般ノードの機能を具備し、かつグループを代表しない副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図5Cは、粒子挙動解析装置202の第3構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置238bに対するメモリアクセスに着目したシステム構成図である。
図5〜図5Cは、粒子挙動解析装置202の第3構成例を説明する図である。ここで、図5は、特に計算管理ノードの機能を具備した主粒子挙動解析装置202aに着目したブロック図である。図5Aは、一般ノードの機能を具備し、かつグループを代表する副粒子挙動解析装置202bに着目したブロック図である。図5Bは、一般ノードの機能を具備し、かつグループを代表しない副粒子挙動解析装置202bに着目したブロック図である。主粒子挙動解析装置202aは、副粒子挙動解析装置202bを含んで構成されている。図5Cは、粒子挙動解析装置202の第3構成例が適用される場合の粒子挙動解析システム200D,200Eにおける外部記憶装置238bに対するメモリアクセスに着目したシステム構成図である。
粒子挙動解析装置202の第3構成例は、後述するバスアクセス制御の第2実施形態およびその変形例に適用されるものである。第1・第2構成例との相違は、第1構成例と第2構成例を組み合わせたものとなっている点である。具体的には、粒子挙動解析システム200D,200Eの各粒子挙動解析装置202を複数のグループに分け、グループごとにメモリアクセス制御部237を配置する点にある。
よって、粒子挙動解析装置202の構成としては、基本的には、第1構成例と似通ったものとなっている。ただし、第1構成例とは異なり、メモリアクセス制御部237はグループを代表する何れかの粒子挙動解析装置202bに配置される。そのメモリアクセス制御部237は、自グループ内の全ての粒子挙動解析装置202bの外部記憶装置238bへのメモリアクセスを管理する。グループの何れかは、計算管理ノードを含むものとなるが、その場合、図5に示すように、計算管理ノード側の筐体や計算管理ノードに併設される粒子挙動解析装置202bにメモリアクセス制御部237を配置するとよい。
これにより、図5Cに示すように、各粒子挙動解析装置202に備えられる外部記憶装置238bは、グループごとに、それぞれのメモリアクセス制御部237の元で、論理的には1つのメモリ空間として扱われる。そのため、自グループに属する各外部記憶装置238bは、各マルチコア部239の各数値演算処理部234(プロセッサコア)が共用する共有メモリとして機能する。つまり、グループごとには、第1構成例の場合と同様の性質を持つ。この場合でも、マルチコア部239は、各コア間通信および計算データのメモリアクセス用のバスを共有する構成となっている。
一方、グループ間では、それぞれのメモリアクセス制御部237の元で自グループ内の各外部記憶装置238bが管理されるので、自グループ内の各外部記憶装置238bは、他グループの各外部記憶装置238bとは独立に扱われる。つまり、グループ間では、第2構成例の場合と同様の性質を持つ。
[バスアクセス競合]
粉体や粒体(何れも個々の粒子の集合体の意味である)の挙動をシミュレーションにより解析する仕組みが考えられている。たとえば、プリンタ装置、ファクシミリ装置、またはそれらの機能を有する複合機などの画像形成装置において使用される粉体(トナー粒子やキャリア粒子など)などにおける、1種もしくは複数種の粒子が混合された状態での粒子の挙動をシミュレーションにより解析する。
粉体や粒体(何れも個々の粒子の集合体の意味である)の挙動をシミュレーションにより解析する仕組みが考えられている。たとえば、プリンタ装置、ファクシミリ装置、またはそれらの機能を有する複合機などの画像形成装置において使用される粉体(トナー粒子やキャリア粒子など)などにおける、1種もしくは複数種の粒子が混合された状態での粒子の挙動をシミュレーションにより解析する。
たとえば、画像形成装置において電子写真方式を利用する図1に示した画像形成装置1の場合、一般的には、感光ドラムなどの光導電性絶縁体(図1の感光体10)上に一様な静電荷を与え、様々な手段によりこの光導電性絶縁体上に光像を照射することによって静電潜像を形成し、次いで、形成した潜像を現像器(図1の現像装置40)を用いて磁性粉体を用いて現像可視化し、紙などの記録媒体にトナー粉像を転写した後に定着させ、印刷物を得る。
このような電子写真方式による画像形成装置1においては、収納容器101に収容されている磁性粉体の攪拌や磁性ローラへの搬送、磁性ローラへの吸着、記録画像に応じて帯電され潜像が形成されている感光体への飛翔などの振る舞いが記録画像の画質に影響を与える。そこで、この磁性粉体の挙動の解析が電子写真装置本体(画像形成装置1)や現像装置40の開発にとって重要となる。
個々の粒子の挙動シミュレーションについては、個別要素法(DEM)、有限要素法(FEM)、離散粒子法などと呼ばれる方法が普及されている。個別要素法などは粉体を構成する個々の粒子の挙動を運動方程式に基づいて追跡することにより、精度よく粉体の挙動をシミュレートする方法である。粉体の性質を個々の粒子として取り扱う粒子挙動解析を粒子シミュレーションとも称する。
しかしながら、個別要素法などに基づいた粒子挙動計算アルゴリズムでは、概ね粒子数の2乗で解析負荷が増大するので、粒子数が多くなると、計算量が膨大になり、いくら計算機の性能が向上したとはいっても、実際の系と同等の粒子数での計算を実行することは困難な場合が多い。たとえば、有限要素法における数十万要素以上、個別要素法における数万粒子以上の大規模解析は計算量が膨大で1台の計算機で取り扱うことが難しくなる。
そこで、従来の粒子挙動シミュレーション方法として、計算時間の短縮を目的として、プログラムがインストールされた電子計算機を複数台使用し、各プログラムの並列化動作による分散処理を行なうことが提案されている。たとえば、複数の電子計算機をネットワークで接続したクラスタ上で、MPI(Message Passing Interface :メッセージ パッシング インタフェース)などの並列ライブラリを用いた解析プログラムを実行し、解析を複数のコンピュータで分散処理する並列計算が行なわれる。
一例として、力分割法の仕組みでは、各粒子の磁気力、静電気力、接触力の各粒子間相互作用について、それぞれ各別の力マトリクスを用いて、特定プロセッサコアに分散して計算、特定プロセッサコア間で通信し分散して計算した相互作用力の和を求め、各粒子の運動方程式を解いて位置座標を計算する。各粒子の位置座標を特定プロセッサコアに通信し、計算情報を更新し、予め定められている計算ステップに到達するまで、同様の処理を繰り返す。これにより、プロセッサ間通信量を低減させる。
一方、近年の半導体プロセスの微細化に伴い、1個の物理CPUに複数のCPUコアを有するマルチコアCPUが開発され、クラスタの高密度化を実現する仕組みが提案されている。たとえば、4つのプロセッサコア(CPUコア)を有するクアッドコアCPUを用いた場合、同じクラスタ容積に4倍のプロセッサコアを実装することになる上、プロセッサコア当たり電源ユニット数が1/4となり消費電力も低減される。
マルチコアCPUを用いたクラスタで並列計算を実行する場合、一般に分割された処理対象データがマルチコアCPUに順次投入され、プロセッサコアを全て使用した後、次のマルチコアCPUに処理対象データが投入される。
ここで、前述のように、本実施形態のマルチコア部239は、各コア間通信およびメモリアクセス用のバスを共有する構成となっており、このような構成のマルチコアCPUで、前記のようなデータ投入を行なった場合、コア間通信とメモリアクセスが競合することで待機が発生し、結果的には、挙動解析処理時間が長く掛ることになる。コア間通信とメモリアクセスが競合するような複数プロセッサを用いた並列処理では、並列数に応じて全処理時間における計算用データ通信時間の比率が増大し、並列化の効果が飽和してしまうのである。
そこで、本実施形態では、マルチコア部239(同一筐体:マルチコアCPU)内の各数値演算処理部234(プロセッサコア)によるバス(通信線)への情報の入出力時刻(バスアクセスタイミング)をずらすように制御することで、その解決を図る。そのために、具体的には、マルチコアCPUのコアごとのメモリアクセスタイミングをずらす、力分割での和をとる際にプロセッサコア(数値演算処理部234)間の通信タイミングをずらす、マルチコアCPUのコアごとのメモリアクセスおよび通信のタイミングをずらす、の何れかを採る。以下、各別に説明する。
<第1実施形態>
図6〜図6Aは、バスアクセス制御の第1実施形態を説明する図である。ここで、図6は、処理負荷の側面から第1実施形態を説明する図である。図6Aは、タイミングの側面から第1実施形態を説明する図である。
図6〜図6Aは、バスアクセス制御の第1実施形態を説明する図である。ここで、図6は、処理負荷の側面から第1実施形態を説明する図である。図6Aは、タイミングの側面から第1実施形態を説明する図である。
第1実施形態の仕組みは、解析負荷分散処理部233が機能することで実現される。解析負荷分散処理部233は、データ受付部232が受け付けた解析対象データを、さらに、数値演算処理部234(プロセッサコアコア)ごとのメモリアクセスタイミングをずらすように粒子を割り当てることで負荷分散を図る。
一例として、16個のキャリア粒子と32個のトナー粒子がマルチコア部239に供給される場合で説明する。トナー粒子に関しては電場のみに着目した解析でよく計算量は小さい。一方、キャリア粒子に関しては、磁場および電場に着目した解析が必要で、計算量は大きくなる。
第1実施形態を適用しない比較例の場合、各プロセッサコアにおける計算時間(計算負荷)が同等になるようにする。一例として、各数値演算処理部234へ割り当てる粒子数や粒子種割合を同じにする。図6(1)の例では、各数値演算処理部234(プロセッサコア)には、4個のキャリア粒子と8個のトナー粒子が割り当てられる。つまり、力分割法による粒子挙動の並列計算において、マルチコア部239に供給された計算対象粒子数および粒子種割合(各粒子種数とその配分比)を均等になるよう割り当てを決定し、マルチコアCPUに順次データを投入する。
各数値演算処理部234は、キャリア粒子およびトナー粒子の割当数は何れも同じであるのでキャリア粒子に関する計算時間およびトナー粒子に関する計算時間の何れもが同じになると考えてよい。そのため、各数値演算処理部234は、同じタイミングで計算処理が完了し、それぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングが同じになる。このとき、図6(4)に示すように、各コア間通信およびメモリアクセス用のバスを共有する構成では、実際には、図6A(1)に示すように、コア間通信とメモリアクセスが競合することで待機が発生してしまう。
一方、第1実施形態では、各コア間通信およびメモリアクセス用のバスを共有する構成のマルチコア部239(マルチコアCPU)を搭載した計算ノードを有し、その計算ノード(つまりマルチコア部239)を用いて並列計算処理を実行する際に、計算負荷が異なるよう処理対象データを分割し、マルチコア部239の各数値演算処理部234(プロセッサコア)に投入する。
たとえば、第1実施形態の第1例では、解析負荷分散処理部233は、各数値演算処理部234へ割り当てる粒子数を変える。複数種類の粒子を対象とするときには、粒子数を異ならせることで、自動的に粒子種類の割合を異ならせる。
図6(2)の例は、複数種類の粒子を対象とする解析時に、計算量の大きな粒子の割当数は各プロセッサコアで同じにするが、計算量の小さな粒子の割当数は各プロセッサコアで異なるように(不均等に)するものである。この例では、各数値演算処理部234(プロセッサコア)には、それぞれ4個のキャリア粒子を割り当てるが、トナー粒子の割当数を不均等にすることで粒子数および粒子種類の割合を変えている。具体的には、数値演算処理部234_1には6個のトナー粒子が割り当てられ、数値演算処理部234_2には10個のトナー粒子が割り当てられ、数値演算処理部234_3には7個のトナー粒子が割り当てられ、数値演算処理部234_4には9個のトナー粒子が割り当てられている。
各数値演算処理部234は、キャリア粒子の割当数は同じであるのでキャリア粒子に関する計算時間は同じであるが、トナー粒子の割当数が異なるのでトナー粒子に関する計算時間が異なる。そのため、図6A(2)に示すように、各数値演算処理部234は、それぞれ異なるタイミングで計算処理が完了し、他の数値演算処理部234と通信し得るタイミングやそれぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングも異なる。異なる計算処理完了の間の期間にコア間通信を行ない得るようになるようになる。よって、図6(4)に示すように、各コア間通信およびメモリアクセス用のバスを共有する構成でも、コア間通信とメモリアクセスの競合が緩和・解消される。
他方、第1実施形態の第2例では、解析負荷分散処理部233は、複数種類の粒子を対象とするときに、各数値演算処理部234へ割り当てる粒子数は同じにするが粒子種類の割合を異ならせる。
図6(3)に示すように、具体的には、数値演算処理部234_1には2個のキャリア粒子および10個のトナー粒子が割り当てられ、数値演算処理部234_2には6個のキャリア粒子および6個のトナー粒子が割り当てられ、数値演算処理部234_3には3個のキャリア粒子および9個のトナー粒子が割り当てられ、数値演算処理部234_4には5個のキャリア粒子および7個のトナー粒子が割り当てられている。
各数値演算処理部234は、キャリア粒子およびトナー粒子の各割当数が異なるのでキャリア粒子に関する計算時間およびトナー粒子に関する計算時間が異なる。そのため、図6A(3)に示すように、各数値演算処理部234は、それぞれ異なるタイミングで計算処理が完了し、他の数値演算処理部234と通信し得るタイミングやそれぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングも異なる。異なる計算処理完了の間の期間にコア間通信を行ない得るようになるようになる。よって、各コア間通信およびメモリアクセス用のバスを共有する構成でも、コア間通信とメモリアクセスの競合が緩和・解消される。
複数のプロセッサコアを使用して並列計算を実行する際に、各プロセッサコアでの計算負荷が異なるように処理対象データを割り当てることで、計算負荷が異なる処理対象データを各プロセッサコアに順次投入した場合でも、コア間の通信とメモリアクセスのタイミングがずらされる。そのため、バスの競合と待機の発生が防止され、解析時間(実質的な計算時間)の増加が抑制される。
ここで、第1例と第2例を比べると、第2例は計算量の大きなキャリア粒子の割当数を各数値演算処理部234(プロセッサコア)で異ならせている。そのため、第2例は、各数値演算処理部234の計算処理完了のタイミングズレが第1例よりも大きく、計算処理完了の間の期間にコア間通信やメモリアクセスを行ない得る期間が長くなる利点がある。
<第2実施形態>
図7〜図7Aは、バスアクセス制御の第2施形態を説明する図である。ここで、図7は、処理負荷(処理対象データの投入)の側面から第2実施形態を説明する図である。図7Aは、タイミングの側面から第2実施形態を説明する図である。
図7〜図7Aは、バスアクセス制御の第2施形態を説明する図である。ここで、図7は、処理負荷(処理対象データの投入)の側面から第2実施形態を説明する図である。図7Aは、タイミングの側面から第2実施形態を説明する図である。
第2実施形態の仕組みは、分割処理部250が備える解析負荷分散処理部250a、解析負荷分散処理部233、バスインタフェース部235が協調して機能することで実現される。これら各部は、マルチコア部239(マルチコアCPU)の数値演算処理部234(プロセッサコア)ごとのメモリアクセスと通信タイミングをずらすように制御する。
そのため先ず、解析負荷分散処理部250aと解析負荷分散処理部233が協調して機能することで負荷分散を図る。負荷分散を図るという点においては第1実施形態と同様であるが、分散のさせ方が異なる。
具体的には、先ず、解析負荷分散処理部233は、各マルチコア部239の数値演算処理部234(プロセッサコア)を1つずつ使用し、第1実施形態と同様に、データ受付部232が受け付けた解析対象データを、さらに、数値演算処理部234(プロセッサコアコア)ごとのメモリアクセスタイミングをずらすように粒子を割り当てることで負荷分散を図る。
「メモリアクセスタイミングをずらす」ときには、何れかの筐体内のマルチコア部239のそれぞれに割り当てられた粒子に関する計算情報が数値演算処理部234に投入され、このマルチコア部239で計算情報が全て使用された後、他の筐体のマルチコア部239のそれぞれに割り当てられた粒子に関する計算情報が各数値演算処理部234に投入されるように、計算情報の投入を順に制御することで実現する。
好ましくは、解析負荷分散処理部250aは、各筐体に収容された各マルチコア部239での合計の計算負荷が均等になるように粒子数や粒子種割合を設定する。
第2実施形態を適用しない比較例の場合、負荷分散という点においては、解析負荷分散処理部233が存在せず、解析負荷分散処理部250aのみが機能する。そのため、負荷分散を行なう場合、解析負荷分散処理部250aは、各マルチコア部239での計算負荷が不均等となるように粒子数や粒子種割合を設定することになる。図7(1)の例では、第1のマルチコア部239_1は処理負荷が最も軽い処理1が設定され、第2のマルチコア部239_2は処理負荷が2番目に軽い処理2が設定され、第3のマルチコア部239_3は処理負荷が2番目に重い処理3が設定され、第4のマルチコア部239_4は処理負荷が最も重い処理4が設定されている。
各マルチコア部239間では処理負荷が異なるので、一見するとバスの競合が避けられると考えられる。しかしながら、各マルチコア部239内の各数値演算処理部234は、それぞれの処理負荷が均等になるように設定されている。そのため、各マルチコア部239内の各数値演算処理部234は、同じタイミングで計算処理が完了し、それぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングが同じになる。このとき、図6(4)に示したように、各コア間通信およびメモリアクセス用のバスを共有する構成では、実際には、図7A(1)に示すように、内部バスにおいて、コア間通信とメモリアクセスが競合することで待機が発生してしまう。このことは、第1実施形態に対する比較例の場合と同様である。
一方、第2実施形態では、各コア間通信およびメモリアクセス用のバスを共有する構成のマルチコア部239(マルチコアCPU)を搭載した計算ノードを有し、その計算ノード(つまりマルチコア部239)を複数用いて並列計算処理を実行する際に、マルチコア部239ごとの負荷(マルチコア部239内の複数の数値演算処理部234に割り当てられる処理負荷の合計)は均等にする。さらに、第1実施形態と同様に、計算負荷が異なるよう処理対象データを分割し、各マルチコア部239の各数値演算処理部234(プロセッサコア)に投入する。また、並列計算処理を実行する際に、分割された処理対象データをマルチコア部239(マルチコアCPU)に順次投入し、そこに属する数値演算処理部234(プロセッサコア)を全て使用した後、次のマルチコア部239(マルチコアCPU)に処理対象データを投入する。
そのため、好ましくは、解析負荷分散処理部250aは、各マルチコア部239での計算負荷が均等となるように粒子数や粒子種割合を設定する。たとえば、図7(2)に示すように、各マルチコア部239に対し処理負荷が最も軽い処理1を4等分して配置し、同様に処理2,3,4もそれぞれ4等分して配置する。処理1,2,3,4をそれぞれ4等分した処理をそれぞれ処理1_@,2_@,3_@,4_@(@ はマルチコア部239の番号)と記す。
解析負荷分散処理部233は、それぞれ4等分された処理1_@,2_@,3_@,4_@を各数値演算処理部234(プロセッサコア)に割り当てる。たとえば、処理1_@は第1の数値演算処理部234_1、処理2_@は第2の数値演算処理部234_2、処理3_@は第3の数値演算処理部234_3、処理4_@は第4の数値演算処理部234_4に割り当てる。
各マルチコア部239間では処理負荷が均等であるので、一見するとバスの競合が発生すると考えられる。しかしながら、各マルチコア部239_@では、数値演算処理部234ごとに処理負荷が異なる。そのため、図7A(2)に示すように、各数値演算処理部234は、それぞれ異なるタイミングで計算処理が完了し、他の数値演算処理部234と通信し得るタイミングやそれぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングも異なる。異なる計算処理完了の間の期間にコア間通信を行ない得るようになるようになる。このことは、第1実施形態の第1例や第2例と同様である。よって、各コア間通信およびメモリアクセス用のバスを共有する構成でも、自マルチコア部239内では、コア間通信とメモリアクセスの競合が解消される。
また、実際の通信相手は、自マルチコア部239内の数値演算処理部234間に限らず、他のマルチコア部239内の数値演算処理部234間とも起こり得る。その場合、処理1_@,2_@,3_@,4_@の内の同じ系統の処理が割り当てられた数値演算処理部234との間では競合が起き得るが、異なる系統の処理が割り当てられた数値演算処理部234との間では競合が避けられる。
複数のプロセッサコアを具備する複数のマルチコアCPUを使用して並列計算を実行する際に、分割された処理対象データを各マルチコアCPUのプロセッサコアを1つずつ使用するよう投入することで、コア間の通信とメモリアクセスのタイミングがずらされる。そのため、バスの競合と待機の発生が防止され、解析時間(実質的な計算時間)の増加が抑制される。
第2実施形態は、クラスタに搭載されたプロセッサコア(CPUコア)数より並列計算で使用するコア数が少ない場合に効果が大きいが、並列計算で使用するプロセッサコアが多い場合は分割された処理対象データごとに計算負荷が異なるようにすることで同様の効果が得られる。
<第2実施形態:変形例>
図7〜図7Cは、バスアクセス制御の第2実施形態の変形例を説明する図である。ここで、図7Bは、処理負荷(処理対象データの投入)の側面から第2実施形態の変形例を説明する図である。図7Cは、タイミングの側面から第2実施形態の変形例を説明する図である。
第2実施形態の変形例では、各マルチコア部239(マルチコアCPU)の数値演算処理部234(プロセッサコア)を1つずつ使用するよう順次処理対象データを投入する。
図7〜図7Cは、バスアクセス制御の第2実施形態の変形例を説明する図である。ここで、図7Bは、処理負荷(処理対象データの投入)の側面から第2実施形態の変形例を説明する図である。図7Cは、タイミングの側面から第2実施形態の変形例を説明する図である。
第2実施形態の変形例では、各マルチコア部239(マルチコアCPU)の数値演算処理部234(プロセッサコア)を1つずつ使用するよう順次処理対象データを投入する。
図7〜図7Aで説明した第2実施形態の基本例との相違は、4つの数値演算処理部234で構成されているマルチコア部239を5つ使用したシステム構成である点である。
図7B(1)の比較例では、5つのマルチコア部239_@にそれぞれ負荷が異なる処理が設定されている。たとえば、第1のマルチコア部239_1は処理負荷が最も軽い処理1が設定され、第2のマルチコア部239_2は処理負荷が2番目に軽い処理2が設定され、第3のマルチコア部239_3は処理負荷が中間の処理3が設定され、第4のマルチコア部239_4は処理負荷が2番目に重い処理4が設定され、第5のマルチコア部239_5は処理負荷が最も重い処理5が設定されている。
第2実施形態の基本例と同様に、図7B(1)の比較例において図6(4)に示す各コア間通信およびメモリアクセス用のバスを共有する構成では、図7C(1)に示すように、内部バスにおいて、コア間通信とメモリアクセスが競合することで待機が発生してしまう。
一方、図7B(2)の第2実施形態の変形例では、各マルチコア部239_@を1つずつ使用し、第1実施形態と同様に、データ受付部232が受け付けた解析対象データを、さらに、数値演算処理部234(プロセッサコアコア)ごとのメモリアクセスタイミングをずらすように粒子を割り当てることで負荷分散を図る。
各マルチコア部239_@では、数値演算処理部234ごとに処理負荷が異なる。そのため、図7C(2)に示すように、各数値演算処理部234は、それぞれ異なるタイミングで計算処理が完了し、他の数値演算処理部234と通信し得るタイミングやそれぞれの計算結果のファイルを計算管理ノードの情報提示部240に渡し得るタイミングも異なる。異なる計算処理完了の間の期間にコア間通信を行ない得るようになるようになる。このことは、第1実施形態の第1例や第2例と同様である。よって、各コア間通信およびメモリアクセス用のバスを共有する構成でも、自マルチコア部239内では、コア間通信とメモリアクセスの競合が解消される。
ただし、各マルチコア部239_@の負荷が異なることにより、計算完了時間がばらつくため、効果は最大にはならない。これに対して、第2実施形態の基本例では、各マルチコア部239の負荷が同一になるので効果が最大になる。
なお、第2実施形態及びその変形例は、粒子挙動解析装置202の第2・第3構成例に適用されるが、コア間通信とメモリアクセスの競合・待機を緩和・解消するという点においては、第2構成例に適用した方が効果が高い。
以上、本発明について実施形態を用いて説明したが、本発明の技術的範囲は前記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で前記実施形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
また、前記の実施形態は、クレーム(請求項)にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
前記実施形態は、情報処理装置が適用される具体例として粒子挙動解析装置を例に説明するとともに、解析対象粒子が存在する装置としては画像形成装置を例に説明したが、これは一例に過ぎない。
たとえば、粒子挙動解析は、現像装置40における攪拌プロセスや現像プロセスへの適用に限定されない。たとえば、電子写真方式の転写装置における転写プロセスや、クリーニング装置における清掃プロセスにも適用してよい。また、粒子種や作用力を問わず、あらゆる粒子(粉体)を取り扱うシステムのシミュレーションにも同様に適用してよい。電子写真方式以外では、岩石などの落石シミュレーション、ホッパー内の粉の流動シミュレーション、製薬用製剤装置内の粉末体の流動シミュレーションなどへ適用してもよい。
また、前記実施形態の仕組みは、複数のプロセッサコアを有する情報処理装置において、同一バスを使用してコア間通信とメモリアクセスを行なうことに伴う処理効率低下を抑制するものであるから、同様のシステム構成を持つ情報処理装置(情報処理システム)に、前記実施形態の仕組みが同様に適用されることは自明である。その場合、計算処理対象は粒子挙動解析に限定されず、一般的なものでよく、数値演算処理部234は入力された計算情報に基づき情報処理計算を行なう計算部に置き換え、バスインタフェース部235は、情報処理計算の結果の出力可否を切り替えるものとすればよい。
1…画像形成装置、10…感光体、20…帯電装置、30…露光装置、40…現像装置、50…転写装置、60…クリーニング装置、70…定着装置、102…現像剤粒子、140…現像ロール、200…粒子挙動解析システム、202…粒子挙動解析装置、208…ネットワーク(通信線)、209_1…サブネットワーク(副通信線)、209_2…メインネットワーク(主通信線)、209_3…内部配線(副通信線)、210…指示入力装置、212…表示装置、220…データ入力部、230…データ処理部、232…データ受付部、233…解析負荷分散処理部、234…数値演算処理部(粒子挙動計算部)、235…バスインタフェース部、237…メモリアクセス制御部、238…データ記憶部、240…情報提示部、250…分割処理部、250a…解析負荷分散処理部
Claims (11)
- 解析対象範囲内の粒子に関する計算情報を記憶する記憶部と、
予め決められた分割法に従って前記記憶部との間で計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、
解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当てる解析負荷分散処理部と、
を備え、
複数の前記粒子挙動計算部が同一筐体に収容されており、
前記通信線は、前記記憶部と前記複数の粒子挙動計算部との間で情報の入出力と各粒子挙動計算部間の情報通信に共用されるものであり、
前記解析負荷分散処理部は、前記複数の粒子挙動計算部で並列計算処理を実行する際の計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる
粒子挙動解析装置。 - 前記解析負荷分散処理部は、各粒子挙動計算部に割り当てる前記粒子の数を異ならせることで、前記計算負荷が異なるようにする
請求項1に記載の粒子挙動解析装置。 - 前記解析負荷分散処理部は、前記粒子に作用する作用力の種類や前記粒子の種類に基づいて、計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる
請求項1に記載の粒子挙動解析装置。 - 前記解析負荷分散処理部は、各粒子挙動計算部に割り当てる前記粒子の数を同じにし、かつ、各粒子挙動計算部に割り当てる粒子種類の割合を異ならせることで、前記計算負荷が異なるようにする
請求項3に記載の粒子挙動解析装置。 - 前記解析負荷分散処理部は、何れかの筐体に前記複数の粒子挙動計算部のそれぞれに割り当てられた粒子に関する計算情報が投入され、当該筐体に収容された前記複数の粒子挙動計算部で計算情報が全て使用された後、他の筐体に前記複数の粒子挙動計算部のそれぞれに割り当てられた粒子に関する計算情報が投入されるように、計算情報の投入を順に制御する
請求項1〜4の内の何れか一項に記載の粒子挙動解析装置。 - 前記複数の粒子挙動計算部を収容する筐体を複数備え、
前記解析負荷分散処理部は、各筐体に収容された前記複数の粒子挙動計算部の合計の前記計算負荷が同じになるようにする
請求項5に記載の粒子挙動解析装置。 - 解析対象範囲内の粒子に関する計算情報を記憶する記憶部との間で、予め決められた分割法に従って計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、
解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当て、かつ、前記複数の粒子挙動計算部で並列計算処理を実行する際の計算負荷が異なるように、前記粒子を各粒子挙動計算部に割り当てる解析負荷分散処理部と、
してコンピュータを機能させるプログラム。 - 計算情報を記憶する記憶部と、
前記記憶部との間で計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、
計算情報を、通信線で接続された複数の計算部のそれぞれに割り当てる解析負荷分散処理部と、
を備え、
複数の前記計算部が同一筐体に収容されており、
前記通信線は、前記記憶部と前記複数の計算部との間で情報の入出力と各計算部間の情報通信に共用されるものであり、
前記解析負荷分散処理部は、前記複数の計算部で並列情報処理計算を実行する際の計算負荷が異なるように、前記計算情報を各計算部に割り当てる
情報処理装置。 - 計算情報を記憶する記憶部との間で、計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、
計算情報を通信線で接続された複数の計算部のそれぞれに割り当て、かつ、前記複数の計算部で並列情報処理計算を実行する際の計算負荷が異なるように、前記計算情報を各計算部に割り当てる解析負荷分散処理部と、
してコンピュータを機能させるプログラム。 - 解析対象範囲内の粒子に関する計算情報を記憶する記憶部と、
予め決められた分割法に従って前記記憶部との間で計算情報の入出力を行ないながら粒子挙動計算を行なう複数の粒子挙動計算部と、
解析対象範囲内の粒子を、通信線で接続された複数の粒子挙動計算部のそれぞれに割り当てる解析負荷分散処理部と、
を備え、
複数の前記粒子挙動計算部が同一筐体に収容されており、
前記通信線は、前記記憶部と前記複数の粒子挙動計算部との間で情報の入出力と各粒子挙動計算部間の情報通信に共用されるものであり、
同一筐体内の前記複数の粒子挙動計算部によるそれぞれの前記通信線への情報の入出力時刻をずらすように制御する
粒子挙動解析装置。 - 計算情報を記憶する記憶部との間で、計算情報の入出力を行ないながら情報処理計算を行なう複数の計算部と、
計算情報を通信線で接続された複数の計算部のそれぞれに割り当てる解析負荷分散処理部と、
してコンピュータを機能させ、
同一筐体内の前記複数の粒子挙動計算部によるそれぞれの前記通信線への情報の入出力時刻をずらすように制御する
プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009067500A JP2010218500A (ja) | 2009-03-19 | 2009-03-19 | 粒子挙動解析装置、情報処理装置、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009067500A JP2010218500A (ja) | 2009-03-19 | 2009-03-19 | 粒子挙動解析装置、情報処理装置、プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010218500A true JP2010218500A (ja) | 2010-09-30 |
Family
ID=42977224
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009067500A Pending JP2010218500A (ja) | 2009-03-19 | 2009-03-19 | 粒子挙動解析装置、情報処理装置、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010218500A (ja) |
-
2009
- 2009-03-19 JP JP2009067500A patent/JP2010218500A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Amaral et al. | DRMaestro: orchestrating disaggregated resources on virtualized data-centers | |
JP4946069B2 (ja) | 粒子挙動解析方法および粒子挙動解析装置並びにプログラム | |
JP2011008382A (ja) | 粒子挙動解析システム、情報処理装置、粒子挙動解析装置、情報処理システム、プログラム | |
JP4725189B2 (ja) | 粒子挙動解析装置及び粒子挙動解析方法、並びにコンピュータ・プログラム | |
CN104999810B (zh) | 打印装置及打印装置的控制方法 | |
JP2007017380A (ja) | 粒子シミュレーション装置及び粒子シミュレーション方法、並びにコンピュータ・プログラム | |
JP5521346B2 (ja) | 粒子挙動解析装置、プログラム | |
JP2010198399A (ja) | 粒子挙動解析装置、プログラム | |
JP2010218500A (ja) | 粒子挙動解析装置、情報処理装置、プログラム | |
JP2010079493A (ja) | 粒子挙動解析装置、プログラム | |
JP2007280242A (ja) | 粒子挙動解析方法および粒子挙動解析装置並びにプログラム | |
JP5417865B2 (ja) | 粒子挙動解析装置およびプログラム | |
JP2007265097A (ja) | 粒子挙動解析方法および粒子挙動解析装置並びにプログラム | |
JP2009134504A (ja) | 粒子挙動解析装置、プログラム | |
JP5217227B2 (ja) | 粒子挙動解析装置、プログラム | |
JP2009075708A (ja) | 粒子挙動解析装置、プログラム | |
JP2007304904A (ja) | 粒子挙動解析方法および粒子挙動解析装置並びにプログラム | |
JP2010072978A (ja) | 粒子挙動解析システム、粒子挙動解析装置、情報出力装置、プログラム | |
JP2011022894A (ja) | 粒子挙動解析システム、情報処理装置、粒子挙動解析装置、プログラム | |
JP2010072379A (ja) | 粒子挙動解析装置、プログラム | |
JP2009075201A (ja) | 粒子挙動解析装置、プログラム | |
JP2008170696A (ja) | 粒子挙動解析装置、プログラム | |
JP4967646B2 (ja) | 粒子挙動解析装置、プログラム | |
JP4479561B2 (ja) | 情報処理システム及び情報処理方法 | |
JP4760086B2 (ja) | シミュレーション装置及びシミュレーション、並びにコンピュータ・プログラム |