JPH06161775A - ソースモジュール並行コンパイル装置 - Google Patents

ソースモジュール並行コンパイル装置

Info

Publication number
JPH06161775A
JPH06161775A JP31016092A JP31016092A JPH06161775A JP H06161775 A JPH06161775 A JP H06161775A JP 31016092 A JP31016092 A JP 31016092A JP 31016092 A JP31016092 A JP 31016092A JP H06161775 A JPH06161775 A JP H06161775A
Authority
JP
Japan
Prior art keywords
source module
compiling
compilation
module
parallel
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
Application number
JP31016092A
Other languages
English (en)
Inventor
Toshiyuki Moriya
俊之 森谷
Tatsuro Murakami
龍郎 村上
Masaaki Sakamoto
仁明 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP31016092A priority Critical patent/JPH06161775A/ja
Publication of JPH06161775A publication Critical patent/JPH06161775A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Devices For Executing Special Programs (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 所望のプログラムをコンパイルする時、複数
の開発者のプログラム開発用ネットワーク上での他のあ
らゆる業務に起因する処理とそれに伴う通信動作の影響
を受けないソースモジュール並行コンパイル装置を提供
する。 【構成】 複数のソースモジュールコンパイル装置2
8,29が接続されているセグメント、複数のセグメン
トから構成される並行処理機構、モジュールサーバ装置
217、モジュールサーバ装置217とソースモジュー
ルコンパイル装置28,29とを接続する通信装置2
4,25から構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、大規模なプログラムの
コンパイル作業を容易かつ迅速に行うソースモジュール
並行コンパイル装置に関し、更に詳しくは、複数のコン
パイル機構を有する計算機を利用してコンパイル処理を
行うソースモジュール並行コンパイル装置に関する。
【0002】
【従来の技術】複数の汎用計算機を利用して、計算機上
で行なわれる作業を、作業の持つ順序性を維持しつつ、
それぞれの計算機に振り分け、並行に作業の処理を行な
う並行処理機構がある。図6はかかる並行処理機構の従
来の装置構成例を示す説明図である。
【0003】図6において、11は処理手順記憶機構、
12はジョブ割り振り機構、13はジョブ発信機構、1
4は通信機構、15は通信媒体、16はジョブ受信生成
機構、17は計算機動作状態監視機構、18は並行処理
マスター計算機、19は並行処理スレーブ計算機、11
0は割り振られたジョブを示す。
【0004】ジョブ割り振り機構12は、処理手順記憶
機構11に記憶されている処理手順を、処理結果に矛盾
を生じないよう処理の順序性を考慮して、その処理を可
能な限り分割する。分割された処理をジョブという。ジ
ョブ割り振り機構12は、それらのジョブを他の計算機
に割り振る。
【0005】ジョブ割り振り機構12は、1)主記憶装
置の使用状況と、2)各計算機へのジョブ割り当ての上
限値と、3)計算機の負荷をジョブを割り振る時に考慮
する。
【0006】計算機動作状態監視機構17とジョブ受信
生成機構16は、これらの計算機動作状態やジョブ処理
の実行結果に関する情報を、信号として発信する。その
信号は、各通信機構14から通信媒体15を介して、並
行処理機構全体を制御する並行処理マスター計算機18
に至る。並行処理マスター計算機18内で、その信号
は、通信機構14を介してジョブ割り振り機構12に至
る。
【0007】ジョブ割り振り機構12は、各計算機動作
状態を考慮するために、その信号を解釈し、ジョブを各
計算機に割り振る。割り振りが決定されたジョブは、処
理手順記憶機構11から取り出されるジョブを処理する
ための環境に関する情報と共に、並行処理マスター計算
機18のジョブ発信機構13から、通信機構14と通信
媒体15を介して、各並行処理スレーブ計算機19の通
信機構14に至る。
【0008】各計算機にあるジョブ受信生成機構16
は、前記信号からジョブ実行のために必要な信号の解釈
とジョブ生成を行なう。
【0009】ジョブ実行終了後、実行結果に関する情報
は数値化され、ジョブ受信生成機構16を介して、通信
機構14で信号に変換される。その信号は通信媒体15
を介して、並行処理マスター計算機18の通信機構14
に至る。その信号は通信機構14により数値化され、ジ
ョブ発信機構13を介して、ジョブ割り振り機構12に
至る。
【0010】ジョブ割り振り機構12は、数値化された
情報から割り振ったジョブの処理の成功、失敗を考慮し
て、処理手順記憶機構11に記憶されいる、処理手順の
処理の存続の可否を決定する。
【0011】即ち、従来の並行処理機構は、処理手順記
憶機構11に記憶されている分割が可能な計算処理手順
を処理結果に不都合が生じる様なことが無いように通信
媒体15で接続されている計算機に割り振る。
【0012】これにより、従来の並行処理機構は、単体
で計算処理を行なう場合と比較して、処理に必要な時間
を短縮している。さらに、分割されたジョブは、計算機
の動作の状態を考慮して、通信媒体15で接続されてい
る計算機の全ての資源が出来る限り等しくなるように割
り振っている。分割されたジョブの実行結果は並行処理
マスター計算機18により収集され、その情報をもとに
所望の処理を制御する。
【0013】なお、このような従来技術を記載した参考
文献として、次のものを挙げることができる。
【0014】1)PMake,Adam de Boor (UC Berkeley) a
nd the Regents of the Universityof California,can
be found on export.lcs.mit.edu in/contrib/gmake-3.
62.tar.Z 2)GNU Make,Richard M.Stallman and Roland McGrat
h,can be found on gogol.cenatls.cena.dgac.fr in/pu
b/util/pmake.tar.Z
【0015】
【発明が解決しようとする課題】従来の並行処理機構を
複数のソースモジュールから構成されるプログラムのコ
ンパイルに適用した場合、次の欠点がある。
【0016】1.プログラム開発用ネットワークにおい
て、従来、それぞれの開発者が持ち回りで実施していた
プログラムのコンパイル作業は、当該開発者と関係する
開発者が通常の業務に使用しているプログラム開発用ネ
ットワーク上の汎用計算機と、それらで構成された並行
処理機構により行なわれていた。その場合、並行処理機
構を実現している複数の計算機とネットワークに対し
て、通常の業務とコンパイル処理の負荷が同時に掛かる
ため、所望のプログラムのコンパイル処理と通常の業務
処理の双方の処理時間に悪影響を与えていた。
【0017】2.並行処理機構を具備した計算機と計算
機を接続する通信装置で構成されたネットワークにおい
て、計算機上で処理されている多くのジョブと並行処理
機構に関わるジョブが混在するために、通信装置に信号
の輻輳が生じる。よって、並行処理機構にある計算機の
処理能力を充分に生かすことが出来ない。
【0018】3.コンパイル時、通信媒体を介したコン
パイルに必要な情報の参照動作は、コンパイル処理中に
随時行なわれる。並行処理機構を利用した場合、その動
作は通信媒体で接続されている複数の計算機が並行かつ
同時に行なう故、通信媒体に情報の衝突が発生し、通信
媒体の利用効率が落ちてしまう。従って、並行処理を行
なっているにも関わらず、並行処理機構の効果が充分得
られない。
【0019】4.並行処理機構を利用する際に必須であ
る処理手順を生成する場合、あるソースモジュールと他
のソースモジュールの参照関係を調べるために、従来は
1台の計算機により処理手順の生成を行なっている。そ
の場合、処理手順の作成のために全てのソースモジュー
ルを順々に解析するため、処理手順生成に多くの時間を
要してしまう。
【0020】5.並行処理機構を利用してコンパイルを
行なう場合、ジョブで行なわれるコンパイル処理に係る
処理時間がソースモジュールの大きさや内容によって異
なるために、プログラム全体のコンパイル処理の後半に
おいて、ジョブを処理中の計算機とそのジョブの処理を
待つだけで実際にはジョブを処理していない計算機が並
行処理機構中に存在してしまう。従って、並行処理機構
にある計算機の処理能力を充分に生かすことが出来な
い。
【0021】6.並行処理機構を利用してコンパイルを
行なう場合、コンパイル時に出たエラーやワーニングの
メッセージが、コンパイルが正常に終了したさいのメッ
セージと共に1つのログに記憶されてしまう。従って、
エラーやワーニングに関する情報の提供を受けたい人に
対して、リアルタイムに情報を提供することが出来ず、
しかもその情報には不要な情報が含まれてしまう。
【0022】本発明は、上記に鑑みてなされたもので、
その目的とするところは、所望のプログラムをコンパイ
ルする時、複数の開発者のプログラム開発用ネットワー
ク上での他のあらゆる業務に起因する処理とそれに伴う
通信動作の影響を受けないソースモジュール並行コンパ
イル装置を提供することにある。
【0023】本発明の他の目的は、並行処理機構とモジ
ュールサーバ装置間の通信媒体の輻輳がコンパイル処理
に与える影響が少ないソースモジュール並行コンパイル
装置を提供することにある。
【0024】本発明の更に他の目的は、並行処理機構で
コンパイルを行うために必要な処理手順の生成に複数の
計算機を利用することによりコンパイル処理手順作成に
必要な時間を短縮し得るソースモジュール並行コンパイ
ル装置を提供することにある。
【0025】本発明の別の目的は、並行処理機構でコン
パイルを行う手順が並行処理機構を有効に利用し得るよ
うに最適化されるソースモジュール並行コンパイル装置
を提供することにある。
【0026】本発明の更に別の目的は、コンパイル処理
時のログとコンパイル結果のステータスの情報をソース
モジュール単位に管理し得るソースモジュール並行コン
パイル装置を提供することにある。
【0027】
【課題を解決するための手段】上記目的を達成するた
め、本発明のソースモジュール並行コンパイル装置は、
並行処理装置を利用したプログラムのコンパイル処理が
行われるプログラム開発用ネットワークにおいて、ソー
スモジュール並行コンパイル時に通信媒体を流れる信号
とそれ以外の信号を混在させないためにプログラムを構
成するソースモジュールをコンパイルするための専用計
算機であるソースモジュールコンパイル装置と、ソース
モジュール、オブジェクモジュールおよびそれに関連す
る情報を管理するためのモジュールサーバ装置を1つま
たは複数の独立したセグメントに分ける計算機配置形態
としたことを要旨とする。
【0028】
【作用】本発明のソースモジュール並行コンパイル装置
では、プログラムを構成するソースモジュールをコンパ
イルするソースモジュールコンパイル装置を設けて、ソ
ースモジュール並行コンパイル時に通信媒体を流れる信
号とそれ以外の信号を混在させないようにするととも
に、ソースモジュール、オブジェクモジュールおよびそ
れに関連する情報を管理するためのモジュールサーバ装
置を1つまたは複数の独立したセグメントに分ける計算
機配置形態としている。
【0029】
【実施例】以下、図面を用いて本発明の実施例を説明す
る。
【0030】図1は、交換プログラムコンパイルシステ
ムに本発明を適用した場合の一実施例のブロック図であ
る。
【0031】このシステムは、計算機に当該機能を持た
せた1つのモジュールサーバ装置217と複数のソース
モジュールコンパイル装置28及び29と、それらを複
数のセグメントで構成させるためのネットワークから成
る。
【0032】モジュールサーバ装置217において、記
憶装置213はソースモジュール記憶機構214、オブ
ジェクモジュール記憶機構215、ログ管理機構21
6、参照関係情報管理機構218を備えている。さら
に、モジュールサーバ装置217は通信機構24を備え
ている。モジュールサーバ装置217の通信機構24は
信号を送受するための信号線であるイーサネットケーブ
ルへのインタフェースを複数持っている。これは、ソー
スモジュール並行コンパイル装置を複数のセグメントで
構成させることを可能にする。
【0033】セグメント上にイーサネットケーブルを介
して接続されているソースモジュールコンパイル装置に
は、1つのマスター・ソースモジュールコンパイル装置
28と複数のスレーブ・ソースモジュールコンパイル装
置29から成る。マスター・ソースモジュールコンパイ
ル装置28は、それを並行処理機構たり得るものにする
ための並行処理機構の構成要素であるジョブ発信機構2
3とジョブ割り振り機構22と処理手順記憶機構21と
ジョブ受信生成機構26と計算機動作状態監視機構2
7、さらには、交換プログラムをコンパイルするための
CHILLコンパイラ211とイーサネットケーブル2
5と接続するための通信機構24を備えている。
【0034】スレーブ・ソースモジュールコンパイル装
置29は、それを並行処理機構たり得るものにするため
の並行処理機構の構成要素であるジョブ受信生成機構2
6と計算機動作状態監視機構27、さらには、交換プロ
グラムをコンパイルするためのCHILLコンパイラ2
11、イーサネット25に接続するための通信機構24
を備えている。
【0035】前記の様に構成されているソースモジュー
ル並行コンパイル装置で、CHILL言語により記述さ
れた複数のソースモジュールをコンパイルする例を、続
けて図1を参照して詳しく説明する。
【0036】ソースモジュール記憶機構214に当該ソ
ースモジュールを全て記憶させた状態で、まず処理手順
記憶機構21に記憶されている処理手順をジョブ割り振
り機構22が一通り解析し、個々の処理の依存関係と処
理手順の記述順序から全てのソースモジュールをコンパ
イルするための処理順序を割り出す。そののち、その処
理順序に従い個々のソースモジュールをコンパイルする
ためのコンパイルジョブ210は、各ソースモジュール
コンパイル装置29に送出するために、ジョブ発信機構
23に送られる。ジョブ発信機構23は、各ソースモジ
ュールコンパイル装置29の計算機動作状態監視機構2
7から、通信機構24とイーサネットケーブル25を介
して、逐次送られて来る各ソースモジュールコンパイル
装置29の主記憶装置の使用状況と計算機の負荷、さら
には実行中である各ソースモジュールコンパイル装置2
9のジョブの数を条件として、ジョブを発信するソース
モジュールコンパイル装置29を決定し、各ソースモジ
ュールコンパイル装置29のジョブ受信生成機構26に
ジョブを送信する。ジョブ発信機構23から送信された
ジョブは通信機構24とイーサネットケーブル25を介
して、ソースモジュールコンパイル装置29に至り、通
信機構24を介して、ジョブ受信生成機構26に至る。
ジョブ受信生成機構26は、受けとったジョブからそれ
を実行するためのコンパイルジョブプロセス210を生
成する。コンパイルジョブプロセス210は各ソースモ
ジュールコンパイル装置29にあるコンパイラ211を
起動し、コンパイルを行なう。コンパイラ211とコン
パイルジョブ210は必要とするソースモジュールや中
間ファイル等と生成するオブジェクトファイルや中間フ
ァイル等を処理するために、適宜通信機構24を介し
て、モジュールサーバ装置217と通信する。コンパイ
ル中のログとコンパイル終了後コンパイラが出したコン
パイル結果を表すステータス情報は、コンパイルジョブ
210が収集し、ジョブ受信生成機構26と通信機構2
4とイーサネットケーブル25を介して、マスター・ソ
ースモジュールコンパイル装置28に至り、さらにマス
ター・ソースモジュールコンパイル装置28の通信機構
24を経由してジョブ割り振り機構22に至る。ジョブ
割り振り機構22は、コンパイル結果のステータスに基
づき、前記した処理順序で処理を続ける有効性を判断し
処理継続の可否と参照関係から処理不可能なコンパイル
ジョブを判断する。
【0037】ソースモジュール並行コンパイル装置は、
前記の処理を繰り返し、最終的に交換プログラムを構成
する全てのソースモジュールのコンパイル処理を完了す
る。
【0038】次に、コンパイル関連情報一時記憶機構2
12を利用したソースモジュール並行コンパイル装置の
一例を説明する。図1において説明したソースモジュー
ル並行コンパイル装置において、ジョブ受信生成機構2
6が生成するコンパイルジョブプロセス210は、コン
パイラ211を起動する。そこで、コンパイルジョブ2
10は、コンパイラ211が動作する際にファイルサー
バと送受する情報を記憶できるコンパイル関連情報一時
記憶機構212を利用する。
【0039】ソースモジュールコンパイル装置28及び
29において、生成されたコンパイルジョブ210は、
始めに当該ソースモジュールのコンパイルに必要なファ
イル等の情報を、ファイルサーバ217から、通信機構
24とイーサネットケーブル25を介して、コンパイル
関連情報一時記憶機構212へ転送される。その後、コ
ンパイラ211はコンパイル関連情報一時記憶機構21
2と情報のやりとりをしながら所望のソースモジュール
をコンパイルする。コンパイル終了後、コンパイルジョ
ブ210は、コンパイラ211が生成したファイル等の
情報をモジュールサーバ装置217に転送する。
【0040】次に、前記の処理を行なうコンパイルジョ
ブ210が並行に処理されるソースモジュール並行コン
パイル装置に着目してみる。ソースモジュールコンパイ
ル装置29及び28において、コンパイルジョブ210
は並行にソースモジュールコンパイル装置217にディ
スパッチされる。複数の前記の処理を行なうコンパイル
ジョブ210が、通信機構24とイーサネットケーブル
25を介して、同時に、モジュールサーバ装置217と
通信を行なう場合、それぞれのコンパイルジョブ210
はコンパイル前とコンパイル後にのみモジュールサーバ
装置217と通信を行なう。したがって、ソースモジュ
ール並行コンパイル装置の通信機構24とイーサネット
ケーブル25の間の信号の衝突を回避出来る。
【0041】次に、並行処理機構を用いてソースモジュ
ール並行コンパイルを行なうための処理手順、さらに詳
しくはMakefileを、並行処理機構を利用して生成する動
作を説明する。
【0042】ソースモジュール並行コンパイル装置を利
用してMakefileを自動的に生成するためのソースモジュ
ール並行コンパイル装置の構成を図2に示す。
【0043】ソースモジュールの並行コンパイルを行な
うために必要な装置、機構と、ソースモジュール並行コ
ンパイルの処理手順生成に必要な装置、機構は、共に並
行処理機構を利用し、両者は同時に行なわれることはあ
り得ないという理由から、ソースモジュール並行コンパ
イル装置の並行処理機構38及び39とモジュールサー
バ装置317を共用している。さらに、マスターソース
モジュールコンパイル装置38に最適化コンパイル処理
手順生成機構312とソースモジュール参照関係解析機
構310、各スレーブソースモジュールコンパイル装置
39にソースモジュール参照関係解析機構310、モジ
ュールサーバ装置317には参照関係情報管理機構31
6を備える。
【0044】プログラムを構成する複数のソースモジュ
ールをコンパイルするための処理手順を作成する時、最
適化コンパイル処理手順生成機構312は、通信機構3
4とイーサネットケーブル35を介して、ソースモジュ
ール記憶機構315を検索し、処理対象となるソースモ
ジュールを決定する。次に、最適化コンパイル処理手順
生成機構312は、処理対象となるソースモジュールの
参照関係を解析するために、起動するソースモジュール
参照関係解析機構310の処理手順を作成する。その処
理に並行処理機構を利用するため、最適化コンパイル処
理手順生成機構312は、並行処理機構の処理手順記憶
機構31に処理手順を記憶させる。その後、最適化コン
パイル処理手順生成機構312は並行処理装置を起動す
る。並行処理機構において処理されるソースモジュール
参照関係解析機構310は、当該ソースモジュールを解
析し、ソースモジュール参照関係情報を生成する。生成
された情報は、前記モジュールサーバ装置317に具備
されたソースモジュール参照関係情報記憶機構316へ
ソースモジュール並行コンパイル装置における通信機構
34を介して転送される。
【0045】並行処理機構が最適化コンパイル処理手順
生成の処理を終了したのち、最適化コンパイル処理手順
生成機構312は、ソースモジュール参照関係情報31
0に基づき、参照関係からコンパイル処理の順序関係を
特定し、コンパイル処理手順テンプレート313から前
記の並行処理機構の処理手順記憶機構31に記憶させる
ためのコンパイル処理手順を生成する。
【0046】次に、ソースモジュール並行コンパイル装
置を最適化された処理手順で利用するための処理手順を
詳細に説明する。
【0047】並行処理機構は、処理手順記憶機構21に
記憶されたコンパイルの処理手順により、コンパイル処
理をソースモジュールコンパイル装置28及び29へデ
ィスパッチする。
【0048】図3ないし図5を参照して説明する。な
お、図3は本発明のソースモジュール並行コンパイル装
置を最適化された処理手順で利用する場合に、その一実
施例としてコンパイルするソースモジュールの規模を示
す。図中、41はAというモジュールの規模、42はB
というモジュールの規模、43はCというモジュールの
規模、44はDというモジュールの規模、45はEとい
うモジュールの規模、46はFというモジュールの規模
を示す。図4は本発明のソースモジュール並行コンパイ
ル装置を、最適化された処理手順を利用せず、コンパイ
ルした場合のソースモジュールコンパイル装置へのディ
スパッチの状態の一実施例を示す。図中、51はAとい
うモジュールのコンパイル時間、52はBというモジュ
ールのコンパイル時間、53はCというモジュールのコ
ンパイル時間、54はDというモジュールのコンパイル
時間、55はEというモジュールのコンパイル時間、5
6はFというモジュールのコンパイル時間、57は全て
のモジュールのコンパイルが終った時刻、58は甲とい
うソースモジュールコンパイル装置、59は乙というソ
ースモジュールコンパイル装置、510は丙というソー
スモジュールコンパイル装置を示す。図5は本発明のソ
ースモジュール並行コンパイル装置を最適化された処理
手順を利用する場合に、コンパイルした場合のソースモ
ジュールコンパイル装置へのディスパッチの状態の一実
施例を示す。図中、61はAというモジュールのコンパ
イル時間、62はBというモジュールのコンパイル時
間、63はCというモジュールのコンパイル時間、64
はDというモジュールのコンパイル時間、65はEとい
うモジュールのコンパイル時間、66はFというモジュ
ールのコンパイル時間、67は全てのモジュールのコン
パイルが終った時刻、68は甲というソースモジュール
コンパイル装置、69は乙というソースモジュールコン
パイル装置、610は丙というソースモジュールコンパ
イル装置を示す。
【0049】例えば、ソースモジュールコンパイル装置
群として甲、乙、丙の3つを備えたソースモジュール並
行コンパイル装置28及び29があるとする。このソー
スモジュールコンパイル装置群を利用して、例えばA,
B,C,D,Eのコンパイルジョブ210を実行する場
合を想定する。従来、並行処理装置を利用してコンパイ
ルを処理する場合、各コンパイルジョブの順番は恣意的
に決定されていた。そのように決定された順番に従う
と、ジョブを各ソースモジュールコンパイル装置へ、
甲、乙、丙に処理時間が均等になるようにディスパッチ
されない可能性が大きい。従って、一番処理時間の長い
ジョブをディスパッチされたソースモジュールコンパイ
ル装置の処理が終了するまで、他のソースモジュールコ
ンパイル装置はその処理の終了を待たなければならな
い。
【0050】そこで、甲、乙、丙に出来る限り均等に処
理が分配するために、処理しなければならないファイル
が大きい順にジョブをディスパッチする方法を適用す
る。この方法によれば、甲、乙、丙に均等にジョブがデ
ィスパッチされ、ジョブを処理していないソースモジュ
ールコンパイル装置が他のソースモジュールコンパイル
装置のジョブの処理を待つ必要がない。
【0051】具体的に実施例を説明する。図2において
説明した最適化コンパイル処理手順生成において、最適
化コンパイル処理手順生成機構がソースモジュール参照
関係情報に基づきコンパイル処理手順を生成する際に、
以下の手順を加味して、コンパイル処理手順を作成す
る。まず、最適化コンパイル処理手順生成機構312
が、前記ソースモジュール記憶機構315を検索しソー
スモジュールのファイルサイズを測定する。そのファイ
ルサイズからソースモジュール名をソートし、参照関係
に矛盾を生じさせない限りにおいて、最適化コンパイル
処理手順をファイルサイズの大きいものから処理するよ
うにソートする。
【0052】図1で説明したソースモジュール並行コン
パイル装置に、このコンパイル処理手順を用いること
で、コンパイル処理は最適化される。
【0053】次に、ソースモジュールコンパイル装置に
おいて、コンパイル時のログと処理結果をソースモジュ
ール単位に収集する装置の処理手順を詳細に説明する。
【0054】図1及び図2を参照する。前記モジュール
サーバ装置217には、ログ管理機構216を備える。
さらに、コンパイラ211が処理中に出力するメッセー
ジを収集しログ管理機構216に転送する手順を最適化
コンパイル処理手順生成機構312にあるコンパイル処
理手順テンプレート313に記述しておく。
【0055】具体的な動作例を説明する。図1において
説明したソースモジュール並行コンパイル装置群におい
て、前記したコンパイル処理手順テンプレート313に
記述した手順をジョブとするコンパイル処理手順が、通
信機構24とイーサネットケーブル25を介して、マス
ター・ソースモジュールコンパイル装置28に転送され
る。次に、ジョブ割り振り機構22はそのジョブを各ソ
ースモジュールコンパイル装置29に転送する。ジョブ
は、コンパイルを行なうと同時にコンパイラ211が出
したメッセージをコンパイル関連情報一時記憶機構21
2に転送する。コンパイル終了後、ジョブ210は、そ
のログをログ管理機構216に転送する。さらに、ログ
の内容がコンパイルの失敗を示す場合、ログ管理機構2
16は、そのログを計算機のメイル機能により、ソース
モジュールの開発担当者に送信する。
【0056】これら一連の動作により、コンパイルが失
敗した際のコンパイラのメッセージは、即座に開発担当
者に送信される。
【0057】以上説明したように、本発明のソースモジ
ュール並行コンパイル装置では、ソースモジュール並行
コンパイル装置を、複数のソースモジュールコンパイル
装置が接続されているセグメントと、複数あるそのセグ
メントから構成されている並行処理機構と、モジュール
サーバ装置と、モジュールサーバ装置とソースモジュー
ルコンパイル装置とを接続する通信装置により構成して
おき、前記プログラム開発用ネットワークに対しては、
モジュールサーバ装置を介して接続する。そして、下記
の特徴を有する。
【0058】1.コンパイルを行なう場合に必要な情報
とコンパイルにより生成される情報が、ソースモジュー
ルコンパイル装置とモジュールサーバ装置の間でやりと
りされるとき、セグメントを並行処理機構内に複数存在
させることでコンパイル時に必要な情報を伝達するため
の信号を信号分散手段により分散し、さらにプログラム
開発用ネットワークにおいて、複数のソースモジュール
コンパイル装置とモジュールサーバ装置と通信装置を独
立したセグメントとすることにより、プログラムをコン
パイルする時に使用する装置を接続する通信機構とプロ
グラム開発用ネットワークに流れるその他の業務に起因
する信号が分離されるため、並行処理機構における通信
媒体の信号の輻輳状態が軽減され、処理時間が軽減され
る。
【0059】2.コンパイルを行なう場合に必要な情報
を、モジュールサーバ装置からソースモジュールコンパ
イル装置にコンパイル作業に必要になる情報の一部ある
いは全てをコンパイル作業の開始時に転送し、ソースモ
ジュールコンパイル装置からモジュールサーバ装置にコ
ンパイル処理の結果と生成されたオブジェクモジュール
等をコンパイル作業終了時に転送するコンパイル処理関
連情報バッファリング手段により、所望のプログラムを
コンパイルする時に使用する複数のソースモジュールコ
ンパイル装置とモジュールサーバ装置間の通信のための
信号の衝突が軽減され、並行処理機構における通信媒体
の輻輳状態が軽減される。
【0060】3.ソースモジュールコンパイル装置にソ
ースモジュール参照関係解析機構を具備させ、並行処理
機構を利用し、参照関係解析動作を並行に行ない、その
結果をコンパイル手順生成機構とそれが参照するコンパ
イル処理手順テンプレートから当該プログラムをコンパ
イルするためのコンパイル手順を生成する、コンパイル
手順並行処理生成手段により、コンパイル手順生成のた
めに複数の計算機による並行処理を行ない、コンパイル
手順生成処理時間が軽減される。
【0061】4.コンパイルの対象となるソースモジュ
ールのバイト数からその規模を割りだし、規模の大きい
ものから順に処理を行なうようにすることで、最適化さ
れたコンパイル手順を生成する最適化コンパイル手順生
成手段により、ジョブを処理中のソースモジュールコン
パイル装置とジョブを処理していないソースモジュール
コンパイル装置が混在する状態を可能な限り回避するこ
とで、ソースモジュールコンパイル装置の利用効率が向
上する。
【0062】5.並行処理機構でジョブが処理される場
合、コンパイル処理を行なうジョブに予めコンパイル処
理時のログや処理結果を記憶させるコンパイルログ記録
手段を具備させることにより、コンパイルを行なう単位
であるモジュール毎にログやコンパイル結果ステータス
を収集することを可能にし、すみやかにソースモジュー
ル開発担当者へ提供できる。
【0063】
【発明の効果】以上説明したように、本発明によれば、
従来開発者の汎用計算機で行なうため大変多くの時間を
要する上に開発者の稼働も大きいものがあった所望のプ
ログラムのコンパイルの処理に要する時間を、導入する
計算機の数に応じて短縮することが可能になった上に、
開発者の稼働を削減できる。また、並行処理機構を実装
したソースモジュールコンパイル装置におけるジョブ処
理に必要な計算機処理能力を、無駄に通信機構で浪費し
てしまうことを防ぐことで、ジョブ処理時間の短縮を実
現した。また、ジョブ処理時間の短縮により、結果とし
て所望のプログラムのコンパイル時間を短縮し得る。更
に、従来1台の汎用計算機で処理されていた所望のプロ
グラムのコンパイル処理手順生成を、複数の専用計算機
を利用することで、コンパイル処理手順生成に必要な時
間を短縮し得る。
【0064】また、プログラム全体のコンパイル処理の
後半において、ジョブを処理中の計算機と他の計算機の
ジョブの処理を待つだけで実際にはジョブを処理してい
ない計算機が、並行処理機構中に同時に存在してしまう
状況を出来る限り回避することで、並行処理機構を利用
したソースモジュール並行コンパイル装置を構成する複
数のソースモジュールコンパイル装置を有効に利用し、
所望のプログラムコンパイルに必要な時間の短縮が実現
される。従来所望のプログラムのコンパイル処理が終了
した時点ではじめてコンパイルのログを一度に収集し、
そのあと初めてログに記載されている情報の提供を受け
たい開発者に提供していたが、ログをモジュール単位に
分割して収集し、さらに前記のログにコンパイル処理結
果ステータス情報を盛り込んだことで、ソースモジュー
ルコンパイル終了と同時に処理結果を収集し、エラーの
発生したソースモジュール担当者へのリアルタイムなロ
グの提供が実現される。
【図面の簡単な説明】
【図1】本発明の一実施例に係わるソースモジュール並
行コンパイル装置の構成を示すブロック図である。
【図2】本発明のソースモジュール並行コンパイル装置
を使用してコンパイル処理手順を作成するための構成を
示すブロック図である。
【図3】本発明のソースモジュール並行コンパイル装置
を最適化された処理手順で利用する場合におけるコンパ
イルするソースモジュールの規模を示す説明図である。
【図4】本発明のソースモジュール並行コンパイル装置
を最適化された処理手順で利用せずにコンパイルした場
合のソースモジュールコンパイル装置へのディスパッチ
の状態を示す説明図である。
【図5】本発明のソースモジュール並行コンパイル装置
を最適化された処理手順で利用する場合にコンパイルし
た場合のソースモジュールコンパイル装置へのディスパ
ッチの状態を示す説明図である。
【図6】従来の並行処理装置の構成図である。
【符号の説明】
21 処理手順記憶機構 22 ジョブ割り振り機構 23 ジョブ発信機構 24 通信機構 25 通信媒体 26 ジョブ受信生成機構 27 計算機動作状態監視機構 28 モジュールソースモジュールコンパイル装置 29 スレーブソースモジュールコンパイル装置 210 コンパイルジョブ 211 コンパイラ 213 記憶装置 217 モジュールサーバ装置

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 並行処理装置を利用したプログラムのコ
    ンパイル処理が行われるプログラム開発用ネットワーク
    において、ソースモジュール並行コンパイル時に通信媒
    体を流れる信号とそれ以外の信号を混在させないために
    プログラムを構成するソースモジュールをコンパイルす
    るための専用計算機であるソースモジュールコンパイル
    装置と、ソースモジュール、オブジェクモジュールおよ
    びそれに関連する情報を管理するためのモジュールサー
    バ装置を1つまたは複数の独立したセグメントに分ける
    計算機配置形態としたことを特徴とするソースモジュー
    ル並行コンパイル装置。
  2. 【請求項2】 ソースモジュールコンパイル装置で行わ
    れるコンパイル時に必要な情報、更にはコンパイル時に
    生成される情報を一時的に蓄えるコンパイル作業一時記
    憶機構を有することを特徴とする請求項1記載のソース
    モジュール並行コンパイル装置。
  3. 【請求項3】 並行処理機構においてソースモジュール
    参照関係解析機構を各ソースモジュールコンパイル装置
    に有することを特徴とする請求項1記載のソースモジュ
    ール並行コンパイル装置。
  4. 【請求項4】 コンパイル処理の順番をソースモジュー
    ルの参照関係を矛盾させない範囲でソースモジュールの
    ファイルサイズの大きいものから処理するようにソート
    する手段を有することを特徴とする請求項1記載のソー
    スモジュール並行コンパイル装置。
  5. 【請求項5】 ソースモジュール単位にコンパイル作業
    の過程とコンパイル結果のステータスを前記モジュール
    サーバ装置のログ管理機構にコンパイル処理中リアルタ
    イムに記録する手段を有することを特徴とする請求項1
    記載のソースモジュール並行コンパイル装置。
JP31016092A 1992-11-19 1992-11-19 ソースモジュール並行コンパイル装置 Pending JPH06161775A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31016092A JPH06161775A (ja) 1992-11-19 1992-11-19 ソースモジュール並行コンパイル装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31016092A JPH06161775A (ja) 1992-11-19 1992-11-19 ソースモジュール並行コンパイル装置

Publications (1)

Publication Number Publication Date
JPH06161775A true JPH06161775A (ja) 1994-06-10

Family

ID=18001885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31016092A Pending JPH06161775A (ja) 1992-11-19 1992-11-19 ソースモジュール並行コンパイル装置

Country Status (1)

Country Link
JP (1) JPH06161775A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306200A (zh) * 2011-09-22 2012-01-04 用友软件股份有限公司 增量数据操作语句的并发应用装置和方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102306200A (zh) * 2011-09-22 2012-01-04 用友软件股份有限公司 增量数据操作语句的并发应用装置和方法

Similar Documents

Publication Publication Date Title
US11023285B2 (en) Acceleration method for FPGA-based distributed stream processing system
Priami Stochastic π-calculus
US6732139B1 (en) Method to distribute programs using remote java objects
US6226784B1 (en) Reliable and repeatable process for specifying developing distributing and monitoring a software system in a dynamic environment
US5287453A (en) Fast remote file access facility for distributing file access requests in a closely coupled computer system
US20080294872A1 (en) Defragmenting blocks in a clustered or distributed computing system
CN112306719B (zh) 一种任务调度方法与装置
CN101196901B (zh) 用于数据库查询的计算机系统和方法
CN112862098A (zh) 一种集群训练任务处理的方法及系统
US9904574B2 (en) Parallel computing without requiring antecedent code deployment
CN110187970A (zh) 一种基于Hadoop MapReduce的分布式大数据并行计算方法
JP3319764B2 (ja) ソフトウェアシステム間でソフトウェア機能を同期化させるための方法および装置
CN115827250A (zh) 一种数据存储方法、装置及设备
CN115470915A (zh) 量子计算机的服务器系统及其实现方法
CN114721824A (zh) 一种资源分配方法、介质以及电子设备
CN116643854A (zh) 一种服务编排方法、装置、流程控制器及任务处理器
Hill Channel access: A software bus for the LAACS
US5613133A (en) Microcode loading with continued program execution
JPH06161775A (ja) ソースモジュール並行コンパイル装置
US20100023948A1 (en) Allocating resources in a multicore environment
Eldred et al. DAKOTA, A multilevel parallel object-oriented framework for design optimization, parameter estimation, sensitivity analysis, and uncertainty quantification
CN111506407A (zh) Pull模式与Push模式相结合的资源管理与作业调度方法、系统及介质
CN116302452B (zh) 作业调度方法、系统、装置、通信设备及存储介质
JP3225711B2 (ja) ジョブ処理システムおよびジョブ処理実行装置
Hofmann et al. Integrating monitoring and modeling to a performance evaluation methodology