JP2010134722A - 統合シミュレーションシステムおよび同期制御方法 - Google Patents

統合シミュレーションシステムおよび同期制御方法 Download PDF

Info

Publication number
JP2010134722A
JP2010134722A JP2008310275A JP2008310275A JP2010134722A JP 2010134722 A JP2010134722 A JP 2010134722A JP 2008310275 A JP2008310275 A JP 2008310275A JP 2008310275 A JP2008310275 A JP 2008310275A JP 2010134722 A JP2010134722 A JP 2010134722A
Authority
JP
Japan
Prior art keywords
simulation
time
cycle
delay
calculation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008310275A
Other languages
English (en)
Other versions
JP5247395B2 (ja
Inventor
Kazunori Araya
和徳 荒谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2008310275A priority Critical patent/JP5247395B2/ja
Publication of JP2010134722A publication Critical patent/JP2010134722A/ja
Application granted granted Critical
Publication of JP5247395B2 publication Critical patent/JP5247395B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】演算部間に負荷の偏りが生じた場合に、システム全体の計算時間を短縮することができる統合シミュレーションシステムを得ること。
【解決手段】シミュレーション演算部1−1〜1−Nが分散処理によるシミュレーション処理を実施する統合シミュレーションシステムであって、シミュレーション演算部1−1〜1−Nは、自身のシミュレーション処理の進行を示すシミュレーション時刻とシミュレーションサイクルとを他のシミュレーション演算部1−1〜1−Nに通知し、また、他のシミュレーション演算部1−1〜1−Nのシミュレーション時刻と自身のシミュレーション時刻に基づいて自身の処理が遅延していると判定した場合にはシミュレーションサイクルを増加させるよう変更する。
【選択図】 図1

Description

本発明は、複数のシミュレーション演算部を備える統合シミュレーションシステムに関する。
従来の統合シミュレーションシステムは、システム内の複数のシミュレーション演算部が接続情報や時間情報を含むメッセージを交換しており、各シミュレーション演算部は自己の処理分を完了するとシミュレーション上の時間を進行させる要求を通知する。そして、その通知を受信した他のシミュレーション演算部は、通知に基づいて次の処理を進行することにより、シミュレーション実行上の時間的な同期をとっている(たとえば、下記特許文献1参照)。
特開平8−171552号公報
しかしながら、上記従来の技術によれば、分散する各シミュレーション演算部の処理の時間的な同期をとる際に、各シミュレーション演算部の処理能力や処理量が異なる場合にも、各シミュレーション演算部の進行要求の範囲内で次の処理を進行する。そのため、処理のもっとも遅いシミュレーション演算部が処理を完了するまで、処理を終えた他のシミュレータが十分な処理能力を有していても、統合シミュレーションシステム全体のシミュレーション時間を進めることができず、処理全体の時間進行が遅くなる、という問題点があった。
本発明は、上記に鑑みてなされたものであって、シミュレータ間に負荷の偏りが生じた場合に、システム全体の計算時間を短縮することができる統合シミュレーションシステムおよび同期制御方法を得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明は、複数の演算手段を備え、前記演算手段が分散処理によるシミュレーション処理を実施する統合シミュレーションシステムであって、前記演算手段は、自身が実施するシミュレーション処理の進行を示すシミュレーション時刻と自身のシミュレーション時刻の進み方を示すシミュレーションサイクルとを他の演算手段に通知し、また、他の演算手段のシミュレーション時刻と自身のシミュレーション時刻に基づいて自身の処理が遅延しているかを判定し、自身の処理が遅延していると判定した場合にはシミュレーションサイクルを増加させるよう変更することを特徴とする。
この発明によれば、複数のシミュレーション演算部がそれぞれ自身の演算の進行度合いを示すシミュレーション時刻を送信し、各シミュレーション演算部は、他のシミュレーション演算部のシミュレーション時刻と自身のシミュレーション時刻を比較し、比較により自身の処理が遅延していると判断した場合にシミュレーションサイクルを拡大するようにしたので、シミュレーション演算部間に負荷の偏りが生じた場合に、システム全体の計算時間を短縮することができる、という効果を奏する。
以下に、本発明にかかる統合シミュレーションシステムおよび同期制御方法の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
図1は、本発明にかかる統合シミュレーションシステムの実施の形態1の構成例を示す図である。図1に示すように、本実施の形態の統合シミュレーションシステムは、シミュレーション演算を行うシミュレーション演算部1−1〜1−N(Nは2以上の整数)と、シミュレーション演算部1−1〜1−Nの処理時間の監視をし、監視結果に基づいてシミュレーションサイクルを制御する同期整合制御部2と、で構成される。本実施の形態の統合シミュレーションシステムは、全体処理を分割してシミュレーション演算部1−1〜1−Nに割り当て、シミュレーション演算部1−1〜1−Nが割り当てられた処理を並行して処理を行う分散処理を行う。
シミュレーション演算部1−1〜1−Nは、それぞれ、シミュレーション演算を行うモデル計算部11と、他のシミュレーション演算部と連携して統合シミュレーションを行なうためのシミュレーション時刻を制御する時刻制御部12と、他のシミュレーション演算部に通知するためのパラメータデータを生成するパラメータ生成部13と、同期整合制御部2からパラメータデータやメッセージを受け取るデータ入力部14と、時刻情報やシミュレーション演算の計算ステップに相当するシミュレーションサイクルとパラメータデータなどのメッセージを他のシミュレーション演算部に通知するために同期整合制御部2へ送信するデータ出力部15と、を備えている。
また、同期整合制御部2は、シミュレーション演算部1−1〜1−Nからメッセージを受け取るデータ入力部21と、シミュレーション演算部1−1〜1−Nにメッセージを通知するデータ出力部22と、受け取ったメッセージからパラメータデータを抽出するパラメータ情報処理部23と、メッセージからシミュレーションの同期時刻情報を読み取り各シミュレーション演算部の進行度を監視する時刻監視部24と、シミュレーション演算部1−1〜1−Nのシミュレーション時刻とシミュレーションサイクルを記録保存する時刻記録部25と、シミュレーション演算部1−1〜1−Nの進行度にあわせて通知先のシミュレーションサイクルの増減を設定する時刻同期部26と、必要に応じてメッセージの通知タイプを決定し時刻情報やパラメータデータからメッセージを生成するメッセージ生成部27と、を備えている。
つづいて、本実施の形態の動作について説明する。まず、シミュレーション演算部1−1〜1−Nは、各々固有のシミュレーション上の時刻であるシミュレーション時刻を管理し、シミュレーション時刻の進行に合わせてモデル計算部11が各シミュレーションを個別に行なう。また、シミュレーション演算は、シミュレーションサイクル刻みでシミュレーション時刻を進行させることとする。
また、シミュレーション演算部1−1〜1−Nの間で情報を共有するためのパラメータデータを定義しておき、シミュレーション演算部1−1〜1−Nは、自身以外のシミュレーション演算部から出力されたパラメータデータを用いて、分散シミュレーションを実行する。シミュレーション演算部1−1〜1−Nは、それぞれ、パラメータ生成部13がモデル計算部11の演算結果から適宜シミュレーション演算部1−1〜1−N間で共有する必要のあるパラメータデータを抽出する。また、パラメータ生成部13は、パラメータデータにシミュレーションの進行を同期させるためのシミュレーション時刻およびシミュレーションサイクル等を制御情報として付加し、制御情報を付加したパラメータデータをデータ出力部15から同期整合制御部2へ送信する。
同期整合制御部2のデータ入力部21はシミュレーション演算部1−1〜1−Nから受信したデータ(制御情報を付加したパラメータデータ)からシミュレーション時刻とシミュレーションサイクルを抽出する。時刻監視部24は、抽出されたシミュレーション時刻とシミュレーションサイクルに基づいてシミュレーション演算部1−1〜1−Nの進み具合を監視、シミュレーションサイクルに変更が必要な場合は変更を実施する。また、時刻監視部24は、抽出されたシミュレーション時刻とシミュレーションサイクルをシミュレーション演算部1−1〜1−Nに対応づけて時刻記録部25に記録するが、この際シミュレーションサイクルを変更した場合には変更後の値を記録する。また、パラメータ情報処理部23は、受信したデータからパラメータデータを抽出する。
時刻同期部26は、時刻記録部25からシミュレーション時刻とシミュレーションサイクルを読み出し、通知先のシミュレーション演算部1−1〜1−Nの進行度にあわせてメッセージのヘッダ情報を生成する。たとえば、シミュレーションサイクルを変更したシミュレーション演算部1−1〜1−Nに対しては、シミュレーションサイクルの変更を示すヘッダ情報を生成する。メッセージ生成部27は、時刻同期部26が生成したヘッダ情報とパラメータ情報処理部23が抽出したパラメータデータからメッセージを生成し、メッセージの通知タイプや情報元シミュレーション演算部1−1〜1−N(メッセージに含まれるパラメータデータの送信元)や宛先演算部1−1〜1−Nなどの情報を設定して、データ出力部から相手先となるシミュレーション演算部1−1〜1−Nに通知する。
つづいて、本実施の形態の時刻同期制御手順を具体例に基づいて説明する。図2は、シミュレーション演算部間で負荷に差が生じた場合の本実施の形態の時刻同期制御手順の一例を示すシーケンス図である。ここでは、2つのシミュレーション演算部を同期させる例について説明することとし、シミュレーション演算部1−1〜1−Nのいずれか1つである第1のシミュレーション演算部とシミュレーション演算部1−1〜1−Nのうち第1のシミュレーション演算部以外のいずれか1つである第2のシミュレーション演算部を同期させる例を説明する。
本実施の形態では、シミュレーション演算部1−1〜1−Nは、それぞれ個別に設定されたシミュレーションサイクルΔti(iは1〜4。それぞれ異なる時間間隔を意味する)ごとに、自身のシミュレーション演算に相当するモデル計算を実施することとする。そして、適宜パラメータデータの算出が終了すると演算結果に基づいてそのパラメータデータを出力する。なお、処理の開始時には、シミュレーション演算部1−1〜1−Nのそれぞれのシミュレーション時刻は、全て同一の初期値に設定されることとする。
まず、第1のシミュレーション演算部では、モデル計算部11がシミュレーション演算を行い、シミュレーション時刻T101で、パラメータ生成部13が、その時点のモデル計算部11の演算結果からパラメータデータを抽出し、シミュレーション時刻T101の値とその時点でのシミュレーションサイクルΔt1の値とを含む制御情報を付加して、データ出力部15から制御情報付加後のパラメータデータを同期整合制御部2へ送信する(ステップS11)。以下では、シミュレーション時刻TiXY(iは、1または2、XYは整数)は、第iのシミュレーション演算部が、パラメータデータを出力するシミュレーション時刻を示すこととする。本実施の形態では、各シミュレーション演算部は、パラメータデータを出力した時刻(送信するパラメータデータの抽出元の演算結果を算出した時刻)に基づいてシミュレーション演算の信号を管理することとし、直近のパラメータデータを出力したシミュレーション時刻(送信するパラメータデータの抽出元の演算結果を算出した時刻)を保持していることとする。
同期整合制御部2は、ステップS11で送信されたパラメータデータに含まれるT101と宛先のシミュレーション演算部のシミュレーションサイクルΔt2を含むデータメッセージを通知する(ステップS12)。具体的には、同期整合制御部2では、データ入力部21が、ステップS11で送信されたパラメータデータからシミュレーション時刻T101とシミュレーションサイクルΔt1を抽出する。そして、時刻監視部24が、それらを時刻記録部25に記録するとともにヘッダ情報を生成し、メッセージ生成部27が、時刻記録部25に記録されているシミュレーション時刻T101と宛先(この場合は第2のシミュレーション演算部)のシミュレーションサイクルΔt2を読み出し、読みだしたT101とΔt2を含むデータメッセージを生成し、データ出力部22がそのデータメッセージを第2のシミュレーション演算部に通知する(ステップS12)。
第2のシミュレーション演算部は、ステップS12で送信されたデータメッセージに含まれるシミュレーション時刻T101とその時点までに自身のシミュレーション進行が確認されている時刻であるシミュレーション時刻T200とを比較し、T101とT200の差が所定の範囲以内であった場合には、同期しているものとして、受信したパラメータデータに基づいてモデル計算部11がシミュレーション演算を進める(ステップS13)。
また、第2のシミュレーション演算部は、並行してモデル計算を行っていることとし、シミュレーション時刻T201に、自身の演算結果からパラメータデータを抽出し、シミュレーション時刻T201の値とその時点でのシミュレーションサイクルΔt2の値とを含む制御情報を付加して、データ出力部15から制御情報付加後のパラメータデータを同期整合制御部2へ送信する(ステップS14)。
同期整合制御部2は、ステップS14で送信されたパラメータデータに含まれるT201と宛先のシミュレーション演算部のシミュレーションサイクルΔt1を含むデータメッセージを通知する(ステップS15)。そして、第1のシミュレーション演算部は、ステップS15で送信されたデータメッセージに含まれるシミュレーション時刻T201とその時点までに自身のシミュレーション進行が確認されている時刻であるシミュレーション時刻T101とを比較し、T101とT201の差が所定の範囲以内であった場合には、同期しているものとして、受信したパラメータデータに基づいてシミュレーション演算を進める(ステップS16)。
第1のシミュレーション演算部は、並行してシミュレーション演算を行っており、T102に、パラメータ生成部13が、その時点のモデル計算部11の演算結果からパラメータデータを抽出し、シミュレーション時刻T102の値とその時点でのシミュレーションサイクルΔt1の値とを含む制御情報を付加して、データ出力部15から制御情報付加後のパラメータデータを同期整合制御部2へ送信する(ステップS17)。
同期整合制御部2は、ステップS17で送信されたパラメータデータに含まれるT102と宛先のシミュレーション演算部のシミュレーションサイクルΔt2とを含むデータメッセージを第2のシミュレーション演算部に通知する(ステップS18)。そして、第2のシミュレーション演算部は、ステップS18で送信されたデータメッセージに含まれるシミュレーション時刻T102とその時点までに自身のシミュレーション進行が確認されている時刻であるシミュレーション時刻T201とを比較し、T102とT201の差が所定の範囲以内であった場合には、同期しているものとして、受信したパラメータデータに基づいてシミュレーション演算を進める(ステップS19)。
一方、ここで、第1のシミュレーション演算部と第2のシミュレーション演算部との間にシミュレーション演算の負荷に差が生じ、第2のシミュレーション演算の負荷が上がり第2のシミュレーション演算部の演算に要する時間が長くなったとする。第1のシミュレーション演算部では、引き続き、演算を続けており、T103に、パラメータ生成部13が、その時点のモデル計算部11の演算結果からパラメータデータを抽出し、シミュレーション時刻T103の値とその時点でのシミュレーションサイクルΔt1の値とを含む制御情報を付加して、データ出力部15から制御情報付加後のパラメータデータを同期整合制御部2へ送信する(ステップS20)。
同期整合制御部2は、ステップS20で送信されたパラメータデータを受信すると、そのメッセージに含まれるT103と宛先のシミュレーション演算部のシミュレーションサイクルΔt2とを含むデータメッセージを第2のシミュレーション演算部に通知する(ステップS21)。そして、第2のシミュレーション演算部は、ステップS21で送信されたデータメッセージに含まれるシミュレーション時刻T103とその時点までに自身のシミュレーション進行が確認されている時刻であるシミュレーション時刻T201とを比較するが、上述のように負荷の上昇により、T103とT201の差が所定の範囲を超えるため、自身の処理が遅延していると判断する(ステップS22)。そして、第2のシミュレーション演算部は、自身のシミュレーション進行が確認されている時刻T201とその時点のシミュレーションサイクルであるΔt2とを含む遅延を知らせるための遅延通知を同期整合制御部2へ送信する(ステップS23)。
同期整合制御部2では、遅延通知を受信すると、後述のシミュレーションサイクル変更制御処理により、遅延通知の通知元である第2のシミュレーション演算部のシミュレーションサイクルを現在のΔt2からΔt3(Δt3>Δt2)に変更し、変更後のΔt3を含むシミュレーションサイクルの変更を通知するためのシミュレーションサイクルメッセージを第2のシミュレーション演算部に通知する(ステップS24)。
第2のシミュレーション演算部は、シミュレーションサイクルメッセージを受信するとそのメッセージに基づいてシミュレーションサイクルをΔt3に変更し、Δt3基づいてシミュレーション時刻を更新したシミュレーション時刻T202に、その時点の演算結果に基づいてパラメータデータを同期整合制御部2に送信する(ステップS25)。このように、シミュレーションサイクルを拡大することにより、第2のシミュレーション演算部のシミュレーション進行速度を上げる。
同期整合制御部2は、ステップS25で送信されたパラメータデータに含まれるT202と宛先のシミュレーション演算部のシミュレーションサイクルΔt1とを含むデータメッセージを第1のシミュレーション演算部に通知する(ステップS26)。
そして、第2のシミュレーション演算部は、シミュレーション時刻T203に、その時点の演算結果に基づいてパラメータデータを同期整合制御部2に送信する(ステップS27)。
同期整合制御部2は、ステップS27で送信されたパラメータデータに含まれるT203と宛先のシミュレーション演算部のシミュレーションサイクルΔt1とを含むデータメッセージを第1のシミュレーション演算部に通知する(ステップS28)。一方、同期整合制御部2では、時刻監視部24が、時刻記録部25に記録されている各シミュレーション演算部の時刻を監視しており、第1のシミュレーション演算部から送信された最新のシミュレーション時刻(この場合T103)が第2のシミュレーション演算部から送信された最新のシミュレーション時刻(この場合T203)がより小さくなった場合、両演算部の負荷の差が縮まり同期範囲内になったと判断する。そして、シミュレーションサイクルを拡大している第2のシミュレーション演算部の演算が進みすぎないよう、シミュレーションサイクルをΔt4(Δt4<Δt3)に変更するよう決定し、Δt4へのシミュレーションサイクルの変更を指示するシミュレーションサイクルメッセージを第2のシミュレーション演算部に通知する(ステップS29)。
一方、第1のシミュレーション演算部では演算を続けており、T104に、その時点の演算結果に基づいてパラメータデータを同期整合制御部2へ送信する(ステップS30)。同期整合制御部2は、ステップS30で送信されたパラメータデータに含まれるT104と宛先のシミュレーション演算部のシミュレーションサイクルΔt4とを含むデータメッセージを第2のシミュレーション演算部に通知する(ステップS31)。第2のシミュレーション演算部は、受信したデータメッセージに含まれるT104と、自身が進行を確認している時刻T203とを比較し、T104とT203との差が所定の範囲内であると判断して、シミュレーション演算を進める。
そして、第2のシミュレーション演算部は、T204に、その時点の演算結果に基づいてパラメータデータを同期整合制御部2へ送信する(ステップS32)。同期整合制御部2は、ステップS32で送信されたパラメータデータに含まれるT204と宛先のシミュレーション演算部のシミュレーションサイクルΔt1とを含むデータメッセージを第1のシミュレーション演算部に通知する(ステップS33)。
なお、ここでは、ステップS26,S28で同期整合制御部2から第1のシミュレーション演算部が受信した後に、メッセージに含まれる第2のシミュレーション演算部のシミュレーション時刻と自身のシミュレーション時刻との比較および判断処理の説明を省略したが、ステップS16等と同様に、比較および判断処理を実施することとする。
なお、ここでは、第2のシミュレーション演算部が遅延する場合のシーケンスを説明するため、第2のシミュレーション演算部による遅延判断(通知されたデータメッセージに含まれるシミュレーション時刻と自身のシミュレーション時刻との差が所定の範囲内であるかの判断)と通知処理を行う場合について説明したが、第1のシミュレーション演算部でも同様の遅延判断を行なっており、自身の処理が遅延していると判断した場合には、上記と同様に同期整合制御部2に遅延通知を送信する。
また、3つ以上のシミュレーション演算部により分散処理を行っている場合も、同様である。この場合、同期整合制御部2は、パラメータデータを受信した場合に、そのパラメータデータの送信元以外のシミュレーション演算部にそれぞれ受信したパラメータデータと対応するシミュレーション時刻と、送信先のシミュレーションサイクルとを含めたデータメッセージ送信するようにする。または、同期整合制御部2は、後述のように基準とするシミュレーション演算部を定め、そのシミュレーション演算部のシミュレーション時刻を基準以外のシミュレーション演算部に送信するようにしてもよい。さらに、平均化などにより基準時刻を定め、基準のシミュレーション演算部のシミュレーション時刻を通知する代わりに、基準時刻を各シミュレーション演算部に通知し、各シミュレーション演算部は基準時刻と自身のシミュレーション時刻を比較することにより、遅延を判断するようにしてもよい。
つぎに、同期整合制御部2が実施するシミュレーションサイクルの変更制御処理について説明する。同期整合制御部2は、シミュレーション全体の進行の基準となるシミュレーション基準時刻を時刻管理部24によって管理する。たとえば、第1のシミュレーション演算部が演算を行うシミュレーションモデルが、最も重要な演算を分担している場合(主要なシミュレーションモデルである場合)、第1のシミュレーション演算部から通知されるシミュレーション時刻T101,T102,…をシミュレーション基準時刻とする。また、主要なシミュレーション演算部が存在しない場合は、各シミュレーション演算部のシミュレーション時刻の平均値、または、大きくシミュレーション時刻(進行時間)が離れているシミュレーション演算部を除いた各シミュレーション時刻の平均値などをシミュレーション基準時刻として用いる。なお、図2の例のように、2つのシミュレーション演算部のみの場合は、お互いに同期を確認すればよいことから、シミュレーション基準時刻を固定して定義せずに、各々のシミュレーション時刻が他方のシミュレーション演算部のシミュレーション基準時刻と考えることができる。
図3は、シミュレーションサイクルの変更制御処理の手順の一例を示すシーケンス図である。図3を用いてシミュレーションサイクルの変更制御処理の具体例を説明する。ここでは、3つのシミュレーション演算部を同期させる例について説明することとし、シミュレーション演算部1−1〜1−Nのうちの3つである第1のシミュレーション演算部,第2のシミュレーション演算部,第3のシミュレーション演算部とを同期させる例を説明する。また、ここでは、シミュレーション基準時刻として第1のシミュレーション演算部のシミュレーション時刻を用いることとする。
まず、同期整合制御部2は、実時間R11に、シミュレーション時刻T101とシミュレーションサイクルΔ11を含むパラメータデータを第1のシミュレーション演算部から受信し、T101とΔ11を時刻記録部25に保持する。なお、Δ11は、シミュレーション時刻T101での第1のシミュレーション演算部のシミュレーションサイクルとする。そして、同期整合制御部2は、シミュレーション時刻T101を含むデータメッセージ通知を第2のシミュレーション演算部と第3のシミュレーション演算部へ通知する(ステップS41,S42)。なお、データメッセージ通知には、上述のとおり宛先のシミュレーション演算部のシミュレーションサイクルを含むが、ここでは、説明を省略する。
第2のシミュレーション演算部は、シミュレーション時刻T201に、その時点の演算結果に基づいてT201とその時点のシミュレーションサイクルΔ21を付加したパラメータデータを同期整合制御部2に通知する(ステップS43)。また、第3のシミュレーション演算部は、シミュレーション時刻T301に、その時点の演算結果に基づいてT301とその時点のシミュレーションサイクルΔ31を付加したパラメータデータを同期整合制御部2に通知する(ステップS44)。なお、ここでは、各シミュレーション演算部は、図2で説明したように、データメッセージ通知を受信すると、遅延判定などの処理を実施することとする。その遅延判定により遅延していないと判定した場合は、図2の例と同様にそのままシミュレーション演算を続けるが、ここでは、これらの処理の説明を省略する。
同期整合制御部2は、実時間R12に、シミュレーション時刻T102とシミュレーションサイクルΔ11を含むパラメータデータを第1のシミュレーション演算部から受信し、T102とΔ11を時刻記録部25に保持する。そして、同期整合制御部2は、シミュレーション時刻T102を含むデータメッセージ通知を第2のシミュレーション演算部と第3のシミュレーション演算部へ通知する(ステップS45,S46)。第2のシミュレーション演算部は、シミュレーション時刻T202に、その時点の演算結果に基づいてT202とその時点のシミュレーションサイクルΔ21を付加したパラメータデータを同期整合制御部2に通知する(ステップS47)。
一方、ここで、第3のシミュレーション演算部の負荷が上昇したとする。第3のシミュレーション演算部は、シミュレーション時刻T102を含むデータメッセージ通知を受信すると、T102とT301の差が所定の範囲を超えているために自身の演算が遅延していると判断し、T301を含む遅延通知を同期整合制御部2に送信する(ステップS48)。
同期整合制御部2は、実時間R32に、第3のシミュレーション演算部からシミュレーション時刻T301を含む遅延通知を受信すると、時刻同期部26が、第3のシミュレーション演算部の変更後のシミュレーションサイクルΔ32を決定し、Δ32をシミュレーションサイクルメッセージに含めて第3のシミュレーション演算部に通知する(ステップS49)。第3のシミュレーション演算部は、ステップS49で送信されたシミュレーションサイクルメッセージを受信するとシミュレーションサイクルをΔ31からΔ32に変更しシミュレーションを続ける。
同期整合制御部2は、具体的には、たとえば、以下の式(1)に従ってΔ32を決定する。
Δ32 = Δ31×((R32−R31)÷(T302−T301))
÷((R12−R11)÷(T102−T101)) …(1)
すなわち、ここでは、T101とT102の差と自身がそれらを受信した実時間であるR11とR12の差とに基づいて、第1のシミュレーション演算部のシミュレーション時刻のパラメータデータ送信間隔と実時間での第1のシミュレーション演算部のパラメータデータ送信間隔との比を求める。そして、第3のシミュレーション演算部が遅延と判断したときのシミュレーション時刻T302と第3のシミュレーション演算部が遅延通知を送信する前の直近のデータ送信に含まれるT301と、T302,T301をそれぞれ受信した実時間R32と実時間R31との差に基づいて、第3のシミュレーション演算部のシミュレーション時刻のパラメータデータ送信間隔と実時間での第3のシミュレーション演算部のパラメータデータ送信間隔との比の推定値を求める。さらに、このように求めたΔ31に前者の比を乗じて後者の比で除することによるΔ32をもとめる。
なお、第3のシミュレーション演算部の遅延を正しく反映するには、前者の比を求める際に、T302ではなく第3のシミュレーション演算部が次にパラメータを出力するT303を用いることが理想である。しかし、図3の例では、T102を含むデータメッセージ通知を受信し、遅延と判定して遅延通知を送信する時点で次のパラメータデータの出力が終了していないため、T303ではなく遅延を通知するために用いたT301を用いている。T102を含むデータメッセージ通知を受信してから、遅延通知を送信するまでに自身のパラメータデータの送信があった場合には、遅延通知にはT302ではなくT303を送信し、以下の式(2)に基づいてΔ32を算出する。
Δ32 = Δ31×((R32−R31)÷(T303−T301))
÷((R12−R11)÷(T102−T101)) …(2)
また、第3のシミュレーション演算部が、T102とT301に基づいて遅延と判断した後に、次の自身のパラメータデータの送信(T303)を待ってから、その送信時刻を含めて遅延通知を送信するようにしてもよい。その場合は、式(2)に従った算出を行えばよい。
図3の説明に戻ると、同期整合制御部2は、実時間R13に、シミュレーション時刻T103とシミュレーションサイクルΔ11を含むパラメータデータを第1のシミュレーション演算部から受信し、T103とΔ11を時刻記録部25に保持する。そして、同期整合制御部2は、シミュレーション時刻T103を含むデータメッセージ通知を第2のシミュレーション演算部と第3のシミュレーション演算部へ通知する(ステップS50,S51)。
ここで、第2のシミュレーション演算部の負荷が上昇したとする。第2のシミュレーション演算部は、シミュレーション時刻T103を含むデータメッセージ通知を受信すると、T103とT202の差が所定の範囲を超えているために自身の演算が遅延していると判断し、遅延と判断したときのシミュレーション時刻T203を含む遅延通知を同期整合制御部2に送信する(ステップS52)。
同期整合制御部2は、実時間R23に、第2のシミュレーション演算部からシミュレーション時刻T203を含む遅延通知を受信すると、時刻同期部26が、第2のシミュレーション演算部の変更後のシミュレーションサイクルΔ22を決定し、Δ22をシミュレーションサイクルメッセージに含めて第2のシミュレーション演算部に通知する(ステップS53)。第2のシミュレーション演算部は、ステップS53で送信されたシミュレーションサイクルメッセージを受信するとシミュレーションサイクルをΔ21からΔ22に変更しシミュレーションを続ける。
Δ22の決定方法は、上記のΔ32の決定方法と同様であるが、たとえば、上記の(1)と同様に、第2のシミュレーション演算部が、次のパラメータデータの送信をまたずに遅延通知を送信する場合には、以下の式(3)に従って算出する。
Δ22 = Δ21×((R23−R22)÷(T203−T202))
÷((R13−R12)÷(T103−T102)) …(3)
また、たとえば、上記の(2)の場合と同様に、次の自身のパラメータデータの送信(T204)を待ってから、その送信時刻を含めて遅延通知を送信する場合は、以下の式(4)に従った算出を行えばよい。
Δ22 = Δ21×((R23−R22)÷(T204−T202))
÷((R13−R12)÷(T103−T102)) …(4)
一方、第3のシミュレーション演算部は、シミュレーションサイクルをΔ32として演算を続けており、シミュレーション時刻T302に、その時点の演算結果に基づいてT303とその時点のシミュレーションサイクルΔ32を付加したパラメータデータを同期整合制御部2に通知する(ステップS54)。また、第2のシミュレーション演算部は、シミュレーションサイクルをΔ22として演算を続けており、シミュレーション時刻T204に、その時点の演算結果に基づいてT204とその時点のシミュレーションサイクルΔ22を付加したパラメータデータを同期整合制御部2に通知する(ステップS55)。
なお、本実施の形態では、パラメータデータの送信時にシミュレーション時刻とシミュレーションサイクルを含む制御情報を付加して送信するようにしたが、これに限らず、各シミュレーション演算部は、パラメータデータの送信とは別に自身のシミュレーション時刻とシミュレーションサイクルを同期制御部に通知するようにしてもよい。また、同期制御部2は、シミュレーション演算に対して、パラメータデータの送信とは別に、送信先以外のシミュレーション演算部のシミュレーション時刻(またはシミュレーション基準時刻)と送信先のシミュレーション演算部のシミュレーションサイクルを通知するようにしてもよい。
なお、本実施の形態では、同期整合制御部2が、各シミュレーション演算部のシミュレーション時刻を管理するようにしたが、同期整合制御部2を経由せずに、シミュレーション演算部同士が自身のシミュレーション時刻を送受信することにより、他のシミュレーション演算部のシミュレーション時刻を知るようにしてもよい。この場合、他のシミュレーション演算部のシミュレーション時刻を受信した場合に、上述と同様に自身のシミュレーション時刻と比較することにより遅延を判定し、遅延している場合には、自身のシミュレーションサイクルを変更するようにすればよい。
以上のように、同期整合制御部2は、シミュレーションサイクルを変更する。また、変更により処理が遅れていたシミュレーション演算部の演算が進みすぎないよう、図2のステップS29で述べたように、シミュレーションサイクルを縮小する。その際、たとえば、そのシミュレーション演算部のシミュレーション時刻(たとえば、T303)をシミュレーション基準時刻(T103)と比較し、シミュレーション時刻がシミュレーション基準時刻より進んだ場合(たとえば、T303>T103)には、そのシミュレーション演算部のシミュレーションサイクルを縮小する。縮小したシミュレーションサイクルの方法としては、たとえば、拡大の方法と同様に、算出対象のシミュレーション演算部のパラメータデータの出力間隔と基準となる第1のシミュレーション演算部のパラメータデータの出力間隔などに基づいて算出する。
以上のように、本実施の形態では、シミュレーション演算部1−1〜1−Nがそれぞれ自身の演算の進行度合いを示すシミュレーション時刻を送信し、各シミュレーション演算部は、同期整合制御部2経由で、その時刻と自身のシミュレーション時刻を比較し、両時刻に所定の範囲以上の差がある場合には、遅延していると判断して同期整合制御部2に遅延通知を送信するようにした。そして、同期整合制御部2は、遅延通知を受信すると送信元のシミュレーション演算部のシミュレーションサイクルを拡大し、遅れていたシミュレーション演算部の処理が進みすぎた場合にはシミュレーションサイクルを縮小するようにした。このため、シミュレーション演算部間に負荷の偏りが生じた場合に、システム全体の計算時間を効率よく短縮することができる。
実施の形態2.
図4は、本発明かかる時刻同期制御方法の実施の形態2の処理手順の一例を示すシーケンス図である。本実施の形態の統合シミュレーションシステムの構成は実施の形態1と同様である。以下、実施の形態1と異なる部分について説明する。
図4は、実施の形態1の図2と同様の構成で、図2の例と同様に第2のシミュレーション演算部に遅延が生じる例のシーケンスを示している。図4のステップS11〜ステップS26は、実施の形態1と同様である。図4の例では、実施の形態1と異なり、シミュレーションT203で第2のシミュレーション演算部がパラメータデータを送信する前に、第1のシミュレーション演算部がシミュレーション時刻T104にパラメータデータを送信する。
ステップS11〜ステップS26の後、第1のシミュレーション演算部は、シミュレーション時刻T104に、T104とΔt1を含む制御情報を付加したパラメータデータを送信する(ステップS61)。同期整合制御部2は、そのデータからパラメータデータを抽出し、抽出したパラメータデータにT104とΔt3を含むデータメッセージ通知を第2のシミュレーション演算部に通知する(ステップS62)。
第2のシミュレーション演算部は、受信したデータメッセージに含まれるシミュレーション時刻T104と進行を確認している自身のシミュレーション時刻T202とを比較し、両者の差が所定の範囲以内であると判断した場合には、第2のシミュレーション演算部は自身の遅延が回復していると判断し、遅延回復通知を同期整合制御部2へ送信する(ステップS63)。このとき、遅延回復通知には、T202とシミュレーションサイクルΔt3を含ませることとする。
同期整合制御部2は、遅延回復通知を受信すると、実施の形態1で第2のシミュレーション演算部からシミュレーション時刻T203のデータを受信したとき(ステップS27)と同様に、第2のシミュレーション演算部が同期範囲内になったと判断し、時刻記録部25が保持する第2のシミュレーション演算部のシミュレーションサイクルを、Δt3より小さな値のシミュレーションサイクルΔt4に変更し、変更を通知するシミュレーションサイクルメッセージを生成して、第2のシミュレーション演算部に通知する(ステップS64)。Δt4の算出方法は、実施の形態1と同様である。また、このとき送信するシミュレーションサイクルメッセージは実施の形態1のステップS29で送信するシミュレーションサイクルメッセージと同様である。
第2のシミュレーション演算部は、ステップS64で送信されたシミュレーションサイクルメッセージ通知を受信すると、そのメッセージに基づいてシミュレーションサイクルをΔt3からΔt4に変更し、シミュレーション演算を続ける。そして、第2のシミュレーション演算部では、T203に、パラメータ生成部13が、その時点のモデル計算部11の演算結果からパラメータデータを抽出し、シミュレーション時刻T203値とその時点でのシミュレーションサイクルΔt4の値とを含む制御情報を付加して、データ出力部15から制御情報付加後のパラメータデータを同期整合制御部2へ送信する(ステップS65)。
同期整合制御部2は、ステップS65で送信されたパラメータデータに含まれるT203と宛先のシミュレーション演算部のシミュレーションサイクルΔt1とを含むデータメッセージを第1のシミュレーション演算部に通知する(ステップS66)。以上述べた以外の本実施の形態の動作は実施の形態1と同様である。
以上のように、本実施の形態では、処理の遅延によりシミュレーションサイクルを拡大したシミュレーション演算部が、同期整合制御部2から他のシミュレーション演算部のシミュレーション時刻を含むデータメッセージ通知を受信した場合に、そのメッセージに含まれるシミュレーション時刻と自身のシミュレーション時刻を比較し、その差が所定の範囲内になった場合には遅延回復通知を同期整合制御部2に送信するようにした。そして、同期整合制御部2は遅延回復通知を受信すると、その通知の送信元のシミュレーションサイクルを縮小するようにした。このため、実施の形態1と同様に、シミュレーション演算部間に負荷の偏りが生じた場合に、統合シミュレーションシステム全体の計算時間を効率よく加速することができる。
以上のように、本発明にかかる統合シミュレーションシステムおよび同期制御方法は、複数のシミュレーション演算部を備え分散処理を行うシステムに有用であり、特に、シミュレーション演算部間で負荷のばらつきが生じるシステムに適している。
本発明にかかる統合シミュレーションシステムの実施の形態1の構成例を示す図である。 実施の形態1の時刻同期制御手順の一例を示すシーケンス図である。 シミュレーションサイクルの変更制御処理の手順の一例を示すシーケンス図である。 実施の形態2の時刻同期制御方法の処理手順の一例を示すシーケンス図である。
符号の説明
1−1〜1−N シミュレーション演算部
2 同期整合制御部
11 モデル計算部
12 時刻制御部
13 パラメータ生成部
14,21 データ入力部
15,22 データ出力部
23 パラメータ情報処理部
24 時刻監視部
25 時刻記録部
26 時刻同期部
27 メッセージ生成部

Claims (11)

  1. 複数の演算手段を備え、前記演算手段が分散処理によるシミュレーション処理を実施する統合シミュレーションシステムであって、
    前記演算手段は、
    自身が実施するシミュレーション処理の進行を示すシミュレーション時刻と自身のシミュレーション時刻の進み方を示すシミュレーションサイクルとを他の演算手段に通知し、
    また、他の演算手段のシミュレーション時刻と自身のシミュレーション時刻に基づいて自身の処理が遅延しているかを判定し、自身の処理が遅延していると判定した場合にはシミュレーションサイクルを増加させるよう変更することを特徴とする統合シミュレーションシステム。
  2. 前記演算手段は、シミュレーション基準時刻と自身のシミュレーション時刻の差を求め、自身の処理が遅延しているかの判定を、前記差が所定の範囲を超えるか否かにより判定し、前記差が所定の範囲を超える場合に遅延していると判定することを特徴とする請求項1に記載の統合シミュレーションシステム。
  3. 前記シミュレーションサイクルを増加させるよう変更した演算手段は、他の演算手段のシミュレーション時刻と自身のシミュレーション時刻に基づいて自身の処理遅延が回復したかを判定し、自身の処理遅延が回復したと判定した場合には、ミュレーションサイクルを減少させるよう変更することを特徴とする請求項1または2に記載の統合シミュレーションシステム。
  4. 前記演算手段は、他の演算手段のシミュレーション時刻と自身のシミュレーション時刻の差を求め、自身の処理遅延が回復したかの判定を、前記差が所定の範囲以内か否かにより判定し、前記差が所定の範囲以内の場合に、自身の処理遅延が回復したと判定することを特徴とする請求項3に記載の統合シミュレーションシステム。
  5. 前記演算手段の時刻同期を制御する同期制御手段、
    を備え、
    前記演算手段は、自身のシミュレーション時刻とシミュレーションサイクルとを前記同期制御手段経由で他の演算手段に通知し、また、自身の処理が遅延していると判定した場合に前記同期制御手段に遅延通知を送信し、
    前記同期制御手段は、前記遅延通知を受信すると、その通知の送信元の演算手段のシミュレーションサイクルを増加させるよう変更し、シミュレーションサイクルの変更を指示する通知を前記遅延通知の送信元の演算手段へ送信し、
    前記送信元の演算手段は、前記同期制御手段から送信される前記指示に基づいてシミュレーションサイクルを変更することを特徴とする請求項1または2に記載の統合シミュレーションシステム。
  6. 前記同期制御手段は、前記遅延通知の送信元の演算手段から送信されたシミュレーション時刻と前記遅延通知の送信元の演算手段以外の演算手段から送信されたシミュレーション時刻とに基づいて、前記遅延通知の送信元の演算手段の処理遅延が回復したかを判定し、その処理遅延が回復したと判定した場合には、その演算手段のシミュレーションサイクルを減少させるよう変更し、シミュレーションサイクルの変更を指示する通知を前記遅延通知の送信元の演算手段へ送信することを特徴とする請求項5に記載の統合シミュレーションシステム。
  7. 前記同期制御手段は、前記遅延通知の送信元の演算手段と前記遅延通知の送信元の演算手段以外の前記演算手段から送信されたシミュレーション時刻の差を求め、自身の処理遅延が回復したかの判定を、前記差が所定の範囲以内か否かにより判定し、前記差が所定の範囲以内の場合に、前記遅延通知の送信元の演算手段の処理遅延が回復したと判定することを特徴とする請求項6に記載の統合シミュレーションシステム。
  8. 前記同期制御手段は、前記演算手段から通知されるシミュレーション時刻に基づいてシミュレーション基準時刻を求め、そのシミュレーション基準時刻を前記演算手段に通知し、
    前記演算手段は、他の演算手段のシミュレーション時刻として前記シミュレーション基準時刻を用いて自身の処理が遅延しているかを判定することを特徴とする請求項5に記載の統合シミュレーションシステム。
  9. 前記同期制御手段は、前記遅延通知の送信元の演算手段から送信されたシミュレーション時刻と前記シミュレーション基準時刻とに基づいて、前記遅延通知の送信元の演算手段の処理遅延が回復したかを判定し、自身の処理遅延が回復したと判定した場合には、シミュレーションサイクルを減少させるよう変更し、シミュレーションサイクルの変更を指示する通知を前記遅延通知の送信元の演算手段へ送信することを特徴とする請求項8に記載の統合シミュレーションシステム。
  10. 前記同期制御手段は、前記遅延通知の送信元の演算手段のシミュレーション時刻と前記シミュレーション基準時刻との差を求め、自身の処理遅延が回復したかの判定を、前記差が所定の範囲以内か否かにより判定し、前記差が所定の範囲以内の場合に、前記遅延通知の送信元の演算手段の処理遅延が回復したと判定することを特徴とする請求項9に記載の統合シミュレーションシステム。
  11. 複数の演算手段を備え、前記演算手段が分散処理によるシミュレーション処理を実施する統合シミュレーションシステムにおける同期制御方法であって、
    前記演算手段が、自身が実施するシミュレーション処理の進行を示すシミュレーション時刻と自身が実施するシミュレーションの処理間隔であるシミュレーションサイクルとを他の演算手段に通知するシミュレーション時刻通知ステップと、
    前記演算手段が、他の演算手段のシミュレーション時刻と自身のシミュレーション時刻に基づいて自身の処理が遅延しているかを判定し、自身の処理が遅延していると判定した場合にはシミュレーションサイクルを増加させるよう変更するシミュレーションサイクル変更ステップと、
    を含むことを特徴とする同期制御方法。
JP2008310275A 2008-12-04 2008-12-04 演算手段、統合シミュレーションシステムおよび同期制御方法 Expired - Fee Related JP5247395B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008310275A JP5247395B2 (ja) 2008-12-04 2008-12-04 演算手段、統合シミュレーションシステムおよび同期制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008310275A JP5247395B2 (ja) 2008-12-04 2008-12-04 演算手段、統合シミュレーションシステムおよび同期制御方法

Publications (2)

Publication Number Publication Date
JP2010134722A true JP2010134722A (ja) 2010-06-17
JP5247395B2 JP5247395B2 (ja) 2013-07-24

Family

ID=42345958

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008310275A Expired - Fee Related JP5247395B2 (ja) 2008-12-04 2008-12-04 演算手段、統合シミュレーションシステムおよび同期制御方法

Country Status (1)

Country Link
JP (1) JP5247395B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014038030A1 (ja) * 2012-09-06 2014-03-13 株式会社日立製作所 協調シミュレーション用計算機システム、組込みシステムの検証システム及び組込みシステムの検証方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259605A (ja) * 1999-03-05 2000-09-22 Mitsubishi Electric Corp シミュレーション装置
JP2008134993A (ja) * 2006-10-23 2008-06-12 Mitsubishi Electric Corp シミュレーション管理装置及びシミュレーション管理方法及びプログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000259605A (ja) * 1999-03-05 2000-09-22 Mitsubishi Electric Corp シミュレーション装置
JP2008134993A (ja) * 2006-10-23 2008-06-12 Mitsubishi Electric Corp シミュレーション管理装置及びシミュレーション管理方法及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014038030A1 (ja) * 2012-09-06 2014-03-13 株式会社日立製作所 協調シミュレーション用計算機システム、組込みシステムの検証システム及び組込みシステムの検証方法
JP5926807B2 (ja) * 2012-09-06 2016-05-25 株式会社日立製作所 協調シミュレーション用計算機システム、組込みシステムの検証システム及び組込みシステムの検証方法

Also Published As

Publication number Publication date
JP5247395B2 (ja) 2013-07-24

Similar Documents

Publication Publication Date Title
CN100367714C (zh) 基于网络和主机负载的变速心跳机制的实现方法
CN106097983B (zh) 液晶显示装置中的背光控制方法、装置及液晶显示装置
CN103093059B (zh) 一种实时高效的分布式半实物仿真系统构建方法
CN106201690A (zh) 应用运行控制方法及装置
US10338879B2 (en) Synchronization object determining method, apparatus, and system
JP2020524313A (ja) 予測実行タスクの実行時間を組み合わせ最適化するスケジューリング方法
CN104023062A (zh) 一种面向异构计算的分布式大数据系统的硬件架构
CN109568948A (zh) 网络游戏中对象的运动状态同步方法及装置
US20030046044A1 (en) Method for modeling and processing asynchronous functional specification for system level architecture synthesis
KR20190074026A (ko) 이더캣 기반의 슬레이브 시스템에 포함된 복수의 마이크로 프로세서간 동기화 방법 및 시스템
Ciraci et al. Synchronization algorithms for co-simulation of power grid and communication networks
JP5247395B2 (ja) 演算手段、統合シミュレーションシステムおよび同期制御方法
CN103108000A (zh) 用于任务同步的方法和系统及系统中的主节点和工作节点
JP6237103B2 (ja) 情報収集装置、情報収集方法、及び情報収集プログラム
JP2015156104A (ja) 自立制御システム、自立制御装置、自立制御方法およびプログラム
Lin et al. ReHRS: A hybrid redundant system for improving MapReduce reliability and availability
JP6535304B2 (ja) 分散同期処理システムおよび分散同期処理方法
JP2005316679A (ja) 並列演算処理装置
JP5239752B2 (ja) 同期メッセージ発行システム、同期メッセージ発行方法および同期メッセージ発行プログラム
JP2014211806A (ja) 統合シミュレータ装置、シミュレーション方法、及びプログラム
JP2007536659A (ja) 自動化システムのシミュレーションのための方法及び装置
JP5493880B2 (ja) 並列コンピュータシステム、プロセッサ、同期装置、通信方法および通信支援方法
JP5644060B2 (ja) データ処理装置
Laqua et al. Resource checking and event handling within the W7-X segment control framework
JP5219639B2 (ja) 統合シミュレーション装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110824

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121115

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

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: 20130312

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130409

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160419

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees