JP6580288B2 - 情報処理装置、情報処理方法及び情報処理プログラム - Google Patents
情報処理装置、情報処理方法及び情報処理プログラム Download PDFInfo
- Publication number
- JP6580288B2 JP6580288B2 JP2019505641A JP2019505641A JP6580288B2 JP 6580288 B2 JP6580288 B2 JP 6580288B2 JP 2019505641 A JP2019505641 A JP 2019505641A JP 2019505641 A JP2019505641 A JP 2019505641A JP 6580288 B2 JP6580288 B2 JP 6580288B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- data transfer
- interface circuit
- transfer capability
- unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims description 39
- 238000003672 processing method Methods 0.000 title claims description 4
- 238000012546 transfer Methods 0.000 claims description 216
- 238000004364 calculation method Methods 0.000 claims description 123
- 238000011156 evaluation Methods 0.000 claims description 86
- 238000012545 processing Methods 0.000 claims description 29
- 238000000034 method Methods 0.000 claims description 19
- 230000006870 function Effects 0.000 description 39
- 230000015654 memory Effects 0.000 description 12
- 101150049281 PRM1 gene Proteins 0.000 description 7
- 230000003542 behavioural effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 3
- 101150039322 outE gene Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Mathematical Analysis (AREA)
- Computing Systems (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Information Transfer Systems (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Stored Programmes (AREA)
Description
しかし、制約条件によってコストを安く抑えることが最優先に求められるような場合は、演算処理量が多い演算処理が、高速なインタフェース回路に対応していないCPUに割り振られることがある。このような場合は、演算処理量のみでは演算処理の割り振りを決定できない。つまり、このような場合は、演算処理の割り振りに、インタフェース回路のデータ転送能力を考慮する必要がある。
より具体的には、特許文献1の技術では、インタフェース回路に接続されている演算機器(ハードウェア及びプロセッサ)のレイテンシ及びプロトコルタイプ(ハンドシェイク型かキュー型)が示されるインタフェース回路情報が読み込まれる。そして、特許文献1の技術では、インタフェース回路の接続先となる演算機器から結果が得られるまでの時間及びデータ投入サイクルがモデル情報として生成され、ハードウェアとソフトウェアの分割が制約を満足するかどうかがチェックされる。
このように、特許文献1では、ユーザがインタフェース回路の種類ごとに、インタフェース回路の転送能力を算出するための情報を設定しなければならず、利便性を欠くという課題がある。
インタフェース回路の種類に対応付けて、データ転送能力を算出するための算出式が記述されるインタフェース転送能力情報を記憶する記憶部と、
複数の演算処理の実行を分担する複数の演算機器を接続するインタフェース回路として複数のインタフェース回路の中から指定された指定インタフェース回路の種類に対応する算出式を前記インタフェース転送能力情報から取得し、取得した算出式を用いて、前記指定インタフェース回路のデータ転送能力を算出する転送能力算出部とを有する。
***構成の説明***
図1は、本実施の形態に係る情報処理装置1の機能構成例を示す。
また、図7は、本実施の形態に係る情報処理装置1のハードウェア構成例を示す。
なお、情報処理装置1により行われる動作は、情報処理方法及び情報処理プログラムに相当する。
情報処理装置1は、ハードウェアとして、プロセッサ901、メモリ902、記憶装置903、入力装置904及び出力装置905を備える。
記憶装置903には、図1に示す分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の機能を実現するプログラムが記憶されている。
これらプログラムは記憶装置903からメモリ902にロードされる。そして、プロセッサ901がこれらプログラムをメモリ902から読み出す。プロセッサ901は、これらプログラムを実行して、後述する分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の動作を行う。
図7では、プロセッサ901が分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の機能を実現するプログラムを実行している状態を模式的に表している。
また、記憶装置903は、図1に示すデータベース7を構成する。すなわち、記憶装置903は、インタフェース転送能力情報を格納する。
入力装置904は、後述するアーキテクチャ情報9、機能モデル10及び制約条件11の入力に用いられる。
記憶装置903内のインタフェース転送能力情報は、キーボード等の入力装置904から書き換えることが可能である。また、インタフェース転送能力情報は、USB(Universal Serial Bus)メモリ等を用いて入れ替えることが可能である。
出力装置905は、後述する分割最終候補12及び評価情報13を出力する。
情報処理装置1は、分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6、データベース7及び評価情報出力部8から構成される。
機能モデル10は、C、C++等のプログラム記述言語で記述されたプログラムである。機能モデル10には、複数の演算処理が含まれる。
アーキテクチャ情報9には、機能モデル10を実行するシステム(例えば、組込みシステム)に含まれる演算機器、メモリ、インタフェース回路の種類及び接続関係等が記述されている。演算機器には、FPGA、ASIC等のハードウェアと、DSP、GPU及びCPU等のソフトウェアを実行するプロセッサが含まれる。
分割候補生成部2は、アーキテクチャ情報9を参照して、機能モデル10内のどの演算処理をソフトウェア、ハードウェアに割り当てるかの分割候補を生成する。つまり、分割候補生成部2は、複数の演算機器による複数の演算処理の分担パターンをハードウェア/ソフトウェア分割により複数生成する。なお、分割候補生成部2が生成する分担パターンを、以下、分割候補という。
図2は、アーキテクチャ情報9の記述例を示す。図3は、機能モデル10の動作記述例を示す。
図2及び図3の詳細は後述する。
分割候補生成部2は、分担パターン生成部に相当する。
図5は、インタフェース転送能力情報の例を示す。図5の詳細は後述するが、インタフェース転送能力情報には、インタフェース回路の種類と演算機器の種類との組合せに対応付けて、データ転送能力を算出するための算出式が記述される。
転送時間評価部3は、アーキテクチャ情報9において指定されているインタフェース回路の種類と演算機器の種類との組み合わせに対応する算出式をインタフェース転送能力情報から取得する。なお、アーキテクチャ情報9において指定されているインタフェース回路を指定インタフェース回路という。
転送時間評価部3は、取得した指定インタフェース回路の算出式を用いて指定インタフェース回路のデータ転送能力を算出する。
また、転送時間評価部3は、分割候補ごとに、複数の演算処理の実行を複数の演算機器で分担する際に複数の演算機器の間で転送されるデータ量を推定する。更に、転送時間評価部3は、分割候補ごとに、推定したデータ量を指定インタフェース回路を介して転送する際のデータ転送時間を、算出した指定インタフェース回路の転送能力に基づき算出する。
転送時間評価部3は、転送能力算出部及び転送時間算出部に相当する。
制約条件11には、全体要求性能が示される。全体要求性能は、機能モデル10を実行するシステムに要求される処理時間が示される。
図4は、制約条件11の記述例を示す。図4の詳細は後述する。
制約時間算出部5は、分割候補ごとに、制約条件11に示される全体要求性能から、演算時間算出部4で算出された演算時間を差し引いて、データ転送についての制約時間を算出する。
分割決定部6は、時間比較部に相当する。
データベース7は記憶部に相当する。
次に、図8を参照して、本実施の形態に係る情報処理装置1の動作例を説明する。
分割候補生成ステップ(ステップS1)では、分割候補生成部2が、アーキテクチャ情報9に基づき分割候補を生成する。すなわち、分割候補生成部2は、ソフトウェアに割り当てる演算処理及びハードウェアに割り当てる演算処理の組み合わせを複数生成する。ソフトウェアに割り当てる演算処理及びハードウェアに割り当てる演算処理の組み合わせが分割候補に相当する。
分割候補生成部2は、考え得る全通りの組合せを分割候補として生成してもよいし、データベース等から経験的に規定数の分割候補を生成するようにしてもよい。
分割候補生成部2は、例えば関数単位で機能モデル10を分割する。また、分割候補生成部2は、関数単位だけでなく、関数を展開してfor文等ループを分割単位にして機能モデル10を分割してもよい。
データ転送時間評価ステップ(ステップS2)では、転送時間評価部3が、アーキテクチャ情報9を参照して、機能モデル10を実行するシステムに含まれるインタフェース回路を特定する。転送時間評価部3が特定したインタフェース回路は指定インタフェース回路に相当する。また、転送時間評価部3は、アーキテクチャ情報9を参照して、機能モデル10を実行するシステムに含まれる演算機器を特定する。
更に、転送時間評価部3は、データベース7に格納されているインタフェース転送能力情報を参照する。転送時間評価部3は、インタフェース転送能力情報から、指定インタフェース回路の種類と演算機器の種類の組合せに対応する算出式を取得する。そして、転送時間評価部3は、取得した算出式を用いて、指定インタフェース回路のデータ転送能力を算出する。
また、転送時間評価部3は、分割候補生成部2から得た分割候補について、機能モデル10を用いて各分割点の入出力変数が通るインタフェース機器のルートを割り出す。そして、転送時間評価部3は、そのインタフェース機器を経由する全変数の総転送ビット数を算出する。なお、分割点とは、機能モデル10の分割により得られたプログラムコードのブロックである。
更に、転送時間評価部3は、分割候補ごとに、指定インタフェース回路のデータ転送能力と総転送ビット数から指定インタフェース回路のデータ転送時間を算出する。また、転送時間評価部3は、指定インタフェース回路のデータ転送時間の算出に用いた条件を出力する。
演算時間見積もりステップ(ステップS3)では、演算時間算出部4が、分割候補生成部2から得た分割候補について、機能モデル10とアーキテクチャ情報9から各演算処理の処理時間を演算時間として見積もる。なお、この演算時間にはデータ転送に要する時間は含まれない。演算時間算出部4は、例えば、機能モデル10の記述を解析し、データベース7等を照会して各演算処理の演算時間を静的に見積もる。また、演算時間算出部4は、機能モデル10を用いたシミュレーションを行って、演算処理の演算時間を動的に見積もってもよい。
制約時間算出ステップ(ステップS4)では、制約時間算出部5が、分割候補生成部2から得た分割候補の各変数のルートについて、制約条件11に示される全体要求性能から、演算時間算出部4で見積もられた演算時間を差し引いて、データ転送についての制約時間を算出する。
評価情報出力ステップ(ステップS5)では、評価情報出力部8が、評価情報13を出力する。
評価情報13には、転送時間評価部3にてデータ転送時間を評価する際に用いた評価条件、および、評価結果等が含まれる。
分割決定ステップ(ステップS6)では、分割決定部6が、転送時間評価部3で算出された分割候補のデータ転送時間と、制約時間算出部5で算出した制約時間とを比較する。データ転送時間が制約時間を超えている場合は、分割決定部6は、転送時間評価部3にデータ転送時間が制約時間を超えている度合いを通知する。
つまり、転送時間評価部3は、指定インタフェース回路の転送能力情報が図5の1行目のように算出式である場合は、前回のデータ転送能力の算出に用いたパラメータ値と異なるパラメータ値(以下、代替パラメータ値という)を算出式に適用する。この結果、転送時間評価部3は、指定インタフェース回路のデータ転送能力として新たなデータ転送能力を得る。以下、この新たなデータ転送能力を代替データ転送能力という。そして、転送時間評価部3は、代替データ転送能力に基づくデータ転送時間を算出する。
算出した代替データ転送能力に基づくデータ転送時間が制約時間以下であれば、転送時間評価部3は、当該データ転送時間を分割決定部6に通知する。
また、算出した代替データ転送能力に基づくデータ転送時間が制約時間を超える場合は、転送時間評価部3は、更に、異なるパラメータを算出式に適用して、更なる代替データ転送能力を得る。また、転送時間評価部3は、更なる代替データ転送能力に基づくデータ転送時間を算出する。制約時間以下のデータ転送時間が得られなかった場合は、転送時間評価部3は、算出した複数のデータ転送時間の中で最短のデータ転送時間を分割決定部6に通知する。
分割決定部6は、データ転送時間が制約時間を超える分割候補は分割最終候補から除外する。分割決定部6は、最終的に残った分割候補の全てを分割最終候補12として出力してもよいし、最もデータ転送時間が短い分割候補のみを分割最終候補12として出力してもよい。
次に、図2、図3、図4及び図5を用いて、本実施の形態に係る情報処理装置1が分割最終候補12を得る手順を説明する。
前述したように、図2は、アーキテクチャ情報9の記述例である。
また、図3は、機能モデル10の動作記述例である。
また、図4は、制約条件11の記述例である。
また、図5は、データベース7に格納されているインタフェース転送能力情報の例である。
また、図6は、情報処理装置1によって得られる分割最終候補12の記述例である。
図5において、ビット幅、周波数、接続機器、パラメータ1(prm1)、パラメータ2(prm2)の欄に記載される値が設定条件である。また、データ転送能力の欄には、データ転送能力を算出するための算出式又はデータ転送能力の値が示される。
図5の1行目では、インタフェース回路の種類(SPI)と演算機器の種類(型番:A123456)の組合せに対応付けて、データ転送能力を算出するための算出式が記述されている。
例えば、分割候補生成部2は、動作記述のトップ記述である関数top()のうち、関数func()全体をFPGA0に実行させる分割候補1を生成する。更に、分割候補生成部2は、関数func()内の動作記述(2)のfor文のみをFPGA0に実行させる分割候補2を生成する。
仮に周波数f=20MHz、prm1=3、prm2=0が与えられたとすると、転送時間評価部3は、BUS0(SPI)のデータ転送能力として、20MHz/{2*(3+1)*2^0=2.5Mbpsを得る。
分割候補1では、関数func全体をハードウェア化するため、ハードウェアへの入出力変数は、outE、inA、inB、inC、inDである。関数funcを1回実行するためには、CPU0とFPGA0との間でBUS0(SPI)を介して、outE=30ビット、inA=12ビット、inB=12ビット、inC=12ビット、inD=15ビットの総ビット数=81ビット分の転送を行う必要がある。転送時間評価部3は、分割候補1に従って機能モデル10の実行をCPU0とFPGA0とで分担させる場合に、CPU0からFPGA0に81ビットのデータが転送されると推定する。SPIのデータ転送能力が2.5Mbpsであるので、転送時間評価部3は、以下のデータ転送時間を得る。
81ビット÷2.5Mbps=32.4μsec
分割候補2では、動作記述(2)をハードウェア化するため、ハードウェアへの入出力変数は、outE、inD、tempである。動作記述(2)を1回実行するためには、CPU0とFPGA0との間でSPIを介して、inD=15ビット、temp=15ビット、outE=30ビットの総ビット数=60ビット分の転送を行う必要がある。転送時間評価部3は、分割候補2に従って機能モデル10の実行をCPU0とFPGA0とで分担させる場合に、CPU0からFPGA0に60ビットのデータが転送されると推定する。SPIのデータ転送能力が2.5Mbpsであるので、転送時間評価部3は、以下のデータ転送時間を得る。
60ビット÷2.5Mbps=24.0μsec
分割候補1と分割候補2との差が動作記述(1)の部分をハードウェアで実行するか、ソフトウェアで実行するかのみであるため、ここでは、動作記述(1)の演算時間の見積もりのみを説明するが、実際には、演算時間算出部4は、機能モデル10の全ての部分について演算時間を見積もる。
動作記述(1)をハードウェアで実行する際のサイクル数=1サイクルである。また、FPGA0は100MHzで動作する。このため、演算時間算出部4は、分割候補1の動作記述(1)の演算時間として、10nsecを得る。
動作記述(1)をソフトウェアで実行する際のサイクル数=4サイクルである。また、CPU0は20MHzで動作する。このため、演算時間算出部4は、分割候補2の動作記述(1)の演算時間として、50nsec*4=200nsecを得る。
(分割候補1の制約時間)
40μsec−(32μsec+10nsec)=7.99μsec
(分割候補2の制約時間)
40μsec−(32μsec+200nsec)=7.80μsec
分割候補1のデータ転送時間と制約時間及び分割候補2のデータ転送時間と制約時間は、以下の通りである。
分割候補1のデータ転送時間=32.4μsec
分割候補1の制約時間=7.99μsec
分割候補2のデータ転送時間=24.0μsec
分割候補2の制約時間=7.80μsec
このため、分割決定部6は、分割候補1の場合、現在の指定インタフェース回路(BUS0)の4.06倍(=32.4μsec÷7.99μsec)以上のデータ転送能力が必要であることを転送時間評価部3に通知する。また、分割決定部6は、分割候補2の場合、現在の指定インタフェース回路(BUS0)の3.08倍(=24.0μsec÷7.80μsec)以上のデータ転送能力が必要であることを転送時間評価部3に通知する。
探索の結果、転送時間評価部3は、分割候補1の場合は、4.06倍以上のデータ転送能力、すなわち、指定インタフェース回路のデータ転送能力を10.15Mbpsにできる設定がないと判定する(prm1=1、prm2=0としても、データ転送能力は10Mbpsまでしか向上されない)。
一方、転送時間評価部3は、分割候補2の場合は、prm1=1、prm2=0とすれば、指定インタフェース回路のデータ転送能力は10Mbpsとなり、必要なデータ転送能力(2.5Mbps*3.08=7.7Mbps)を実現できると判定する。
このため、転送時間評価部3は、以下のデータ転送時間を分割決定部6に出力する。
分割候補1のデータ転送時間=81ビット÷10Mbps=8.1μsec
分割候補2のデータ転送時間=60ビット÷10Mbps=6.0μsec
また、転送時間評価部3は、インタフェース評価条件としてprm1=1、prm2=0を評価情報出力部8に出力する。なお、prm1=1及びprm2=0は、代替パラメータ値に相当する。
分割候補1のデータ転送時間と制約時間及び分割候補2のデータ転送時間と制約時間は、以下の通りである。
分割候補1のデータ転送時間=8.1μsec
分割候補1の制約時間=7.99μsec
分割候補2のデータ転送時間=6.0μsec
分割候補2の制約時間=7.80μsec
本実施の形態では、インタフェース回路の種類に対応付けてデータ転送能力の算出式が用意されている。そして、本実施の形態では、転送時間評価部3が、指定インタフェース回路の種類に対応する算出式を用いて、指定インタフェース回路のデータ転送能力を算出する。このため、本実施の形態によれば、ユーザがインタフェース回路の種類ごとに設定を行わなくてもインタフェース回路の転送能力を算出することができる。
また、本実施の形態では、評価情報出力部8が制約条件を満たす設定を探索し、制約条件を満たす設定を評価情報として出力する。このため、ユーザが設定情報を都度変更しながらインタフェース回路を探索する必要がなくなる。この結果、本実施の形態によれば、データ転送能力を考慮したハードウェア/ソフトウェア分割を効率的に求めることができる。
最後に、情報処理装置1のハードウェア構成の補足説明を行う。
図7に示すプロセッサ901は、プロセッシングを行うIC(Integrated Circuit)である。プロセッサ901は、CPU、DSP等である。
図7に示すメモリ902は、RAM(Random Access Memory)である。図7に示す記憶装置903は、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
そして、OSの少なくとも一部がメモリ902にロードされ、プロセッサ901により実行される。
プロセッサ901はOSの少なくとも一部を実行しながら、分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の機能を実現するプログラムを実行する。
プロセッサ901がOSを実行することで、タスク管理、メモリ管理、ファイル管理、通信制御等が行われる。
また、分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の処理の結果を示す情報、データ、信号値及び変数値の少なくともいずれかが、メモリ902、記憶装置903、プロセッサ901内のレジスタ及びキャッシュメモリの少なくともいずれかに記憶される。
また、分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、情報処理装置1は、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC、FPGAといった電子回路により実現されてもよい。
この場合は、分割候補生成部2、転送時間評価部3、演算時間算出部4、制約時間算出部5、分割決定部6及び評価情報出力部8は、それぞれ電子回路の一部として実現される。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
Claims (10)
- インタフェース回路の種類に対応付けて、データ転送能力を算出するための算出式が記述されるインタフェース転送能力情報を記憶する記憶部と、
複数の演算処理の実行を分担する複数の演算機器を接続するインタフェース回路として複数のインタフェース回路の中から指定された指定インタフェース回路の種類に対応する算出式を前記インタフェース転送能力情報から取得し、取得した算出式を用いて、前記指定インタフェース回路のデータ転送能力を算出する転送能力算出部とを有する情報処理装置。 - 前記記憶部は、
インタフェース回路の種類と演算機器の種類との組合せに対応付けて前記算出式が記述されるインタフェース転送能力情報を記憶し、
前記転送能力算出部は、
前記指定インタフェース回路の種類と前記複数の演算機器のうちのいずれかの演算機器の種類との組合せに対応する算出式を前記インタフェース転送能力情報から取得する請求項1に記載の情報処理装置。 - 前記情報処理装置は、更に、
前記複数の演算処理の実行を前記複数の演算機器で分担する際に前記複数の演算機器の間で転送されるデータ量を推定し、推定したデータ量を前記指定インタフェース回路を介して転送する際のデータ転送時間を、前記転送能力算出部により算出された前記指定インタフェース回路のデータ転送能力に基づき算出する転送時間算出部を有する請求項1に記載の情報処理装置。 - 前記情報処理装置は、更に、
前記複数の演算機器による前記複数の演算処理の分担パターンを複数生成する分担パターン生成部を有し、
前記転送時間算出部は、
分担パターンごとに、前記複数の演算処理の実行を前記複数の演算機器で分担する際に前記複数の演算機器の間で転送されるデータ量を推定し、
分担パターンごとに、推定したデータ量を前記指定インタフェース回路を介して転送する際のデータ転送時間を算出する請求項3に記載の情報処理装置。 - 前記分担パターン生成部は、
前記複数の演算機器による前記複数の演算処理の分担パターンをハードウェア/ソフトウェア分割により複数生成する請求項4に記載の情報処理装置。 - 前記転送能力算出部は、
取得した算出式にパラメータ値を適用して、前記指定インタフェース回路のデータ転送能力を算出し、
前記情報処理装置は、更に、
前記転送時間算出部により算出されたデータ転送時間と、データ転送についての制約時間とを比較する時間比較部と、
前記時間比較部による比較の結果、前記データ転送時間が前記制約時間以下である場合に、前記パラメータ値を評価情報として出力する評価情報出力部とを有する請求項3に記載の情報処理装置。 - 前記転送能力算出部は、
前記時間比較部による比較の結果、前記データ転送時間が前記制約時間を超える場合に、前記パラメータ値と異なる代替パラメータ値を前記算出式に適用して、前記指定インタフェース回路のデータ転送能力を代替データ転送能力として算出し、
前記転送時間算出部は、
前記転送能力算出部により算出された前記代替データ転送能力に基づくデータ転送時間を算出し、
前記時間比較部は、
前記転送時間算出部により前記代替データ転送能力に基づいて算出されたデータ転送時間と前記制約時間とを比較する請求項6に記載の情報処理装置。 - 前記情報処理装置は、更に、
分担パターンごとに、前記転送時間算出部により算出されたデータ転送時間と、データ転送についての制約時間とを比較し、データ転送時間が前記制約時間以下である分担パターンを出力する時間比較部を有する請求項4に記載の情報処理装置。 - インタフェース回路の種類に対応付けて、データ転送能力を算出するための算出式が記述されるインタフェース転送能力情報を記憶するコンピュータが、
複数の演算処理の実行を分担する複数の演算機器を接続するインタフェース回路として複数のインタフェース回路の中から指定された指定インタフェース回路の種類に対応する算出式を前記インタフェース転送能力情報から取得し、取得した算出式を用いて、前記指定インタフェース回路のデータ転送能力を算出する情報処理方法。 - インタフェース回路の種類に対応付けて、データ転送能力を算出するための算出式が記述されるインタフェース転送能力情報を記憶するコンピュータに、
複数の演算処理の実行を分担する複数の演算機器を接続するインタフェース回路として複数のインタフェース回路の中から指定された指定インタフェース回路の種類に対応する算出式を前記インタフェース転送能力情報から取得する処理と、取得した算出式を用いて、前記指定インタフェース回路のデータ転送能力を算出する処理とを実行させる情報処理プログラム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/010856 WO2018167940A1 (ja) | 2017-03-17 | 2017-03-17 | 情報処理装置、情報処理方法及び情報処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2018167940A1 JPWO2018167940A1 (ja) | 2019-07-18 |
JP6580288B2 true JP6580288B2 (ja) | 2019-09-25 |
Family
ID=63523393
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019505641A Active JP6580288B2 (ja) | 2017-03-17 | 2017-03-17 | 情報処理装置、情報処理方法及び情報処理プログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200004503A1 (ja) |
JP (1) | JP6580288B2 (ja) |
WO (1) | WO2018167940A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115022045B (zh) * | 2022-06-02 | 2023-09-19 | 联通(广东)产业互联网有限公司 | 一种基于边缘云的数据处理方法和系统 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000057199A (ja) * | 1998-08-14 | 2000-02-25 | Toshiba Corp | システムの設計支援装置及び設計支援プログラムを記録したコンピュータ読み取り可能な記録媒体 |
JP2005234703A (ja) * | 2004-02-17 | 2005-09-02 | Sanyo Electric Co Ltd | 電子機器開発支援装置、電子機器開発支援方法及び電子機器開発支援プログラム |
JP2009294744A (ja) * | 2008-06-03 | 2009-12-17 | Nec Electronics Corp | バスインターフェース設計装置、バスインターフェース設計方法、及びプログラム |
-
2017
- 2017-03-17 JP JP2019505641A patent/JP6580288B2/ja active Active
- 2017-03-17 US US16/481,386 patent/US20200004503A1/en not_active Abandoned
- 2017-03-17 WO PCT/JP2017/010856 patent/WO2018167940A1/ja active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2018167940A1 (ja) | 2018-09-20 |
US20200004503A1 (en) | 2020-01-02 |
JPWO2018167940A1 (ja) | 2019-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112035397B (zh) | 包括fpga的电子系统及其操作方法 | |
KR102211011B1 (ko) | 동적 가변 정밀도 계산 | |
JP7004712B2 (ja) | プログラム可能クロックモニタ | |
JP6907700B2 (ja) | 情報処理装置、マルチスレッド行列演算方法、およびマルチスレッド行列演算プログラム | |
KR102166650B1 (ko) | 제어 장치의 작동 방법 및 모델 연산 유닛을 포함하는 제어 장치 | |
JP5014920B2 (ja) | 回路設計方法、ならびにその方法により製造される集積回路 | |
JP2021515936A (ja) | 16ビット浮動小数点乗算器を用いた行列と行列の乗算による複数精度整数乗算器 | |
JP6580288B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP6992343B2 (ja) | 情報処理装置、情報処理方法、および情報処理プログラム | |
US20170357744A1 (en) | Global routing framework of integrated circuit based on localized routing optimization | |
JP2022519258A (ja) | アンカーデータ要素における特殊値の符号化 | |
Khan et al. | Accelerating SpMV multiplication in probabilistic model checkers using GPUs | |
JP6752393B1 (ja) | 設計支援システムおよび設計支援プログラム | |
JP6735951B2 (ja) | 高位合成装置、高位合成方法および高位合成プログラム | |
JP6548848B2 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP2017072908A (ja) | プログラム、情報処理装置及び情報処理方法 | |
JP6266183B2 (ja) | 回路設計支援装置および回路設計支援プログラム | |
Ho et al. | NnCore: A parameterized non-linear function generator for machine learning applications in FPGAs | |
US11630667B2 (en) | Dedicated vector sub-processor system | |
WO2023248309A1 (ja) | データ処理装置、データ処理プログラム、及びデータ処理方法 | |
Varma et al. | Fpga-based acceleration of de novo genome assembly | |
US20230162067A1 (en) | Computer-readable recording medium storing causal search program, causal search method, and information processing apparatus | |
US20240264942A1 (en) | Co-compute unit in lower-level cache architecture | |
JP5266651B2 (ja) | ローカル分岐履歴を用いた分岐予測装置及び分岐予測方法 | |
JP7081331B2 (ja) | 回路合成装置、回路合成方法、及び、回路合成プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190409 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20190409 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20190711 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190717 |
|
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: 20190730 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190827 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6580288 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |