JP2012181674A - プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム - Google Patents
プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム Download PDFInfo
- Publication number
- JP2012181674A JP2012181674A JP2011044110A JP2011044110A JP2012181674A JP 2012181674 A JP2012181674 A JP 2012181674A JP 2011044110 A JP2011044110 A JP 2011044110A JP 2011044110 A JP2011044110 A JP 2011044110A JP 2012181674 A JP2012181674 A JP 2012181674A
- Authority
- JP
- Japan
- Prior art keywords
- program
- execution
- gpu
- time
- cpu
- 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
Links
Images
Abstract
【解決手段】本発明のプログラム作成支援装置は、CPUおよびGPUを用いて実行されるプログラムの作成を支援する。プログラム作成支援装置は、実行予測時間を求める対象となるプログラムを取得するプログラム取得部と、プログラムの実行予測時間の算出に用いられる設定情報を記憶する設定情報記憶部と、設定情報記憶部を参照して、プログラムのうちCPUにて実行されるCPU側実行プログラムの実行予測時間と、プログラムのうちGPUにて実行されるGPU側実行プログラムの実行予測時間と、CPUとGPUとの間におけるプログラム呼び出し時間と、を算出し、これらの時間を加算してプログラムの最大実行予測時間として算出する演算処理部と、演算処理部の演算結果の最大実行予測時間を出力する出力部と、を備えることを特徴とする。
【選択図】図1
Description
まず、図1を参照して、本発明の実施形態に係るプログラム作成支援装置の概要について説明する。なお、図1は、本実施形態に係るプログラム作成支援装置の機能の概要を説明するための説明図である。
まず、図2および図3に基づいて、本発明の実施形態に係るプログラム作成支援装置10のハードウェア構成について、詳細に説明する。なお、図2は、本発明の実施形態に係るプログラム作成支援装置10のハードウェア構成を説明するブロック図である。図3は、本実施形態に係るGPU102のハードウェア構成を説明する説明図である。
次に、図4に基づいて、プログラム作成支援装置10におけるアプリケーションプログラムの実行時間を予測する実行予測時間算出処理を行う予測処理部200について説明する。図4は、本実施形態に係るプログラム作成支援装置10の予測処理部200の機能構成を示す機能ブロック図である。予測処理部200は、図4に示すように、プログラム取得部210と、演算処理部220と、出力部230と、設定情報記憶部240と、メモリ250とからなる。
プログラム作成支援装置10の予測処理部200は、上述の各機能部を機能させて、アプリケーションプログラムの最大実行予測時間を算出する。ここで、アプリケーションプログラムの最大実行予測時間は、CPU側実行プログラムの実行予測時間(A)、GPU側実行プログラムの実行予測時間(C、D)、およびCPU側実行プログラムからGPU側実行プログラムを呼び出すオーバーヘッド時間(B)の和で表される。予測処理部200の演算処理部220は、これらの時間を順次算出し、加算して、最大実行予測時間を算出する。
まず、図5に基づいて、CPU側実行プログラムからGPU側実行プログラムを呼び出すオーバーヘッド時間(B)の算出処理を説明する。図5は、CPU側実行プログラムからGPU側実行プログラムを呼び出すオーバーヘッド時間(B)の算出処理を示すフローチャートである。
次いで、図6、図9および図10に基づいて、CPU側実行プログラムの実行予測時間(A)の算出処理を説明する。図6は、CPU側実行プログラムの実行予測時間(A)の算出処理を示すフローチャートである。図9は、変数一覧リストの一構成例を示す説明図である。図10は、ロジック行一覧リストの一構成例を示す説明図である。
次いで、図7、図8、図11〜図15に基づいて、GPU側実行プログラムの実行予測時間(C、D)の算出処理を説明する。図7は、GPU側実行プログラムのうち、ブロックプログラムについての実行予測時間(C)の算出処理を示すフローチャートである。図8は、GPU側実行プログラムのうち、スレッドプログラムについての実行予測時間(D)の算出処理を示すフローチャートである。図11は、グローバル変数一覧リストの一構成例を示す説明図である。図12は、シェアード変数一覧リストの一構成例を示す説明図である。図13は、ブロックプログラムのロジック行一覧リストの一構成例を示す説明図である。図14は、ローカル変数一覧リストの一構成例を示す説明図である。図15は、スレッドプログラムのロジック行一覧リストの一構成例を示す説明図である。
GPU側実行プログラムの実行予測時間(C、D)の算出処理の準備処理として、演算処理部220は、図1のグローバルメモリ入力領域6に入力された変数宣言を探索し、グローバル変数一覧リストに格納する。グローバルメモリ入力領域6に入力された変数は、GPU側実行プログラムにて共通の変数(グローバル変数)であり、ビデオメモリ20に格納されている。グローバル変数一覧リストは、GPU側実行プログラムの実行予測時間を算出するための作業用テーブルであり、例えば図11に示すように、グローバル変数名、グローバル変数の型、サイズ等が格納される。グローバル変数一覧リストは、図4のメモリ250に記憶されている。
ブロックプログラムについての実行予測時間(C)の算出処理では、まず、演算処理部220は、図7に示すように、ブロックプログラム入力領域4に入力されたプログラムから、シェアード変数を探索し、シェアード変数一覧リストに格納する(S300)。ブロックプログラムにて宣言された変数であるシェアード変数は、各マルチプロセッサ140のシェアードメモリ142に記憶されている。一般に、当該シェアード変数が格納されたシェアードメモリ142にアクセス可能なストリーミングプロセッサ144にて実行されるプログラムに高い頻度で出現する変数がシェアード変数として設定される。
スレッドプログラムについての実行予測時間(D)の算出処理も、図7に示したブロックプログラムについての実行予測時間(C)の算出処理と同様に行うことができる。以下、図8に基づいて、スレッドプログラムについての実行予測時間(D)の算出処理を説明するが、図7と同様の処理については詳細な説明を省略する。
演算処理部220は、図7および図8に示した処理により、ブロックプログラムの実行予測時間Cとスレッドプログラムの実行予測時間Dとを加算して、GPU側実行プログラムの実行予測時間を取得する。
演算処理部220は、CPU側実行プログラムの実行予測時間(A)、GPU側実行プログラムの実行予測時間(C、D)、およびCPU側実行プログラムからGPU側実行プログラムを呼び出すオーバーヘッド時間(B)を算出すると、これらの値を加算する。この加算値がアプリケーションプログラムの最大実行予測時間となる。演算処理部220は、アプリケーションプログラムの最大実行予測時間を算出すると、出力部230へ出力する。これにより、図1の予測処理画面1内の出力結果表示領域8に、アプリケーションプログラムの最大実行予測時間が表示される。
本実施形態に係るプログラム作成支援装置10を利用して作成されるアプリケーションプログラムの一例を図16に示す。図16は、熱プラント燃焼のオンライン最適化制御を行うアプリケーションプログラムの一例を示している。熱プラント燃焼のオンライン最適化制御装置は、実プロセスにおける燃料ガス温度や燃料ガス流量等の実績データや操業条件が入力値として入力されると、複数の候補解(例えば、燃料ガス温度や燃焼ガス流量等の設定候補値(設計変数))についてそれぞれ制御シミュレータによりシミュレートし、最適な設定値を決定して、制御情報としてプロセスコンピュータへ出力する。
101 CPU
102 GPU
140 マルチプロセッサ
142 シェアードメモリ
144 ストリーミングプロセッサ
200 予測処理部
210 プログラム取得部
220 演算処理部
230 出力部
240 設定情報記憶部
250 メモリ
Claims (10)
- CPUおよびGPUを用いて実行されるプログラムの作成に際して、作成したプログラムの実行予測時間を求めるプログラム作成支援装置であって、
実行予測時間を求める対象であるプログラムを取得するプログラム取得部と、
前記プログラムの実行予測時間の算出に用いられる、CPUおよびGPUによる基本的処理に要する時間の情報を含む設定情報を記憶する設定情報記憶部と、
前記設定情報記憶部に記憶された設定情報を参照して、前記プログラムのうち前記CPUにて実行されるCPU側実行プログラムの実行予測時間と、前記プログラムのうち前記GPUにて実行されるGPU側実行プログラムの実行予測時間と、前記CPUと前記GPUとの間におけるプログラム呼び出し時間と、を算出し、これらの時間を加算して前記プログラムの最大実行予測時間として算出する演算処理部と、
前記演算処理部の演算結果の最大実行予測時間を出力する出力部と、
を備えることを特徴とする、プログラム作成支援装置。 - 前記GPUは、
複数の第1演算処理部と、
前記各第1演算処理部に複数搭載され、当該第1演算処理部より高速演算処理可能な第2演算処理部と、
を備え、
前記演算処理部は、
前記GPU側実行プログラムの実行予測時間を、
前記第1演算処理部により実行される第1プログラムの実行時間と、前記第2演算処理部により実行される第2プログラムの実行時間とを加算して算出することを特徴とする、請求項1に記載のプログラム作成支援装置。 - 前記演算処理部は、
前記GPU側実行プログラムの第1プログラムの実行時間を、
当該第1プログラムにおけるロジック処理の実行に要するロジック実行時間と、前記各第1演算処理部に設けられた第1メモリを参照する第1メモリ参照時間と、前記GPUによりアクセス可能な共通メモリを参照する共通メモリ参照時間と、を加算して算出することを特徴とする、請求項2に記載のプログラム作成支援装置。 - 前記演算処理部は、
前記GPU側実行プログラムの第2プログラムの実行時間を、
当該第2プログラムにおけるロジック処理の実行に要するロジック実行時間と、前記各第2演算処理部に設けられた第2メモリを参照する第2メモリ参照時間と、前記GPUによりアクセス可能な共通メモリを参照する共通メモリ参照時間と、を加算して算出することを特徴とする、請求項2または3に記載のプログラム作成支援装置。 - 前記演算処理部は、
前記CPU側実行プログラムの実行時間を、
当該CPU側実行プログラムにおけるロジック処理の実行に要するロジック実行時間と、前記CPUによりアクセス可能なメモリを参照するメモリ参照時間と、を加算して算出することを特徴とする、請求項1〜4のいずれか1項に記載のプログラム作成支援装置。 - 前記演算処理部は、前記プログラム内における前記CPUと前記GPUとの間のプログラムの呼び出し数と、前記CPUと前記GPUとの間でのプログラムの呼び出し1回に要する基本呼び出し時間とに基づいて、前記CPUと前記GPUとの間におけるプログラム呼び出し時間を算出することを特徴とする、請求項1〜5のいずれか1項に記載のプログラム作成支援装置。
- 複数の入力領域からなり、前記解析対象のプログラムを実行されるハードウェアに応じて所定の前記入力領域に分離して入力可能な入力画面を表示する表示部と、
前記入力画面の前記各入力領域に情報を入力する入力部と、
をさらに備え、
前記プログラム取得部は、前記入力画面の各入力領域から前記解析対象のプログラムを取得することを特徴とする、請求項1〜6のいずれか1項に記載のプログラム作成支援装置。 - 前記解析対象のプログラムは、プロセス制御システムにおけるオンライン最適化制御に用いられることを特徴とする、請求項1〜7のいずれか1項に記載のプログラム作成支援装置。
- CPUおよびGPUを用いて実行されるプログラムの作成に際して、作成したプログラムの実行予測時間を求めるプログラム作成支援方法であって、
実行予測時間を求める対象であるプログラムを取得するプログラム取得ステップと、
前記プログラムの実行予測時間の算出に用いられる、CPUおよびGPUによる基本的処理に要する時間の情報を含む予め設定された設定情報を参照して、前記プログラムのうち前記CPUにて実行されるCPU側実行プログラムの実行予測時間と、前記プログラムのうち前記GPUにて実行されるGPU側実行プログラムの実行予測時間と、前記CPUと前記GPUとの間におけるプログラム呼び出し時間と、を算出する第1算出ステップと、
前記CPU側実行プログラムの実行予測時間、前記GPU側実行プログラムの実行予測時間、およびプログラム呼び出し時間を加算して前記プログラムの最大実行予測時間として第2算出ステップと、
少なくとも前記第2算出ステップの演算結果の最大実行予測時間を出力する出力ステップと、
を含むことを特徴とする、プログラム作成支援方法。 - コンピュータを、CPUおよびGPUを用いて実行されるプログラムの作成に際して、作成したプログラムの実行予測時間を求めるプログラム作成支援装置として機能させるためのコンピュータプログラムであって、
実行予測時間を求める対象となるプログラムを取得するプログラム取得部と、
前記プログラムの実行予測時間の算出に用いられる、CPUおよびGPUによる基本的処理に要する時間の情報を含む設定情報を記憶する設定情報記憶部と、
前記設定情報記憶部に記憶された設定情報を参照して、前記プログラムのうち前記CPUにて実行されるCPU側実行プログラムの実行予測時間と、前記プログラムのうち前記GPUにて実行されるGPU側実行プログラムの実行予測時間と、前記CPUと前記GPUとの間におけるプログラム呼び出し時間と、を算出し、これらの時間を加算して前記プログラムの最大実行予測時間として算出する演算処理部と、
前記演算処理部の演算結果の最大実行予測時間を出力する出力部と、
を備えるプログラム作成支援装置としてコンピュータを機能させることを特徴とする、コンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011044110A JP5429214B2 (ja) | 2011-03-01 | 2011-03-01 | プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011044110A JP5429214B2 (ja) | 2011-03-01 | 2011-03-01 | プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012181674A true JP2012181674A (ja) | 2012-09-20 |
JP5429214B2 JP5429214B2 (ja) | 2014-02-26 |
Family
ID=47012825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011044110A Active JP5429214B2 (ja) | 2011-03-01 | 2011-03-01 | プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5429214B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014194660A (ja) * | 2013-03-28 | 2014-10-09 | Fujitsu Ltd | 算出方法、算出プログラム、および算出装置 |
JP2015106233A (ja) * | 2013-11-29 | 2015-06-08 | 三菱日立パワーシステムズ株式会社 | 並列化支援装置、実行装置、制御システム、並列化支援方法及びプログラム |
KR102257028B1 (ko) * | 2020-10-06 | 2021-05-27 | 주식회사 딥이티 | 컴퓨팅 플랫폼 기반의 적응형 딥러닝 작업 할당 장치 및 방법 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10143400A (ja) * | 1996-11-07 | 1998-05-29 | Fuji Electric Co Ltd | 制御用計算機システムの性能評価方法 |
JPH1196047A (ja) * | 1997-09-19 | 1999-04-09 | Mitsubishi Electric Corp | プログラム開発支援装置及びプログラム開発支援方法 |
JP2001184204A (ja) * | 1999-12-27 | 2001-07-06 | Hitachi Ltd | モジュール実行順序決定方法、電子システム及びそのための媒体 |
-
2011
- 2011-03-01 JP JP2011044110A patent/JP5429214B2/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10143400A (ja) * | 1996-11-07 | 1998-05-29 | Fuji Electric Co Ltd | 制御用計算機システムの性能評価方法 |
JPH1196047A (ja) * | 1997-09-19 | 1999-04-09 | Mitsubishi Electric Corp | プログラム開発支援装置及びプログラム開発支援方法 |
JP2001184204A (ja) * | 1999-12-27 | 2001-07-06 | Hitachi Ltd | モジュール実行順序決定方法、電子システム及びそのための媒体 |
Non-Patent Citations (4)
Title |
---|
CSNG200700831021; 伊藤他: 'GPGPUアプリケーションの開発を支援するための性能モデル' 情報処理学会論文誌 Vol.48,No.SIG13(ACS19), 20070815, p.235-246, 社団法人情報処理学会 * |
CSNG200900515006; 横田他: 'GPGPUによる電源配線シミュレーションの高速化手法と評価' 電子情報通信学会技術研究報告 Vol.109,No.201, 20090924, p.39-44, 社団法人電子情報通信学会 * |
JPN6013054741; 伊藤他: 'GPGPUアプリケーションの開発を支援するための性能モデル' 情報処理学会論文誌 Vol.48,No.SIG13(ACS19), 20070815, p.235-246, 社団法人情報処理学会 * |
JPN6013054742; 横田他: 'GPGPUによる電源配線シミュレーションの高速化手法と評価' 電子情報通信学会技術研究報告 Vol.109,No.201, 20090924, p.39-44, 社団法人電子情報通信学会 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014194660A (ja) * | 2013-03-28 | 2014-10-09 | Fujitsu Ltd | 算出方法、算出プログラム、および算出装置 |
JP2015106233A (ja) * | 2013-11-29 | 2015-06-08 | 三菱日立パワーシステムズ株式会社 | 並列化支援装置、実行装置、制御システム、並列化支援方法及びプログラム |
KR102257028B1 (ko) * | 2020-10-06 | 2021-05-27 | 주식회사 딥이티 | 컴퓨팅 플랫폼 기반의 적응형 딥러닝 작업 할당 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP5429214B2 (ja) | 2014-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5644606B2 (ja) | メッシュ数予測方法、解析装置及びプログラム | |
JP5683000B2 (ja) | Pid制御器の構成方法、プログラム及びシステム | |
CN113486611B (zh) | 芯片设计方法、芯片设计装置及非暂时性存储介质 | |
CN112149211B (zh) | 一种基于bim模型的幕墙的建模方法及系统 | |
JP5429214B2 (ja) | プログラム作成支援装置、プログラム作成支援方法およびコンピュータプログラム | |
CN109923498A (zh) | 用于电力性能管理的应用剖析 | |
WO2013084628A1 (ja) | 製造ラインシミュレーション装置、データ入力支援装置、およびデータ入力支援方法 | |
US20090319240A1 (en) | Simulation apparatus, simulation control method, and computer product | |
CN113505562A (zh) | 时钟树综合最优策略预测方法、系统及应用 | |
JPWO2006100712A1 (ja) | 設計支援装置、設計支援方法、設計支援プログラム | |
CN107122401A (zh) | 向数据库存储数据的方法、设备、中间件设备和服务器 | |
US20240054385A1 (en) | Experiment point recommendation device, experiment point recommendation method, and semiconductor device manufacturing device | |
JP2012003618A (ja) | 情報処理システム、情報処理方法、情報処理装置 | |
JP2017167739A (ja) | 寸法公差解析システム、寸法公差解析方法、3次元モデル生成プログラム及び記録媒体 | |
CN112114998A (zh) | 一种静态随机存储器中冗余信息修复方法、装置、存储介质及终端 | |
CN106557312A (zh) | 程序开发支援装置以及程序开发支援软件 | |
US20180182047A1 (en) | Operation support apparatus, operation support system, and information processing apparatus | |
US20180247238A1 (en) | Work range visualization device and work range visualization method | |
JP2012068870A (ja) | 最適化処理プログラム、方法及び装置 | |
WO2024045090A1 (zh) | 产品模型的仿真方法和装置 | |
CN114357907B (zh) | 一种适用于拉格朗日型粒子类数值模拟的并行方法 | |
JP2019067238A (ja) | 制御装置、制御方法および制御プログラム | |
JPH08292974A (ja) | 制御系・電気回路・管路網の連成汎用解析方法及び装置 | |
JP2005352670A (ja) | シミュレーション装置及び検査装置 | |
WO2023100545A1 (ja) | 更新内容検証システム及び更新内容検証方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130212 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131028 |
|
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: 20131105 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20131118 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5429214 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |