JPH0916436A - Support method for optimization of parallel program - Google Patents
Support method for optimization of parallel programInfo
- Publication number
- JPH0916436A JPH0916436A JP7165109A JP16510995A JPH0916436A JP H0916436 A JPH0916436 A JP H0916436A JP 7165109 A JP7165109 A JP 7165109A JP 16510995 A JP16510995 A JP 16510995A JP H0916436 A JPH0916436 A JP H0916436A
- Authority
- JP
- Japan
- Prior art keywords
- timing
- program
- execution
- display
- event
- 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
Landscapes
- Devices For Executing Special Programs (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は任意のメッセージパッシ
ング型並列計算機における並列プログラムを対象とし、
この並列プログラムの最適化支援方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention is intended for a parallel program in an arbitrary message passing type parallel computer,
The present invention relates to an optimization support method for this parallel program.
【0002】[0002]
【従来の技術】メッセージパッシング型の並列計算機で
は、必要な情報はプロセッサからプロセッサへ通信路を
介して送受信され、このプロセッサ間通信を効率よく実
行することがプログラムの最適化に大きく寄与する。一
般的なプログラム記述言語c、FORTRANなどを用いる場合
はこの通信に関する指示はプログラム上でユーザが記述
する。具体的には,あるプロセッサからsend命令を用い
て情報を送信し、指定されたプロセッサではreceive命
令を用いてこれを受け取る、またあるプロセッサからbr
oadcast命令を用いてすべてのプロセッサへ情報を送信
し、全プロセッサではこれをreceive命令を用いて受け
取る、などが一般的である。このプロセッサ間通信はタ
イミングを制御してプログラミングしないと、無駄な待
ち時間ができたり、デッドロックを起こしたりする。そ
して、並列プログラムに於てはこのプロセッサ間通信の
タイミングを最適化することがプログラムの実行時間の
短縮になり、最終的にはプログラムの性能向上につなが
る。2. Description of the Related Art In a message passing type parallel computer, necessary information is transmitted and received from processor to processor via a communication path, and efficient execution of communication between processors greatly contributes to optimization of programs. When using a general program description language c, FORTRAN, etc., the user describes the instruction regarding this communication on the program. Specifically, a processor sends information using a send instruction, a specified processor receives it using a receive instruction, and a processor sends br
It is common to send information to all processors using the oadcast instruction, and receive it using the receive instruction in all processors. If this interprocessor communication is not programmed by controlling the timing, unnecessary waiting time may occur and deadlock may occur. In a parallel program, optimizing the timing of this inter-processor communication shortens the execution time of the program, and ultimately improves the performance of the program.
【0003】このプロセッサ間通信に関する最適化を支
援するための従来技術としては、1つに、XPVM(Oak Rid
ge 国立研究所)など、並列プログラムを実行し、プロ
セッサ間のデータの送受信のタイミングを、縦軸をプロ
セッサ、横軸を時間で表すガントチャートなどを用いて
グラフィカルに表示するものがある。これを用いれば送
受信の時間や、待ち時間、タイミングなどが一目でわか
るので、プログラムの修正すべき点が把握しやすく、プ
ログラムの最適化をはかる際に有用である。One of the conventional techniques for supporting the optimization of communication between processors is XPVM (Oak Rid).
ge National Laboratories, etc.) executes parallel programs and graphically displays the timing of data transmission and reception between processors using a Gantt chart in which the vertical axis is the processor and the horizontal axis is the time. If this is used, the transmission / reception time, waiting time, timing, etc. can be seen at a glance, so it is easy to grasp the points to be corrected in the program, which is useful when optimizing the program.
【0004】さらに進んだシステムの思想もあり、論
文、”並列プログラムのための視覚的性能デバッガ(情
報処理学会論文誌・システムソフトウェアとオペレーチ
ィングシステム67-9、pp65-71)”では,以下の方法を
示している。すなわち、1度プログラムを実行させた情
報をファイルに吐き出し、その情報をもとにプログラム
中の各サブルーチンなどの処理をそれぞれ異なるプロセ
ッサで実行した場合を計算し、提示するものである。こ
れは、XPVM同様ユーザプログラムのプロセッサ間の通信
のタイミングを、ガントチャートでグラフィカルに表示
し、この表示をみながらユーザがプログラム実行中の各
タイミングにおいて負荷の少ないプロセッサに負荷の多
いプロセッサの一部の処理を移すなどを画面上で指示す
ると、システムは最初の実行により得た情報を利用して
異なるプロセッサで処理を実行させたケースについてシ
ミュレートし、結果を上記と同様ガントチャートで表示
する。これを用いれば、プログラムの各部分処理をどの
プロセッサに振り分ければ、全体の処理時間がどう変化
するか定量的に把握でき、プログラムの最適化をはかる
際に有用である。There is also an advanced system concept. In the paper, "Visual Performance Debugger for Parallel Programs (Information Processing Society of Japan, System Software and Operating System 67-9, pp65-71)" The method is shown. That is, the information in which the program has been executed once is discharged to a file, and based on the information, the case where each processing such as each subroutine in the program is executed by different processors is calculated and presented. Similar to XPVM, this is a Gantt chart that graphically displays the timing of communication between user program processors, and while observing this display, the processor that is less loaded at the timing when the user is executing the program When you instruct to move the process on the screen, the system uses the information obtained by the first execution to simulate a case where the process is executed by a different processor, and the result is displayed in the Gantt chart as above. By using this, it is possible to quantitatively grasp how each processing of the program is distributed to which processor and how the entire processing time changes, which is useful when optimizing the program.
【0005】[0005]
【発明が解決しようとする課題】上記のうち、第1の従
来技術を用いると、作成プログラムにおける各実行文の
タイミングやデータ通信の把握は可能である。また、第
2の従来技術を用いると、プロセッサへの処理の振り分
けにおける最適化に関して有用である。If the first prior art is used among the above, it is possible to grasp the timing of each execution statement in the creation program and the data communication. Further, the use of the second conventional technique is useful for optimization in distribution of processing to processors.
【0006】しかしいずれも、並列プログラムの最適化
に対しては、以下の課題が残る。However, in either case, the following problems remain in optimizing the parallel program.
【0007】(1)プログラムにおける各プロセッサで
の各部分処理の前後関係を変更した場合、変更部より後
に実行されるプログラムの実行のタイミングがどう変化
するか不明である。並列プログラムにおいてはプロセッ
サ間通信があるため、処理のタイミングが重要であり、
それによってその後のプログラムの実行がどのようにな
るか把握することがプログラムの全体実行時間の短縮と
いう点で、プログラムの最適化に大きく寄与する。(1) When the context of each partial process in each processor in the program is changed, it is unclear how the timing of execution of the program executed after the changing unit changes. Since there is inter-processor communication in parallel programs, processing timing is important,
As a result, understanding how the program will be executed thereafter greatly contributes to optimization of the program in terms of shortening the overall execution time of the program.
【0008】(2)ガントチャートをプログラムの内容
に関わらず、例えば、プロセッサの結合順に出力する
と、プログラム動作が把握しにくい場合がある。プロセ
ッサ数が10台程度でも、通信があると各プロセッサ対
応の線から通信を示す線が相手のプロセッサにむかうた
めプロセッサの表示順序次第ではかなり複雑なグラフに
なってしまう。(2) If the Gantt chart is output regardless of the content of the program, for example, in the order in which the processors are connected, it may be difficult to grasp the program operation. Even if the number of processors is about 10, if there is communication, the line indicating communication goes from the line corresponding to each processor to the other processor, resulting in a fairly complicated graph depending on the display order of the processors.
【0009】本発明の目的はこれらの課題を解決し、効
率よく並列プログラムの最適化を実施するための支援方
法を提供することにある。An object of the present invention is to solve these problems and provide a support method for efficiently carrying out optimization of a parallel program.
【0010】[0010]
【0011】[0011]
【課題を解決するための手段】上記各課題を解決するた
めの手段は以下の通りである。Means for solving the above-mentioned problems are as follows.
【0012】(1)に対して:プログラムの途中で複数
の実行文の前後関係を変更した場合、変更部より後に実
行されるプログラムの実行のタイミングがどう変化する
か明確にするには、そのような変更をユーザが簡単に指
示できること、さらに、変換を施したプログラムを自動
生成し、実行することより達成される。Regarding (1): When the context of a plurality of executable statements is changed in the middle of the program, it is necessary to clarify how the execution timing of the program executed after the changing section changes. This can be achieved by the user being able to easily instruct such a change and by automatically generating and executing the converted program.
【0013】さらに、変換プログラムの結果を自動的に
評価、最適な実行文のタイミングをユーザに表示するこ
とにより、達成される。Further, it is achieved by automatically evaluating the result of the conversion program and displaying the timing of the optimum executable statement to the user.
【0014】(2)に対して:各プロセッサのガントチ
ャートの出力順をユーザが随時変更可能とすることより
達成される。Regarding (2): This is achieved by allowing the user to change the output order of the Gantt chart of each processor at any time.
【0015】[0015]
【作用】上記の手段には以下の作用がある。The above means has the following effects.
【0016】(1)に対して:プログラムの途中で複数
の実行文の前後関係を変更した場合、変更部より後に実
行されるプログラムの実行のタイミングがどう変化する
かが、ユーザがプログラムを変更しないで明確になるこ
とにより、プログラムの最適化効率が向上する。Regarding (1): When the context of a plurality of executable statements is changed in the middle of the program, the user changes the program depending on how the execution timing of the program executed after the changing section changes. By not being clear, the optimization efficiency of the program is improved.
【0017】さらに、実行文のタイミングの変更がプロ
グラム上どうであるか自動的に評価するので、プログラ
ムの最適化効率が向上する。Further, since it is automatically evaluated whether or not the timing of the execution statement is changed in the program, the optimization efficiency of the program is improved.
【0018】(2)に対して:ユーザがプロセッサの出
力順(表示順序)を逐次変更できるので、プログラムの
内容に適したプロセッサ順にガントチャートを配置して
稼働状況を表示できる。よって、プログラムの動作が把
握しやすい。Regarding (2): Since the user can sequentially change the output order (display order) of the processors, the Gantt chart can be arranged in the processor order suitable for the contents of the program to display the operating status. Therefore, it is easy to understand the operation of the program.
【0019】[0019]
【実施例】以下、図面にもとずいて本発明の実施例を説
明する。Embodiments of the present invention will be described below with reference to the drawings.
【0020】図11は本発明の前提にするハードウエア
構成である。ユーザが最適化の対象である並列プログラ
ム101はワークステーション上の並列プログラム最適
化支援処理部100に入力され、さらに、並列計算機1
101に送られ処理される。並列計算機1101には複
数のcpuがありそれぞれメモリをもっていて、通信路
でデータがやりとりされる。以下、この並列プログラム
最適化支援処理部100について詳細に説明する。FIG. 11 shows a hardware configuration on which the present invention is based. The parallel program 101, which is the target of optimization by the user, is input to the parallel program optimization support processing unit 100 on the workstation, and the parallel computer 1
It is sent to 101 and processed. The parallel computer 1101 has a plurality of cpu, each has a memory, and data is exchanged through a communication path. Hereinafter, the parallel program optimization support processing unit 100 will be described in detail.
【0021】図1は本発明の実施例を示す並列プログラ
ム最適化支援方法の処理手順である。図に従い処理の流
れを示す。ユーザが最適化の対象である並列プログラム
101を並列プログラム最適化支援処理部100に入力
すると、本処理部100は最初に表示イベント受付処理
102により、ユーザによる実行文のタイミング表示に
関するユーザ情報1011を受付け、イベント表示テー
ブル103を生成する。次に第1プログラム自動変換処
理104により、イベント表示テーブル103の情報を
もとに、並列プログラム101を指定実行文のタイミン
グを表示する第1変換プログラム105に変換する。次
に、コンパイル・リンク・実行処理107により第1変
換プログラム105にシステムの提供するイベント表示
関数107を組み込んで実行し、第1イベント表示結果
テーブル1081を生成する。そして、イベントタイミ
ング表示処理109により指定実行文のタイミングを各
プロセッサ毎にグラフィカル表示110する。FIG. 1 is a processing procedure of a parallel program optimization support method showing an embodiment of the present invention. The flow of processing is shown according to the figure. When the user inputs the parallel program 101 to be optimized into the parallel program optimization support processing unit 100, the processing unit 100 first performs the display event reception processing 102 to display the user information 1011 regarding the timing display of the execution statement by the user. The event is received and the event display table 103 is generated. Next, the first program automatic conversion processing 104 converts the parallel program 101 into the first conversion program 105 that displays the timing of the designated execution statement based on the information in the event display table 103. Next, the compile / link / execute process 107 incorporates the event display function 107 provided by the system into the first conversion program 105 and executes it to generate a first event display result table 1081. Then, the event timing display processing 109 graphically displays 110 the timing of the designated execution statement for each processor.
【0022】この指定実行文のタイミング表示を見たユ
ーザは、プログラム中のどの実行文のタイミングをずら
せば最適なプログラムになるか考える。The user who sees the timing display of the designated execution statement considers which execution statement in the program should be shifted to obtain the optimum program.
【0023】次に新規イベントタイミング受付処理11
0で、ユーザによる新規にどの実行文のタイミングを合
わせる、またはずらすなどの新規タイミング情報111
を受付け、イベントタイミングテーブル113を生成す
る。次に第2プログラム自動変換処理114によりイベ
ントタイミングテーブル113の情報をもとに、第1変
換プログラム105を新規の指定のタイミングでプログ
ラムを実行するように、第2変換プログラム115に変
換する。次に、コンパイル・リンク・実行処理107に
より第2変換プログラム115にシステムの提供するイ
ベント表示関数107を組み込んで実行し、先と同様、
第2イベント表示結果テーブル1082を生成する。そ
して、イベントタイミング表示処理109により指定実
行文のタイミングを各プロセッサ毎にグラフィカル表示
110する。Next, a new event timing acceptance process 11
With 0, new timing information 111 such as which user newly adjusts or shifts the timing of which execution statement
Is received and the event timing table 113 is generated. Next, the second program automatic conversion processing 114 converts the first conversion program 105 into the second conversion program 115 based on the information of the event timing table 113 so that the program is executed at a newly designated timing. Next, the event display function 107 provided by the system is incorporated into the second conversion program 115 by the compile / link / execute process 107 and executed.
The second event display result table 1082 is generated. Then, the event timing display processing 109 graphically displays 110 the timing of the designated execution statement for each processor.
【0024】次に、並列プログラム101の実行で出力
した第1イベント表示結果テーブル1081と第2変換
プログラム115の実行で出力した第2イベント表示結
果テーブル1082の2つを入力とするタイミング評価
処理116によって、タイミングの変更がプログラムに
与える影響を求め、このタイミング評価結果117を表
示する(ブロック118)。さらにこのタイミング評価
結果117を入力とする最適タイミング決定処理119
によって最適な実行文の最適なタイミングを求め、最適
なタイミングを表示する(ブロック120)。以上が並
列プログラム最適化処理手順の概略である。Next, the timing evaluation processing 116 which receives two of the first event display result table 1081 output by the execution of the parallel program 101 and the second event display result table 1082 output by the execution of the second conversion program 115. Then, the effect of the timing change on the program is obtained, and the timing evaluation result 117 is displayed (block 118). Further, the optimum timing determination processing 119 which receives the timing evaluation result 117 as an input
The optimum timing of the optimum executable statement is determined by and the optimum timing is displayed (block 120). The above is the outline of the parallel program optimization processing procedure.
【0025】以下、実施例を用いて本発明を詳細に説明
する。The present invention will be described in detail below with reference to examples.
【0026】入力情報は最適化の対象である並列プログ
ラム101で、ユーザが複数のプロセッサを対象にFORT
RANやCなどのプログラミング言語で記述したものであ
る。ユーザはこの並列プログラム101を並列プログラ
ム最適化処理部100に入力する。並列プログラム最適
化処理部100はこれを受けて、表示イベント受付処理
102を起動させ、図2に示すイベント受付画面201
を表示する。The input information is the parallel program 101 to be optimized, and the user FORTs multiple processors.
It is written in a programming language such as RAN or C. The user inputs this parallel program 101 to the parallel program optimization processing unit 100. In response to this, the parallel program optimization processing unit 100 activates the display event reception processing 102, and the event reception screen 201 shown in FIG.
Is displayed.
【0027】表示イベント受付処理102の詳細を説明
する。表示イベント受付処理102の出力するイベント
受付画面201は並列プログラム101を表示し、実行
文のタイミング表示に関するユーザ情報1011を受付
ける。タイミング表示の指定方法は2種類ある。1つは
表示プログラム中の各行に直接マークする方法である。
ユーザは並列プログラム101中のタイミング表示した
い実行文のコマンド列202に、プログラムソース対応
コマンドの説明204に従いコマンドを入力する。実行
文の開始のタイミングを表示したい場合はSを、終了の
タイミングを表示したい場合はEを、両方表示したい場
合はAを入力する。さらにその実行文に名前をつけて名
称列203に入力する。本例では、行番号50のBROADC
AST文に実行開始時のタイミング表示を指示し、名称と
してBRD1を与えている(205)。The details of the display event reception process 102 will be described. The event reception screen 201 output by the display event reception processing 102 displays the parallel program 101 and receives the user information 1011 regarding the timing display of the execution statement. There are two types of timing display designation methods. One is to directly mark each line in the display program.
The user inputs a command to the command string 202 of the execution statement to be displayed in the timing in the parallel program 101 according to the description 204 of the command corresponding to the program source. Enter S to display the start timing of the executable statement, E to display the end timing, and A to display both. Further, the executable sentence is given a name and input in the name column 203. In this example, row number 50 BROADC
The AST statement is instructed to display the timing at the start of execution, and BRD1 is given as the name (205).
【0028】もう1つのタイミング表示指定方法は、実
行文の種類によって指定する方法である。例えば、全て
のREAD文を表示する、特定のサブルーチン内のSEND文を
表示する、などの場合に用いる。ユーザは文種対応コマ
ンド206のうち、まず表示タイミングの選択207か
ら実行文の開始時、終了時、両方のいずれのタイミング
で表示するか選択する。次に、表示する実行文とその選
択範囲、および実行文に対する名称をコマンドライン2
08〜210に記入する。記入が終了したら次ボタン2
11を押下し、必要な実行文を全て登録する。本例で
は、サブルーチンSUB1 内の全てのRECEIVE文をRECV1と
いう名称で登録し、実行開始のタイミングで表示するよ
う指定している。Another timing display designating method is a method of designating according to the type of executable statement. For example, it is used to display all READ statements, SEND statements in a specific subroutine, and so on. The user first selects, from the display timing selection 207 of the sentence type correspondence command 206, whether to display the execution sentence at the start time, the end time, or both. Next, specify the executable statement to be displayed, its selection range, and the name of the executable statement on the command line 2.
Fill out 08-210. After completing the entry, click the next button 2
Press 11 to register all necessary executable statements. In this example, all RECEIVE statements in the subroutine SUB1 are registered under the name RECV1 and are specified to be displayed at the execution start timing.
【0029】以上2種類の方法を用いて指示をおこな
い、終了したら終了ボタン212を押下する。表示イベ
ント受付処理102は終了ボタン212の押下によって
実行文のタイミング表示の受付を終了し、イベント表示
テーブル103を生成する。The above two methods are used to give an instruction, and the end button 212 is pressed when the instruction is completed. The display event reception process 102 ends reception of the timing display of the execution statement by pressing the end button 212, and generates the event display table 103.
【0030】イベント表示テーブル103の例を図3
(A)、(B)に示す。イベント表示テーブル103は
2つのテーブルよりなり、1つは名称対IDテーブル10
3Aでユーザ指定の名称311とそれに対応する、シス
テムが自動的につけたシステムID312が1対1対応に
列挙されている。もう1つは基本イベント表示テーブル
103Bで、タイミング表示を行なう全ての実行文が行
番号順に列挙されている。それぞれ情報として、行番号
313、システムID312、実行文314、表示の種類
315をもつ。イベント表示テーブル103を生成し
て、表示イベント受付処理102は終了する。An example of the event display table 103 is shown in FIG.
Shown in (A) and (B). The event display table 103 consists of two tables, one of which is the name-to-ID table 10
The user-specified name 311 and the corresponding system ID 312 automatically assigned by the system in 3A are listed in one-to-one correspondence. The other is the basic event display table 103B, in which all the execution statements for which timing is displayed are listed in the order of line numbers. Each has a line number 313, a system ID 312, an execution statement 314, and a display type 315 as information. The event display table 103 is generated, and the display event reception process 102 ends.
【0031】次に、並列プログラム101とイベント表
示テーブル103を入力とする第1プログラム自動変換
処理104を実行する。図4に第1プログラム自動変換
処理104の処理例を示す。第1プログラム自動変換処
理104では、イベント表示テーブル103を見なが
ら、並列プログラム101に対し、タイミング表示すべ
き実行文の前後にイベント表示関数を挿入する。タイミ
ング表示指定が実行文の開始時なら実行文の前に、終了
時なら実行文のあとに、両方に表示する場合はその前後
両方に関数を自動的に挿入する。さらに、並列プログラ
ム101の先頭に初期設定部を挿入する。Next, the first program automatic conversion processing 104, which receives the parallel program 101 and the event display table 103, is executed. FIG. 4 shows a processing example of the first program automatic conversion processing 104. In the first program automatic conversion processing 104, while looking at the event display table 103, the event display function is inserted into the parallel program 101 before and after the execution statement to be timing-displayed. If the timing display is specified at the beginning of the executable statement, it will be inserted before the executable statement, at the end it will be displayed after the executable statement. Further, the initial setting section is inserted at the head of the parallel program 101.
【0032】図の例では、第1プログラム自動変換処理
104により、イベント表示テーブル103の情報をも
とに、並列プログラム101を指定実行文のタイミング
を表示する第1変換プログラム105に変換している。
第1変換プログラム105の先頭に初期設定部であるサ
ブルーチンINITEVENTのコール文401を自動的に挿入
し、並列プログラム10行目のCALL RECEIVE(...)はイ
ベント表示テーブル103に登録されているので、第1
変換プログラム105ではCALL RECEIVE(...)の次行に
CALL EVENT(2,3)を挿入する(402)。CALL EVENT(2,
3)の第1引数の2は表示の種類が実行文終了後であるこ
とを示し、第2引数の3はユーザのつけた名称RECV1の
システムIDである。以下、同様に50行目のCALL BROAD
CAST()の前および53行目のCALL RECEIVE()の後にCAL
L EVENT(...)を挿入する(403,404)。In the illustrated example, the first program automatic conversion processing 104 converts the parallel program 101 into the first conversion program 105 for displaying the timing of the designated execution statement, based on the information in the event display table 103. .
Since the call statement 401 of the subroutine INITEVENT which is the initialization section is automatically inserted at the beginning of the first conversion program 105, and CALL RECEIVE (...) on the 10th line of the parallel program is registered in the event display table 103. , First
In the conversion program 105, the line next to CALL RECEIVE (...)
CALL EVENT (2,3) is inserted (402). CALL EVENT (2,
The second argument 3 of 3) indicates that the type of display is after the end of the executable statement, and the second argument 3 is the system ID of the name RECV1 given by the user. Similarly, CALL BROAD on line 50
CAL before CAST () and after CALL RECEIVE () on line 53
Insert L EVENT (...) (403, 404).
【0033】このCALL EVENT()はイベント表示関数10
6であり、本並列プログラム最適化支援処理の提供する
関数で、実行文のタイミングを記録するためのものであ
る。ソースコードを図5に示す。図4に示したとおり、
本関数の引数は指定実行文のタイミングを示すFLGとシ
ステムIDを示す変数IDである(501)。処理内容とし
ては、CLOCK関数で時間を求め(502)、そのシステ
ムIDの何番目に実行された文かを求め(503)、それ
らを第1イベント表示結果テーブル1081のファイル
にはきだす(504)。This CALL EVENT () is an event display function 10
6 is a function provided by this parallel program optimization support process, and is for recording the timing of an executable statement. The source code is shown in FIG. As shown in Figure 4,
The arguments of this function are the FLG indicating the timing of the designated execution statement and the variable ID indicating the system ID (501). As the processing contents, the time is obtained by the CLOCK function (502), the number of the executed sentence of the system ID is obtained (503), and these are output to the file of the first event display result table 1081 (504).
【0034】第1プログラム自動変換処理104が終了
すると、次に、出力した第1変換プログラム105とイ
ベント表示関数106を入力して、コンパイル・リンク
・実行処理107を実施し、第1イベント表示結果テー
ブル1081を生成する。そして、イベントタイミング
表示処理109によって第1イベント表示結果テーブル
1081の内容をグラフィカルに表示する(110)。
イベントタイミング表示処理109によるイベント表示
画面1100を図6に示す。When the first program automatic conversion processing 104 is completed, the output first conversion program 105 and the event display function 106 are input, the compile / link / execute processing 107 is executed, and the first event display result is obtained. A table 1081 is generated. Then, the contents of the first event display result table 1081 are graphically displayed by the event timing display processing 109 (110).
An event display screen 1100 by the event timing display processing 109 is shown in FIG.
【0035】第1イベント表示結果テーブル1081に
はイベント表示を指示された全ての実行文の結果が各プ
ロセス毎に時系列に登録してある。登録項目はシステム
ID、同一システムIDでの実行順序、および実行開始また
は終了時間である。イベントタイミング表示処理109
はこのイベント表示結果テーブル1081の内容をグラ
フィカルに表示する。具体的には、各プロセッサ毎に時
間軸の線を表示し(601)、各実行文がどの時点で実
行したか表示する。さらに表示のタイミング、すなわち
実行文の開始、終了いずれでの表示かを色で示す。ま
た、両方を表示する場合は開始から終了までを幅を太く
して示す。また、時間軸上にあるそれぞれの実行文をマ
ウスで指示すれば、詳細な時刻を表示する。例えば、図
の場合はプロセッサ1においてBRD1という名称の実行文
が実施され(602)、ここからのデータはプロセッサ
2および3の名称RECV2の実行文で受け取られ(60
3)、またこのRECV2は太線で示す時間のだけ実行され
る(604)、等のことを一目で読みとることができ
る。また、ユーザは自由に各プロセッサ毎に時間軸の線
の順序を入れ替えて、見やすくできる。In the first event display result table 1081, the results of all the execution statements instructed to display the event are registered in time series for each process. Registration item is system
ID, execution order with the same system ID, and execution start or end time. Event timing display processing 109
Displays the contents of the event display result table 1081 graphically. Specifically, a line on the time axis is displayed for each processor (601), and the time at which each execution statement is executed is displayed. Further, the color of the display timing, that is, whether the execution statement starts or ends is displayed. When both are displayed, the width from the start to the end is shown thickly. In addition, by pointing each execution statement on the time axis with the mouse, detailed time is displayed. For example, in the case of the figure, an executable statement named BRD1 is executed in the processor 1 (602), and data from this is received by the executable statement of the name RECV2 of the processors 2 and 3 (60
3), and this RECV2 is executed only during the time indicated by the thick line (604), and so on, can be read at a glance. Also, the user can freely change the order of the time axis lines for each processor to make it easier to see.
【0036】次に、ユーザは図6に示した実行文のタイ
ミングを見て、これらに対して異なるタイミングを指定
する。これは図1の新規イベントタイミング受付処理1
12によって受付けられる。図7に新規イベントタイミ
ング受付処理112の出力する新規イベントタイミング
受付画面700の例を示す。初期画面は図6のイベント
タイミング表示処理109の出力画面である。これに対
し、ユーザは、実行文のタイミング表示に関するユーザ
情報1011を与える。具体的には、異なるプロセッサ
で実行する複数の実行文のタイミングを同時にするこ
と、および実行文のタイミングの前後関係を変更するこ
とができる。例えば、図の場合はプロセッサ2の名称SU
B1とプロセッサ3の名称SUB2のタイミングをあわせるこ
と(701)、さらにプロセッサ2の名称SEND1をプロ
セッサ3の名称SEND1の後に実行すること(702)を
指示している。これらは、画面下のタイミングボタン7
03を用いて指示する。指示もこのように画面上で対話
型で行うことができる。指示が終了したらユーザは終了
ボタンを押下する。新規イベントタイミング受付処理1
10は終了ボタンの押下によって新規イベントタイミン
グの受付を終了し、上記で前後関係を登録された全実行
文のデータをイベントタイミングテーブル111に登録
する。Next, the user looks at the timings of the executable statements shown in FIG. 6 and specifies different timings for them. This is the new event timing acceptance process 1 of FIG.
Accepted by 12. FIG. 7 shows an example of the new event timing reception screen 700 output by the new event timing reception process 112. The initial screen is an output screen of the event timing display processing 109 of FIG. On the other hand, the user gives the user information 1011 regarding the timing display of the execution statement. Specifically, the timings of a plurality of execution statements executed by different processors can be set at the same time, and the context of the execution statement timings can be changed. For example, in the case of the figure, the name SU of the processor 2
It is instructed to match the timing of B1 and the name SUB2 of the processor 3 (701), and to execute the name SEND1 of the processor 2 after the name SEND1 of the processor 3 (702). These are the timing buttons 7 at the bottom of the screen.
Use 03 to indicate. Instructions can also be made interactively on the screen in this way. When the instruction is completed, the user presses the end button. New event timing acceptance process 1
10 terminates the reception of the new event timing by pressing the end button, and registers the data of all the execution statements whose context is registered in the event timing table 111.
【0037】イベントタイミングテーブル111の例を
図8に示す。テーブルの項目としては、プロセッサ番号
をしめすPE番号801、システムID802、そのシステ
ムIDの何番目の実行かを示す実行順序804、そして、
これらの情報から一意に決定した実行番号(以上が対象
とする実行文である)、さらに、この実行文と関係する
関係実行文のプロセッサ番号805と実行番号806お
よび前後関係807がある。図8の例は図7の新規イベ
ント受付画面700で指示された、2つの前後関係が登
録されている。1つはプロセッサ2のSUB1とプロセッサ
3のSUB2を同時に実行する情報である。1行目はSUB1に
ついてのPE番号から実行番号までと、SUB1に関係するSU
B2のPE番号と実行文番号、そして同時に実行するという
関係が記述されている(808)。3行目には逆にSUB2
に対してのSUB1の関係が記述されている(810)。2
行目にはプロセッサ2のSEND1に対するプロセッサ3のS
END1の関係が記述され(809)、逆に4行目にはプロ
セッサ3のSEND1に対するプロセッサ4のSEND1の関係が
記述されている(811)。新規イベントタイミング受
付処理110は、このイベントタイミングテーブル11
1を生成して,終了する。An example of the event timing table 111 is shown in FIG. The table items include a PE number 801, which indicates the processor number, a system ID 802, an execution order 804 indicating the number of execution of the system ID, and
The execution number uniquely determined from these pieces of information (the above is the target execution statement), and further, the processor number 805, the execution number 806, and the contextual relationship 807 of the related execution statement related to this execution statement. In the example of FIG. 8, two contexts designated by the new event reception screen 700 of FIG. 7 are registered. One is information for simultaneously executing SUB1 of processor 2 and SUB2 of processor 3. The first line is from PE number to execution number for SUB1 and SU related to SUB1.
The PE number of B2, the execution statement number, and the relationship of simultaneous execution are described (808). SUB2 in reverse on the third line
The relationship of SUB1 with respect to is described (810). 2
In the line, S of processor 3 for SEND1 of processor 2
The relationship of END1 is described (809), and conversely, the relationship of SEND1 of processor 4 to SEND1 of processor 3 is described on the fourth line (811). The new event timing reception process 110 uses this event timing table 11
Generate 1 and exit.
【0038】次に、第1変換プログラム101と第1イ
ベント表示結果テーブル1081および新規イベントタ
イミングテーブル111を入力とする第2プログラム自
動変換処理114を実行する。図9に第2プログラム自
動変換処理114の例を示す。第2プログラム自動変換
処理114では、第1変換プログラム101に対し、第
1イベント表示結果テーブル1081および新規イベン
トタイミングテーブル111を見ながら、タイミングを
制御すべき実行文に対して、その前後にイベント待ち関
数等を挿入する。複数の実行文を同時に発行する場合は
それらの実行文に対しバリア同期関数を発し、実行文の
直前でRECEIVE関数で受け取る。また、前後関係のある
実行文間にはSEND、RECEIVE関数を置きタイミングを制
御する。例えば、図7の新規イベントタイミング受付画
面700で指示のあった名称SUB1とSUB2の同期をとるた
め、SUB1とSUB2は同一のバリア関数からの信号を受け取
った直後に実行するよう変更する。具体的には、図9の
第2変換プログラム115に示すとおり、CALL SUB1()
の前にRECEIVE関数を第2変換プログラム処理114に
より自動的に挿入している(901)。また図7で指示
のあった名称SEND1の順序関係を実行するため、プロセ
ッサ2のSEND1が終わったらプロセッサ2にSEND関数を
送り、プロセッサ2でこれを受け取った後にSEND1を実
行するようよう変更する。第2変換プログラム115で
もプロセッサ1のSEND1はプロセッサ2からのデータを
自動的に挿入したRECEIVE関数で受け取ったあとに実行
する(902)。Next, the second program automatic conversion processing 114, which receives the first conversion program 101, the first event display result table 1081 and the new event timing table 111, is executed. FIG. 9 shows an example of the second program automatic conversion processing 114. In the second program automatic conversion processing 114, while looking at the first event display result table 1081 and the new event timing table 111 with respect to the first conversion program 101, an execution statement whose timing is to be controlled waits for an event before and after the execution statement. Insert a function etc. When issuing multiple executable statements at the same time, issue a barrier synchronization function for those executable statements and receive them with the RECEIVE function immediately before the executable statement. In addition, the SEND and RECEIVE functions are placed between the execution statements that have context, to control the timing. For example, in order to synchronize the names SUB1 and SUB2 instructed on the new event timing reception screen 700 of FIG. 7, SUB1 and SUB2 are changed to be executed immediately after receiving a signal from the same barrier function. Specifically, as shown in the second conversion program 115 in FIG. 9, CALL SUB1 ()
Before that, the RECEIVE function is automatically inserted by the second conversion program processing 114 (901). Further, in order to execute the order relation of the name SEND1 designated in FIG. 7, when the SEND1 of the processor 2 is finished, the SEND function is sent to the processor 2, and after the processor 2 receives this, SEND1 is executed. Also in the second conversion program 115, SEND1 of the processor 1 executes after receiving the data from the processor 2 by the automatically inserted RECEIVE function (902).
【0039】第2プログラム自動変換処理114が終了
すると、出力した第2変換プログラム115とイベント
表示関数106を入力として、コンパイル・リンク・実
行処理107を実施し、第2イベント表示結果テーブル
1082を生成する。そして,イベントタイミング表示
処理109によってイベント表示結果テーブル1082
の内容をグラフィカルに表示する(110)。この第2
イベント表示結果テーブル1082は第1イベント表示
結果テーブル1082のフォーマットと同様で、イベン
ト表示を指示された全ての実行文の結果が各プロセス毎
に時系列に登録してある。登録項目はシステムID、同一
システムIDでの実行順序、および実行開始または終了時
間である。When the second program automatic conversion process 114 is completed, the second conversion program 115 and the event display function 106 that have been output are used as inputs to execute the compile / link / execute process 107 to generate the second event display result table 1082. To do. Then, the event display result table 1082 is displayed by the event timing display processing 109.
The content of is displayed graphically (110). This second
The event display result table 1082 has the same format as the first event display result table 1082, and the results of all the execution statements instructed to display the event are registered in time series for each process. The registered items are the system ID, the execution order with the same system ID, and the execution start or end time.
【0040】新規イベントタイミング情報111の実行
結果である、イベント表示画面110を図10に示す。
指定されたとおり、SUB1とSUB2が同時に実行され(10
02)、またプロセッサ2のSEND1の後にプロセッサ1
のSEND1が実行されている(1003)。それぞれ、タ
イミングを合わせるのに待ちが小さな箱で示されている
(1001,1004)。また、タイミングあわせが不
可能な場合は、ばつ印でそれを示す(1005)。FIG. 10 shows the event display screen 110 which is the execution result of the new event timing information 111.
SUB1 and SUB2 are executed simultaneously as specified (10
02), and processor 1 after SEND1 of processor 2
Is being executed (1003). The waits are shown as small boxes, respectively, for timing (1001, 1004). If the timing cannot be adjusted, it is indicated by a cross mark (1005).
【0041】最後に、得られた結果を評価し、最適なタ
イミングを表示する、タイミング評価処理116および
最適タイミング決定処理119の処理内容例を図12に
示す。まず、もとの並列プログラム101の実行結果で
出力した第1イベント表示結果テーブル1081と指定
されたタイミングで実行する第2変換プログラム115
の実行結果で出力した第2イベント表示結果テーブル1
082を入力とするタイミング評価処理116によって
タイミングの変更がプログラムに与える影響を求め、こ
のタイミング評価結果117を表示する(118)。図
に示すように、その内容は、ユーザの指示した新規イベ
ントタイミング1201および処理結果より求めた上記
イベントタイミングの評価1202を示す。具体的な評
価内容は以下である。(A)(B)は各指定イベントタイミン
グを実施するに必要な待ち時間を示している。(C)は指
定イベントタイミングによって変化した各PEでのイベン
トタイミングを示している。(D)(E)(F)は指定イベント
タイミングによって変化した各PEの処理時間を示してい
る。(G)は指定イベントタイミングによって変化したプ
ログラム全体の処理時間を示している。本処理を終了す
ると、最後にこのタイミング評価結果117を入力とす
る最適タイミング決定処理119によって最適な実行文
の最適なタイミングを求め、最適なタイミングを表示す
る(120)。具体的には,上記で求めたイベントタイ
ミング変更による待ち時間と処理時間の差異を計算し、
新規タイミングにプログラムを変更した方が全体処理時
間が短くなるか、それにはイベントタイミング変更によ
る待ち時間をどのくらい縮める必要があるかを示す。Finally, FIG. 12 shows an example of the processing contents of the timing evaluation processing 116 and the optimum timing determination processing 119 for evaluating the obtained result and displaying the optimum timing. First, the first event display result table 1081 output by the execution result of the original parallel program 101 and the second conversion program 115 executed at the designated timing.
Second event display result table 1 output as the execution result of
The influence of the timing change on the program is obtained by the timing evaluation processing 116 with 082 as an input, and the timing evaluation result 117 is displayed (118). As shown in the figure, the content shows a new event timing 1201 instructed by the user and an evaluation 1202 of the event timing obtained from the processing result. The specific evaluation contents are as follows. (A) and (B) show waiting times required to execute each designated event timing. (C) shows the event timing in each PE changed by the designated event timing. (D), (E), and (F) show the processing time of each PE changed by the designated event timing. (G) shows the processing time of the entire program that changes depending on the designated event timing. When this processing is finished, finally, the optimum timing of the optimum executable statement is obtained by the optimum timing determination processing 119 with the timing evaluation result 117 as an input, and the optimum timing is displayed (120). Specifically, the difference between the waiting time and the processing time due to the event timing change calculated above is calculated,
We will show whether the processing time will be shorter if the program is changed to a new timing, and how much the waiting time by changing the event timing needs to be shortened.
【0042】本実施例によれば、以下の効果がある。According to this embodiment, the following effects can be obtained.
【0043】まず、図2に示したグラフィカルな画面表
示と対話形式による簡単な入力で目的の実行文のタイミ
ングを表示を指示することができ、その結果を図6に示
すように表示できた。次にそれら実行文のタイミングを
図7に示す簡単な指示でずらし、その結果を図10に示
すように表示できた。さらに、もとのプログラムとタイ
ミングをずらした場合ととを図12に示すように実行時
間がどのように変化するか評価し、最適なタイミングを
表示するので今後の最適化の方針を簡単にたてられる。
本例では、SUB2およびSEND1の待ち時間をs-sec以内にで
きるなら新規タイミングの方がプログラム実行時間が短
縮できるとある。本例はs-sec短縮することは重要なの
で今後の最適化方針として新規タイミングでプログラム
を実行できるようデバッグすることにした。このよう
に、最適化の方針を示すので並列プログラムの最適化の
工数を削減できた。First, it was possible to instruct the display of the timing of the target executable statement by the graphical screen display shown in FIG. 2 and simple input in an interactive manner, and the result could be displayed as shown in FIG. Next, the timings of the execution statements were shifted by the simple instruction shown in FIG. 7, and the result could be displayed as shown in FIG. Further, as shown in FIG. 12, the original program and the case where the timing is shifted are evaluated as to how the execution time changes, and the optimum timing is displayed, so that the future optimization policy can be simplified. Be taken.
In this example, if the waiting time for SUB2 and SEND1 can be kept within s-sec, the new timing can shorten the program execution time. Since it is important to shorten the s-sec in this example, we decided to debug so that the program can be executed at a new timing as a future optimization policy. In this way, since the optimization policy is shown, the man-hours for optimizing the parallel program can be reduced.
【0044】[0044]
【発明の効果】本発明によれば、グラフィカルな画面表
示と対話形式による簡単な入力で、並列プログラムにお
ける各プロセッサ間での実行文の同期をとることができ
る。よって、プログラムのチューニングが必要な部分を
簡単にあらいだせるため、並列プログラムの最適化の工
数を削減できる。さらに、それら実行文の同期をとった
場合のプログラム評価および並列プログラムをどのくら
い変更すればよいか指針を示すので、並列プログラムの
最適化の工数を削減できる。According to the present invention, executable statements can be synchronized among the processors in a parallel program by a graphical screen display and simple input in an interactive manner. Therefore, the part of the program that needs to be tuned can be easily displayed, and the number of steps for optimizing the parallel program can be reduced. In addition, since the guideline for program evaluation and how much to change the parallel program when the execution statements are synchronized is shown, the man-hours for optimizing the parallel program can be reduced.
【0045】[0045]
【図1】本発明の実施例を示す並列プログラム作成支援
手順のフローチャート。FIG. 1 is a flowchart of a parallel program creation support procedure showing an embodiment of the present invention.
【図2】イベント表示受付画面の−例を示す図。FIG. 2 is a diagram showing an example of an event display acceptance screen.
【図3】イベント表示テーブルの−例を示す図。FIG. 3 is a diagram showing an example of an event display table.
【図4】第1プログラム変換処理の変換事例を示す図。FIG. 4 is a diagram showing a conversion example of a first program conversion process.
【図5】イベント表示関数のソースプログラムを示す
図。FIG. 5 is a diagram showing a source program of an event display function.
【図6】イベント表示画面の−例を示す図。FIG. 6 is a diagram showing an example of an event display screen.
【図7】新規イベント受付画面の−例を示す図。FIG. 7 is a diagram showing an example of a new event reception screen.
【図8】新規イベントタイミングテーブルの一例を示す
図。FIG. 8 is a diagram showing an example of a new event timing table.
【図9】第2プログラム変換処理の変換事例を示す図。FIG. 9 is a diagram showing a conversion example of second program conversion processing.
【図10】新規タイミング情報を用いてプログラムを実
施した後のイベント表示画面の−例を示す図。FIG. 10 is a diagram showing an example of an event display screen after executing a program using new timing information.
【図11】ハードウェア構成図。FIG. 11 is a hardware configuration diagram.
【図12】タイミング評価処理および最適タイミング決
定処理の−例を示す図。FIG. 12 is a diagram showing an example of timing evaluation processing and optimum timing determination processing.
100・・・並列プログラム最適化支援処理部、102
・・・表示イベント受付処理、103・・・イベント表
示テーブル、104・・・第1プログラム自動変換処
理、105・・・第1変換プログラム、106・・・イ
ベント表示関数、1081・・・第1イベント表示テー
ブル1、1082・・・第2イベント表示テーブル2、
109・・・イベントのタイミング表示処理、112・
・・新規イベントタイミング受付処理、113・・・イ
ベントタイミングテーブル、114・・・第2プログラ
ム自動変換処理、115・・・第2変換プログラム、1
16・・・タイミング評価処理、117・・・タイミン
グ評、118・・・評価結果表示、119・・・最適タ
イミング決定処理、120・・・最適タイミング表示。100 ... Parallel program optimization support processing unit, 102
Display event reception process, 103 event display table, 104 first program automatic conversion process, 105 first conversion program, 106 event display function, 1081 first Event display table 1, 1082 ... Second event display table 2,
109 ... Event timing display processing, 112 ...
..New event timing reception processing, 113 ... Event timing table, 114 ... Second program automatic conversion processing, 115 ... Second conversion program, 1
16 ... Timing evaluation processing, 117 ... Timing evaluation, 118 ... Evaluation result display, 119 ... Optimal timing determination processing, 120 ... Optimal timing display.
Claims (6)
その中の少なくとも1個の実行文をユーザが指定し、指
定された実行文のタイミングを表示するようにその並列
プログラムを自動変換し、得られた第1変換プログラム
を実行して各プロセッサ毎に時系列に指定実行文のタイ
ミングを表示し、さらにその表示を見てユーザが各実行
文に対して新規のタイミングを指定し、新規に指定され
たタイミングで実行するよう第1変換プログラムを自動
変換し、得られた第2変換プログラムを実行して実行文
のタイミングを表示することを特徴とする並列プログラ
ム最適化支援方法。1. A user specifies a parallel program to be optimized and at least one execution statement in the parallel program, and the parallel program is automatically converted so as to display the timing of the specified execution statement. The specified conversion statement is displayed in time series for each processor by executing the specified first conversion program, and the user further specifies the new timing for each execution statement by observing the display and newly specifies it. A parallel program optimization support method comprising automatically converting a first conversion program to be executed at a specified timing, executing the obtained second conversion program, and displaying the timing of an executable statement.
た並列プログラム中の実行文を直接指示する処理からな
る請求項第1項記載の並列プログラム最適化支援方法。2. The parallel program optimization support method according to claim 1, wherein the process of designating the executable statement comprises a process of directly designating the executable statement in the parallel program displayed on the screen.
ける処理はタイミング表示画面から直接指示する形式で
行う処理からなる請求項第1項記載の並列プログラム最
適化支援方法。3. The parallel program optimization support method according to claim 1, wherein the process of receiving the timing designation input of the execution statement is a process performed in the form of direct instruction from a timing display screen.
は、各プロセッサの表示順序をユーザが指定する順序に
逐次並べ替えて表示する処理からなる請求項第1項記載
の並列プログラム最適化支援方法。4. The parallel program optimization support method according to claim 1, wherein the process of displaying the timing of the execution statement comprises a process of sequentially rearranging and displaying the display order of each processor in an order specified by the user. .
中の複数の実行文およびそれら実行文のプログラム本来
とは異なるタイミングをユーザが指定し、指定された実
行文が指定されたタイミングで実行されるよう並列プロ
グラムを自動変換し、その変換プログラムを実行して指
定されたタイミングが後続のプログラムにどう影響する
か評価し、その評価結果に基づいて最適なタイミングを
決定し、決定した最適なタイミングを表示することを特
徴とする並列プログラム最適化支援方法。5. A parallel program to be optimized, a plurality of execution statements in the parallel program, and timings different from the original program of those execution statements are designated by a user, and the designated execution statements are executed at designated timings. The parallel program is automatically converted so that the conversion program is executed to evaluate how the specified timing affects the subsequent programs, and the optimum timing is determined based on the evaluation result. A parallel program optimization support method characterized by displaying timing.
処理を含む請求項第5項記載の並列プログラム最適化支
援方法。6. The parallel program optimization support method according to claim 5, wherein the evaluation process includes a process of displaying an evaluation result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7165109A JPH0916436A (en) | 1995-06-30 | 1995-06-30 | Support method for optimization of parallel program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP7165109A JPH0916436A (en) | 1995-06-30 | 1995-06-30 | Support method for optimization of parallel program |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0916436A true JPH0916436A (en) | 1997-01-17 |
Family
ID=15806080
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP7165109A Pending JPH0916436A (en) | 1995-06-30 | 1995-06-30 | Support method for optimization of parallel program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0916436A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007264734A (en) * | 2006-03-27 | 2007-10-11 | Fujitsu Ltd | Tuning support device, tuning support program, computer-readable recording medium recorded with tuning support program, and tuning support method |
JP2012510661A (en) * | 2008-12-01 | 2012-05-10 | ケーピーアイティ クミンズ インフォシステムズ リミテッド | Method and system for parallel processing of sequential computer program code |
US11842182B2 (en) | 2021-02-08 | 2023-12-12 | Fujitsu Limited | Method of determining processing block to be optimized and information processing apparatus |
-
1995
- 1995-06-30 JP JP7165109A patent/JPH0916436A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007264734A (en) * | 2006-03-27 | 2007-10-11 | Fujitsu Ltd | Tuning support device, tuning support program, computer-readable recording medium recorded with tuning support program, and tuning support method |
JP2012510661A (en) * | 2008-12-01 | 2012-05-10 | ケーピーアイティ クミンズ インフォシステムズ リミテッド | Method and system for parallel processing of sequential computer program code |
JP2015207318A (en) * | 2008-12-01 | 2015-11-19 | ケーピーアイティ テクノロジーズ リミテッド | Method and system for parallelization of sequential computer program codes |
US11842182B2 (en) | 2021-02-08 | 2023-12-12 | Fujitsu Limited | Method of determining processing block to be optimized and information processing apparatus |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH07302195A (en) | Dsp programming device and dsp device | |
JPH05100833A (en) | Data processor having code forming means and method of forming code | |
US5490232A (en) | Computer-aided thought process simulation design system | |
JPH0916436A (en) | Support method for optimization of parallel program | |
JPH0954760A (en) | Signal processor | |
US5600567A (en) | Method of graphically displaying and manipulating clock-based scheduling of HDL statements | |
JPH03126133A (en) | Compiler processing method | |
JPH0588863A (en) | Program development supporting system | |
JPH0973405A (en) | Display method for parallel program operation state | |
JPH10240565A (en) | Application program verification device, application program verification method and medium | |
JPH0477911A (en) | Input control system for input device | |
JPS62135958A (en) | Simulation system | |
JPH04119444A (en) | Multimedia disk device | |
JPH04338841A (en) | Debugger device | |
JPH09147132A (en) | Cad system | |
JPH04288660A (en) | Parallel processing system for plural processors | |
JPH0334021A (en) | Converting method for program language | |
CN112579073A (en) | Code conversion method and device, electronic equipment and storage medium | |
JPH0628134A (en) | Method for selecting plural data and device therefor | |
Fainter et al. | Debugging tasked Ada programs | |
JPH04316119A (en) | System for automating preparation of manual | |
JPH0981394A (en) | Compiling method managing device | |
JPH04117573A (en) | Analytic simulation system | |
JPH08314672A (en) | Display comand executing method and update command executing method, and device for same | |
JPS63250765A (en) | Display system simultaneous with simulation execution |