JP6489985B2 - プログラム開発支援装置およびプログラム開発支援ソフトウェア - Google Patents
プログラム開発支援装置およびプログラム開発支援ソフトウェア Download PDFInfo
- Publication number
- JP6489985B2 JP6489985B2 JP2015186569A JP2015186569A JP6489985B2 JP 6489985 B2 JP6489985 B2 JP 6489985B2 JP 2015186569 A JP2015186569 A JP 2015186569A JP 2015186569 A JP2015186569 A JP 2015186569A JP 6489985 B2 JP6489985 B2 JP 6489985B2
- Authority
- JP
- Japan
- Prior art keywords
- arithmetic
- data
- process execution
- execution function
- function
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
- G06F8/22—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
図3は、本実施形態1に係るプログラム開発支援装置10の構成を示すブロック図であり、図4は、そのプログラム開発支援装置10が実装されるハードウェアの構成例を示すブロック図である。また、図5は、ターゲットデバイス50の構成例を示すブロック図である。
実施形態1では、データ転送関数として単純なコピーのみについて説明したが、演算装置の割当てに合わせて必要となるデータ転送関数には、データフォーマットを変換する関数が含まれてもよい。
データ転送関数に、ビッグエンディアンをリトルエンディアンとの間の変換関数が含まれる実施形態について説明する。
以上の説明は、エンディアンではなく、固定小数点か浮動小数点か、或いは、単精度か倍精度かなどのビット精度について、データ転送関数の転送前と後の演算装置の間で、データフォーマットが異なる場合にも同様に適用される。固定小数点から浮動小数点へのデータフォーマット変換、浮動小数点から固定小数点へのデータデータフォーマット変換、或いは、単精度から倍精度へのデータフォーマット変換、倍精度から単精度へのデータフォーマット変換は、適宜、データ転送関数に付加機能として追加される。ここで、単精度、倍精度は1バイトで表記される数値、2バイトで表記される数値に限らず、3バイト以上で表記されるデータについても同様に拡張される。また、バイト単位のデータに限らず、任意のビット長のデータに変更されてもよい。
図19は、データ転送関数に付随するデータ配列変換機能の一例について模式的に説明するための説明図である。演算装置の割当てに合わせて必要となるデータ転送関数に付随する、データフォーマット変換には、演算装置に適するデータ配列の変換が含まれてもよい。例えば、1つの演算装置A(20)が、汎用プロセッサの一種であるCPUであり、演算装置B(30)がSIMD(Single Instruction Multiple Data)型の並列プロセッサアーキテクチャを採用するアクセラレータであるような場合に、データ配列の変換を行う。演算装置A(20)の入出力データは、図19の下側に示すように順次アドレスによってアクセスされることを前提としたデータ配列が適しており、一方、SIMD型並列プロセッサの場合には、図19の上側に示すように、並列に動作するプロセッサエレメントPE(Processor Element)が並列にデータアクセスするのに適したデータ配列とされるのがよい。そのため、演算装置A(20)による処理の直後に演算装置B(30)での処理を実行するときには、図19の下から上方向のデータ配列変換を行い、演算装置B(30)での処理の結果は、図19の上から下方向のデータ配列変換を行って、演算装置A(20)による処理に戻す。
2 グラフ情報保持部
3 プログラム生成部
4 出力プログラム
5 処理実行関数データベース
6 データ転送関数データベース
7 表示装置(ディスプレイ)
8 入力装置(マウス)
9 計算機
10 プログラム開発支援装置
20、30 演算装置
31 演算装置の設定レジスタ
22、32 プログラムメモリ
23、33 データメモリ
40 データ転送装置
41 データ転送装置の設定レジスタ
50 ターゲットデバイス
61〜64 ノード
71〜75 接続線
81〜84 演算装置情報
90 グラフ情報入力・編集画面
91 マウスカーソル
92 コード生成ボタン
93 処理ノード追加ボタン
94 コンテキストメニュー
Claims (20)
- 複数の演算装置を有するターゲットデバイス上で動作することによってデータ処理を行なうプログラムを生成する、プログラム開発支援装置であって、
表示装置と入力装置と計算機とを備え、前記計算機の機能として実装される、グラフィカルユーザーインターフェース部と、グラフ情報保持部と、プログラム生成部と、処理実行関数データベースと、データ転送関数データベースとを有し、
前記グラフィカルユーザーインターフェース部は、前記ターゲットデバイスによって実行される前記データ処理のグラフ情報を、前記データ処理に含まれる複数の処理のそれぞれをノードとしデータの流れを有向接続線とするグラフとして、前記表示装置に表示し、
前記グラフ情報保持部は、前記グラフ情報を保持し、
前記処理実行関数データベースは、前記複数の演算装置のうち前記処理を実行可能な演算装置のそれぞれについて、前記処理を当該演算装置によって実行させるための処理実行関数を保持し、
前記データ転送関数データベースは、前記処理実行関数を対応する演算装置で実行させるためのデータ転送関数を保持し、
前記プログラム生成部は、前記グラフ情報に基づいて、前記処理実行関数データベースから適切な処理実行関数を読込み、前記データ転送関数データベースから適切なデータ転送関数を読み込んで、前記プログラムを生成し、
前記複数の処理のうちの第1の処理が、前記複数の演算装置のうち、互いに種類の異なる、第1演算装置と第2演算装置のうちのどちらの演算装置によっても実行可能であり、
前記処理実行関数データベースは、前記第1の処理を前記第1演算装置で実行するための第1処理実行関数と、前記第1の処理を前記第2演算装置で実行するための第2処理実行関数とを保持し、
前記データ転送関数データベースは、前記第1処理実行関数を前記第1演算装置で実行させるための第1データ転送関数と、前記第2処理実行関数を前記第2演算装置で実行させるための第2データ転送関数とのうちの少なくとも一方を保持し、
前記グラフィカルユーザーインターフェース部は、前記データ処理に前記第1の処理が含まれるときに、前記第1の処理に対応するノードに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置に表示可能であり、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、前記入力装置によって選択された演算装置に対応して、前記処理実行関数データベースから前記第1処理実行関数または前記第2処理実行関数を選択的に読み込み、前記データ転送関数データベースから前記第1データ転送関数または前記第2データ転送関数を選択的に読み込んで、前記プログラムを生成する、
プログラム開発支援装置。 - 請求項1において、前記第1処理は、前記複数の演算装置のうち、前記第1演算装置と前記第2演算装置とは種類が異なる、第3演算装置によっても実行可能であり、
前記処理実行関数データベースは、前記第1の処理を前記第3演算装置で実行するための第3処理実行関数をさらに保持し、
前記データ転送関数データベースは、前記第3処理実行関数を前記第3演算装置で実行させるための第3データ転送関数を保持し、
前記グラフィカルユーザーインターフェース部は、前記データ処理に前記第1の処理が含まれるときに、前記第1の処理に対応するノードに、前記第1演算装置または前記第2演算装置または前記第3演算装置で実行可能であることを前記表示装置に表示させ、前記第1演算装置または前記第2演算装置または前記第3演算装置のうちのどの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、前記入力装置によって選択された演算装置に対応して、前記処理実行関数データベースから前記第1処理実行関数または前記第2処理実行関数または前記第3処理実行関数を選択的に読み込み、前記データ転送関数データベースから前記第1データ転送関数または前記第2データ転送関数または前記第3データ転送関数を選択的に読み込んで、前記プログラムを生成する、
プログラム開発支援装置。 - 請求項1において、前記第1演算装置は汎用プロセッサであり、前記第2演算装置はアクセラレータであり、
前記データ処理に含まれる全ての処理は、前記第1演算装置で実行可能であり、一部の処理は前記第2演算装置でも実行可能であり、
前記処理実行関数データベースは、前記全ての処理のそれぞれについて前記第1演算装置で実行させるための第1処理実行関数群と、前記一部の処理について前記第2演算装置で実行させるための第2処理実行関数群とを保持し、
前記データ転送関数データベースは、前記第2処理実行関数群に含まれるそれぞれの処理実行関数について、当該処理実行関数を前記第2演算装置で実行させるために前記第1演算装置から前記第2演算装置へ当該処理実行関数の入力データを転送する入力データ転送関数と、当該処理実行関数が前記第2演算装置で実行された結果を前記第1演算装置へ転送する出力データ転送関数とを保持し、
前記グラフィカルユーザーインターフェース部は、初期段階では前記データ処理に含まれる全ての処理を前記第1演算装置によって実行されるものとして表示し、
前記プログラム生成部は、初期段階では前記処理実行関数データベースから前記第1処理実行関数群を優先的に読み込んで、前記プログラムを生成し、
前記グラフィカルユーザーインターフェース部は、前記一部の処理に対応するノードに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置に表示可能であり、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、あるノードについて前記入力装置によって選択された演算装置が前記第2演算装置であるときに、前記処理実行関数データベースから前記第2処理実行関数群から対応する処理実行関数を読み込み、前記データ転送関数データベースから対応する入力データ転送関数と出力データ転送関数とを読み込んで、前記プログラムを更新する、
プログラム開発支援装置。 - 請求項3において、前記入力装置はマウスであり、
前記グラフィカルユーザーインターフェース部は、前記マウスのカーソルによって選択されたノードが前記一部の処理に対応するノードであるときに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置にコンテキストメニューとして表示し、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記マウスのカーソルによって選択可能とされる、
プログラム開発支援装置。 - 請求項3において、前記入力装置はマウスであり、
前記グラフィカルユーザーインターフェース部は、前記マウスによって選択されたノードが前記一部の処理に対応するノードであるときに、前記ノードに対応する処理を実行する演算装置を、前記第1演算装置から前記第2演算装置に切り替え、当該ノードが再度選択されたときには、前記ノードに対応する処理を実行する演算装置を、前記第2演算装置から前記第2演算装置に切り替える、
プログラム開発支援装置。 - 請求項5において、ノードは前記マウスのダブルクリックによって選択される、
プログラム開発支援装置。 - 請求項5において、前記一部の処理のさらに一部の処理はさらに他の演算装置でも実行可能であり、
前記グラフィカルユーザーインターフェース部は、前記マウスによって選択されたノードが前記一部の処理にさらに含まれる前記一部の処理に対応するノードであるときに、前記ノードに対応する処理を実行する演算装置を、前記第1演算装置と前記第2演算装置と前記他の演算装置の間で、所定の順序に従って順次切り替える、
プログラム開発支援装置。 - 請求項1において、
前記第1処理実行関数の入力データのフォーマットが、前記第1処理実行関数の直前に前記第1演算装置とは異なる演算装置で実行される処理実行関数の出力データのフォーマットと異なるとき、前記第1データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのフォーマットを前記入力データのフォーマットに変換する機能を有し、
前記第2処理実行関数の入力データのフォーマットが、前記第2処理実行関数の直前に前記第2演算装置とは異なる演算装置で実行される処理実行関数の出力データのフォーマットと異なるとき、前記第2データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのフォーマットを前記入力データのフォーマットに変換する機能を有する、
プログラム開発支援装置。 - 請求項8において、前記フォーマットは、ビッグエンディアンかリトルエンディアンか、固定小数点か浮動小数点か、ビット精度によって規定される、
プログラム開発支援装置。 - 請求項1において、
前記第1処理実行関数の入力データのデータ配列が、前記第1処理実行関数の直前に前記第1演算装置とは異なる演算装置で実行される処理実行関数の出力データのデータ配列と異なるとき、前記第1データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのデータ配列を前記入力データのデータ配列に変換する機能を有し、
前記第2処理実行関数の入力データのデータ配列が、前記第2処理実行関数の直前に前記第2演算装置とは異なる演算装置で実行される処理実行関数の出力データのデータ配列と異なるとき、前記第2データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データデータ配列を前記入力データのデータ配列に変換する機能を有する、
プログラム開発支援装置。 - 表示装置と入力装置とが接続される計算機上で動作することによって、複数の演算装置を有するターゲットデバイス上で動作することによってデータ処理を行なうプログラムを生成する、プログラム開発支援ソフトウェアであって、
グラフィカルユーザーインターフェース部と、グラフ情報保持部と、プログラム生成部と、処理実行関数データベースと、データ転送関数データベースとを有し、
前記グラフィカルユーザーインターフェース部は、前記ターゲットデバイスによって実行される前記データ処理のグラフ情報を、前記データ処理に含まれる複数の処理のそれぞれをノードとしデータの流れを有向接続線とするグラフとして、前記表示装置に表示し、
前記グラフ情報保持部は、前記グラフ情報を保持し、
前記処理実行関数データベースは、前記複数の演算装置のうち前記処理を実行可能な演算装置のそれぞれについて、前記処理を当該演算装置によって実行させるための処理実行関数を保持し、
前記データ転送関数データベースは、前記処理実行関数を対応する演算装置で実行させるためのデータ転送関数を保持し、
前記プログラム生成部は、前記グラフ情報に基づいて、前記処理実行関数データベースから適切な処理実行関数を読込み、前記データ転送関数データベースから適切なデータ転送関数を読み込んで、前記プログラムを生成し、
前記複数の処理のうちの第1の処理が、前記複数の演算装置のうち、互いに種類の異なる、第1演算装置と第2演算装置のうちのどちらの演算装置によっても実行可能であり、
前記処理実行関数データベースは、前記第1の処理を前記第1演算装置で実行するための第1処理実行関数と、前記第1の処理を前記第2演算装置で実行するための第2処理実行関数とを保持し、
前記データ転送関数データベースは、前記第1処理実行関数を前記第1演算装置で実行させるための第1データ転送関数と、前記第2処理実行関数を前記第2演算装置で実行させるための第2データ転送関数とのうちの少なくとも一方を保持し、
前記グラフィカルユーザーインターフェース部は、前記データ処理に前記第1の処理が含まれるときに、前記第1の処理に対応するノードに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置に表示可能であり、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、前記入力装置によって選択された演算装置に対応して、前記処理実行関数データベースから前記第1処理実行関数または前記第2処理実行関数を選択的に読み込み、前記データ転送関数データベースから前記第1データ転送関数または前記第2データ転送関数を選択的に読み込んで、前記プログラムを生成する、
プログラム開発支援ソフトウェア。 - 請求項11において、前記第1処理は、前記複数の演算装置のうち、前記第1演算装置と前記第2演算装置とは種類が異なる、第3演算装置によっても実行可能であり、
前記処理実行関数データベースは、前記第1の処理を前記第3演算装置で実行するための第3処理実行関数をさらに保持し、
前記データ転送関数データベースは、前記第3処理実行関数を前記第3演算装置で実行させるための第3データ転送関数を保持し、
前記グラフィカルユーザーインターフェース部は、前記データ処理に前記第1の処理が含まれるときに、前記第1の処理に対応するノードに、前記第1演算装置または前記第2演算装置または前記第3演算装置で実行可能であることを前記表示装置に表示させ、前記第1演算装置または前記第2演算装置または前記第3演算装置のうちのどの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、前記入力装置によって選択された演算装置に対応して、前記処理実行関数データベースから前記第1処理実行関数または前記第2処理実行関数または前記第3処理実行関数を選択的に読み込み、前記データ転送関数データベースから前記第1データ転送関数または前記第2データ転送関数または前記第3データ転送関数を選択的に読み込んで、前記プログラムを生成する、
プログラム開発支援ソフトウェア。 - 請求項11において、前記第1演算装置は汎用プロセッサであり、前記第2演算装置はアクセラレータであり、
前記データ処理に含まれる全ての処理は、前記第1演算装置で実行可能であり、一部の処理は前記第2演算装置でも実行可能であり、
前記処理実行関数データベースは、前記全ての処理のそれぞれについて前記第1演算装置で実行させるための第1処理実行関数群と、前記一部の処理について前記第2演算装置で実行させるための第2処理実行関数群とを保持し、
前記データ転送関数データベースは、前記第2処理実行関数群に含まれるそれぞれの処理実行関数について、当該処理実行関数を前記第2演算装置で実行させるために前記第1演算装置から前記第2演算装置へ当該処理実行関数の入力データを転送する入力データ転送関数と、当該処理実行関数が前記第2演算装置で実行された結果を前記第1演算装置へ転送する出力データ転送関数とを保持し、
前記グラフィカルユーザーインターフェース部は、初期段階では前記データ処理に含まれる全ての処理を前記第1演算装置によって実行されるものとして表示し、
前記プログラム生成部は、初期段階では前記処理実行関数データベースから前記第1処理実行関数群を優先的に読み込んで、前記プログラムを生成し、
前記グラフィカルユーザーインターフェース部は、前記一部の処理に対応するノードに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置に表示可能であり、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記入力装置によって選択可能とし、
前記プログラム生成部は、あるノードについて前記入力装置によって選択された演算装置が前記第2演算装置であるときに、前記処理実行関数データベースから前記第2処理実行関数群から対応する処理実行関数を読み込み、前記データ転送関数データベースから対応する入力データ転送関数と出力データ転送関数とを読み込んで、前記プログラムを更新する、
プログラム開発支援ソフトウェア。 - 請求項13において、前記入力装置はマウスであり、
前記グラフィカルユーザーインターフェース部は、前記マウスのカーソルによって選択されたノードが前記一部の処理に対応するノードであるときに、前記第1演算装置または前記第2演算装置で実行可能であることを前記表示装置にコンテキストメニューとして表示し、前記第1演算装置または前記第2演算装置のうちのどちらの演算装置で実行させるかを前記マウスのカーソルによって選択可能とされる、
プログラム開発支援ソフトウェア。 - 請求項13において、前記入力装置はマウスであり、
前記グラフィカルユーザーインターフェース部は、前記マウスによって選択されたノードが前記一部の処理に対応するノードであるときに、前記ノードに対応する処理を実行する演算装置を、前記第1演算装置から前記第2演算装置に切り替え、当該ノードが再度選択されたときには、前記ノードに対応する処理を実行する演算装置を、前記第2演算装置から前記第2演算装置に切り替える、
プログラム開発支援ソフトウェア。 - 請求項15において、ノードは前記マウスのダブルクリックによって選択される、
プログラム開発支援ソフトウェア。 - 請求項15において、前記一部の処理のさらに一部の処理はさらに他の演算装置でも実行可能であり、
前記グラフィカルユーザーインターフェース部は、前記マウスによって選択されたノードが前記一部の処理にさらに含まれる前記一部の処理に対応するノードであるときに、前記ノードに対応する処理を実行する演算装置を、前記第1演算装置と前記第2演算装置と前記他の演算装置の間で、所定の順序に従って順次切り替える、
プログラム開発支援ソフトウェア。 - 請求項11において、
前記第1処理実行関数の入力データのフォーマットが、前記第1処理実行関数の直前に前記第1演算装置とは異なる演算装置で実行される処理実行関数の出力データのフォーマットと異なるとき、前記第1データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのフォーマットを前記入力データのフォーマットに変換する機能を有し、
前記第2処理実行関数の入力データのフォーマットが、前記第2処理実行関数の直前に前記第2演算装置とは異なる演算装置で実行される処理実行関数の出力データのフォーマットと異なるとき、前記第2データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのフォーマットを前記入力データのフォーマットに変換する機能を有する、
プログラム開発支援ソフトウェア。 - 請求項18において、前記フォーマットは、ビッグエンディアンかリトルエンディアンか、固定小数点か浮動小数点か、ビット精度によって規定される、
プログラム開発支援ソフトウェア。 - 請求項11において、
前記第1処理実行関数の入力データのデータ配列が、前記第1処理実行関数の直前に前記第1演算装置とは異なる演算装置で実行される処理実行関数の出力データのデータ配列と異なるとき、前記第1データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データのデータ配列を前記入力データのデータ配列に変換する機能を有し、
前記第2処理実行関数の入力データのデータ配列が、前記第2処理実行関数の直前に前記第2演算装置とは異なる演算装置で実行される処理実行関数の出力データのデータ配列と異なるとき、前記第2データ転送関数は、前記入力データを前記異なる演算装置から転送するとともに、前記出力データデータ配列を前記入力データのデータ配列に変換する機能を有する、
プログラム開発支援ソフトウェア。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015186569A JP6489985B2 (ja) | 2015-09-24 | 2015-09-24 | プログラム開発支援装置およびプログラム開発支援ソフトウェア |
US15/249,336 US10310823B2 (en) | 2015-09-24 | 2016-08-26 | Program development support system and program development support software |
CN201610839473.XA CN106557312B (zh) | 2015-09-24 | 2016-09-21 | 程序开发支援装置以及程序开发支援软件 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015186569A JP6489985B2 (ja) | 2015-09-24 | 2015-09-24 | プログラム開発支援装置およびプログラム開発支援ソフトウェア |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017062554A JP2017062554A (ja) | 2017-03-30 |
JP6489985B2 true JP6489985B2 (ja) | 2019-03-27 |
Family
ID=58407292
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015186569A Active JP6489985B2 (ja) | 2015-09-24 | 2015-09-24 | プログラム開発支援装置およびプログラム開発支援ソフトウェア |
Country Status (3)
Country | Link |
---|---|
US (1) | US10310823B2 (ja) |
JP (1) | JP6489985B2 (ja) |
CN (1) | CN106557312B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107729098B (zh) * | 2017-09-25 | 2021-06-29 | 北京小米移动软件有限公司 | 用户界面显示方法及装置 |
KR20200136679A (ko) * | 2019-05-28 | 2020-12-08 | 삼성에스디에스 주식회사 | 이종 언어 함수를 포함하는 워크플로우 실행 방법 및 그 장치 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5317734A (en) * | 1989-08-29 | 1994-05-31 | North American Philips Corporation | Method of synchronizing parallel processors employing channels and compiling method minimizing cross-processor data dependencies |
US6378066B1 (en) * | 1999-02-04 | 2002-04-23 | Sun Microsystems, Inc. | Method, apparatus, and article of manufacture for developing and executing data flow programs, and optimizing user input specifications |
JP4514465B2 (ja) | 2003-02-13 | 2010-07-28 | 株式会社ミツトヨ | 制御プログラム組立てシステム及びプログラム |
US7478375B1 (en) * | 2004-04-23 | 2009-01-13 | Computer Associates Think, Inc. | Directed acyclic graph (DAG) exploration through separation of concerns |
US7586492B2 (en) * | 2004-12-20 | 2009-09-08 | Nvidia Corporation | Real-time display post-processing using programmable hardware |
JP5016807B2 (ja) * | 2005-10-07 | 2012-09-05 | 株式会社日立ハイテクノロジーズ | データ処理システム |
US7941200B2 (en) * | 2005-12-08 | 2011-05-10 | Roche Diagnostics Operations, Inc. | System and method for determining drug administration information |
JP2007213417A (ja) * | 2006-02-10 | 2007-08-23 | Canon Inc | プログラムコード生成装置、方法、及びコンピュータプログラム |
JP2008198143A (ja) * | 2007-02-15 | 2008-08-28 | Fuji Electric Fa Components & Systems Co Ltd | プログラマブルコントローラ用プログラム作成支援装置およびプログラム作成支援方法 |
JP2010073062A (ja) * | 2008-09-19 | 2010-04-02 | Ricoh Co Ltd | 画像処理装置、画像処理方法及びプログラム |
JP4886838B2 (ja) * | 2009-10-30 | 2012-02-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 並列化方法、システム、及びプログラム |
JP2012038068A (ja) * | 2010-08-06 | 2012-02-23 | Mitsubishi Heavy Ind Ltd | プログラム作成装置及び画像制御システム |
US9116738B2 (en) * | 2012-11-13 | 2015-08-25 | International Business Machines Corporation | Method and apparatus for efficient execution of concurrent processes on a multithreaded message passing system |
JP6257254B2 (ja) * | 2013-10-08 | 2018-01-10 | キヤノン株式会社 | 設計支援装置、設計支援方法、及びプログラム |
-
2015
- 2015-09-24 JP JP2015186569A patent/JP6489985B2/ja active Active
-
2016
- 2016-08-26 US US15/249,336 patent/US10310823B2/en active Active
- 2016-09-21 CN CN201610839473.XA patent/CN106557312B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN106557312B (zh) | 2021-07-09 |
US20170090882A1 (en) | 2017-03-30 |
CN106557312A (zh) | 2017-04-05 |
US10310823B2 (en) | 2019-06-04 |
JP2017062554A (ja) | 2017-03-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2021192257A (ja) | プログラム可能な最適化を有するメモリネットワークプロセッサ | |
US6877150B1 (en) | Method of transforming software language constructs to functional hardware equivalents | |
WO2020062086A1 (zh) | 选择处理器的方法和装置 | |
JP6237278B2 (ja) | コンパイルプログラム、コンパイル方法およびコンパイル装置 | |
CN111027703B (zh) | 一种量子线路查询的方法、装置、存储介质及电子装置 | |
JP5966509B2 (ja) | プログラム、コード生成方法および情報処理装置 | |
JP7088897B2 (ja) | データアクセス方法、データアクセス装置、機器及び記憶媒体 | |
JP3246438B2 (ja) | 可変ターゲットコンパイル処理方法、その処理装置、そのプログラムの記憶媒体および変換テーブルの記憶媒体 | |
WO2009131007A1 (ja) | Simd型並列計算機システム、simd型並列計算方法及び制御プログラム | |
JPWO2017037903A1 (ja) | 半導体システムおよび計算方法 | |
JP6489985B2 (ja) | プログラム開発支援装置およびプログラム開発支援ソフトウェア | |
CN114341795A (zh) | 用于系统设计的会话设计机器人 | |
JP5979965B2 (ja) | 回路設計支援装置及び回路設計支援方法及びプログラム | |
US8782587B2 (en) | Systems and methods for generating a higher level description of a circuit design based on connectivity strengths | |
JPH07141192A (ja) | 翻訳処理方法 | |
US11308025B1 (en) | State machine block for high-level synthesis | |
KR102471553B1 (ko) | 컴퓨팅 기기에 의해 수행되는 방법, 장치, 기기 및 컴퓨터 판독가능 저장 매체 | |
JP4898365B2 (ja) | 組み込み用プログラム開発装置、及びプログラム自動生成方法 | |
JP6253048B2 (ja) | 不揮発性論理集積回路設計支援システム | |
JP2018041301A (ja) | Rtl最適化システム及びrtl最適化プログラム | |
JP6993573B2 (ja) | プログラム解析方法、プログラム解析装置およびプログラム解析プログラム | |
JP6137962B2 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP2015161983A (ja) | ソースコード生成装置 | |
JP5757320B2 (ja) | データ処理装置、データ処理方法およびデータ処理プログラム | |
JP5267376B2 (ja) | 動作合成装置、動作合成方法、ならびに、プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20170330 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190131 |
|
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: 20190212 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190226 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6489985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |