C言 語 自動 並 列 化 トラ ンス レー タ に お け る
構 文 木 ベ ー ス 中間 デ ー タ構 造 へ の 並 列 化 情 報 統 合 手 法 の 改 良
小 倉 健 太 郎*1,甲 斐 宗 徳*2 ImprovementsonIntegratingParallelizedInformationintoIntermediate DataStructurebasedonParseTreeforAutomaticParallelizingTranslatorforCPrograms KentaroOGURA*1,MunenoriKAI*2 ABSTRACT:Inourautomaticparallelizingtranslator,anintermediatedatastructUrebasedonparsetree ofthesequentialCprogramisgenerated.Therearesomeanalysisstagesinourparallelizingtranslator,such asdatadependencyanalysisstage,taskgranularityanalysisstage,taskschedulingstage,andparallelcode generationstage.Inthispaper,weproposeanewintegrationmethodofanalysisresultfromeachstageinto theintermediatedatastructurebasedonparsetreeforthepurposeoftranslationefficiency.Inaddition,we reporttheimplementationofthehistorymechanismofthetranslate-operationstotheintermediatedata stnlcturebasedonparsetreeinordertotracebackwardorfbrwardofthesequenceoftheoperations. Keywords:Parallelizingtranslator,Parsing,CoderestrlctUring,Parallelismanalysis (ReceivedJune30,2016) 1.は じ め に 近 年 で は コ ン ピ ュー タ性 能 の 向 上 が 求 め られ て い る。 しか し、 物 理 的 な 問題 や 消 費 電 力 の 問 題 か ら コ ン ピ ュー タ 単 体 で の 高 速 化 に は 限 界 が 見 え て き て い る。 そ こで 、 コ ン ピュ ー タ 性 能 の 向 上 の 解 決 策 と して 挙 げ る こ とが で き るの が 、 並 列 コ ン ピ ュー テ ィ ン グで あ る。 これ は 並 列 プ ロ グ ラ ミン グ を用 い て 並 列 処 理 用 の プ ロ グ ラム を 作 成 し、 そ の 処 理 を マ ル チ コア や マ ル チ プ ロセ ッ サ に割 り当 て る こ とで プ ロ グ ラム を効 率 よ く並 列 処 理 さ せ る とい うもの で あ る。 しか し、 この 並 列 プ ロ グ ラ ミ ン グ とい うもの は とて も 難 しい もの と して 知 られ て い る。 並 列 化 可 能 か 調 べ る作 業 が 必 要 とな っ た り、 通 信 を考 慮 す る必 要 が あっ た り、 並 列 プ ログ ラ ミ ン グの 専 門 的 な 知 識 を習 得 す る こ と も必 要 とな るた め で あ る。 そ の 難 しさが 並 列 コ ン ピ ュー テ ィ ング の 普 及 を 妨 げ る理 由 とな っ て い る。 *1:理 工 学 研 究 科 理 工 学 専 攻 博 士 前 期 課 程 学 生 *2:理 工 学 研 究 科 理 工 学 専 攻 教 授(kai@st .seikei.ac.jp) こ の 問 題 の 解 決 策 と し て 、C言 語 で 記 述 さ れ た 逐 次 実 行 可 能 な プ ロ グ ラ ム を 自 動 的 にMPIを 用 い た 並 列 実 行 可 能 な プ ロ グ ラ ム に 変 換 す る ト ラ ン ス レ ー タ を利 用 す る こ と が 挙 げ られ る。 これ を 用 い る こ と に よ り、 自 動 で 並 列 プ ロ グ ラ ム を 生 成 す る こ と が 可 能 と な る た め 、 手 軽 に 並 列 プ ロ グ ラ ム を 利 用 す る こ と が 出 来 る。本 研 究 で は 、C言 語 に よ っ て 記 述 さ れ た 逐 次 コ ー ド を 自 動 的 にMPI (MessagePassingInterface)コ ー ドに 変 換 す るC言 語 自 動 並 列 化 トラ ン ス レ ー タ の 完 成 を 目指 す 。 2.C言 語 自 動 並 列 化 トラ ン ス レ ー タ の 概 要 C言 語 自動 並列 化 トラ ン ス レー タ は 、C言 語 で 記 述 され た逐 次 プ ログ ラム を トラ ンス レー タに 読 み 込 ませ る こ と でMPIを 用 い た 並 列 プ ログ ラム に 変 換 され る とい うもの とな っ て い る。 そ の流 れ を 大 ま か に 図 に した もの を次 に 示 す 。 本 トラ ン ス レー タ で は 、 まず 読 み 込 ん だC言 語 の プ ロ グ ラ ム を 中 間 デ ー タ構 造 と して保 存 す る。 この 中間 デ ー タ構 造 は構 文 木 と して保 存 され る。 保 存 され た 中間 デ ー タ構 造 に対 して並 列 依 存 解 析 を行 い 、並 列 性 を探 し出す 。日
中間 デー タ構造 へ 変換『
4
並列 ・依 存 性解 析 タスク粒 度解 析 タスクスケジュー リ ン グ ら様 々 な解 析 結 果 を得 られ る よ うに す る。 そ の た め に 、 新 し くタ ス ク に必 要 な情 報 を ま とめ る フォ ー マ ッ トを作 成 、適 用 し解 析 の精 度 を 上 げ よ う とい う もの で あ る。=
E]一[圭
司
図1並 列 化 トラ ン ス レー タ 処 理 手 順 タ ス ク粒 度解 析 で は 、 タ ス クの 実 行 時 間 や 依 存 関 係 か ら 適 切 な粒 度 を 求 め る。 タス クス ケ ジ ュー リン グ にお い て は 簡 易 的 な ス ケ ジ ュ ー リン グ を行 い 、 タス ク に対 して プ ロセ ッサ の割 り当 て を 静 的 に 行 っ て い る。 最 後 に 、 各解 析器 の 処 理 が 完 了 した 中間 デ ー タ構 造 か ら並 列 プ ログ ラム を 作 成 し、 出 力 す る。 3.中 間 デ ー タ 構 造 中 間 デ ー タ構 造 は トラ ンス レー タ内 の 各 解 析 器 で 行 わ れ る処 理 の 間 で 受 け 渡 され るデ ー タ構 造 で あ る。 こ こ に は 逐 次 実 行 可 能 なC言 語 プ ロ グ ラ ム の ソー ス コ ー ドを 構 文 木構 造 に 変 換 し、 完 全 に 保 存 す る。 この 中間 デ ー タ構 造 に は ほ か に も各解 析 処 理 の 結 果 や 、 各 解 析 器 が ソー ス プ ロ グ ラム に加 え た 変 更 な どが 保 存 され て い る状 態 が 理 想 と言 え る。 しか し、 現 状 の トラ ンス レー タに お い て は 、 中間 デ ー タ構 造 か ら解 析 した 情 報 を 、 中間 デ ー タ構 造 とは 別 に保 存 して しま っ て い る。 そ の 結 果 、 各 解 析 器 が 中間 デ ー タ 構 造 を 用 い て解 析 を す る際 に 、 中間 デ ー タ構 造 と解 析 し た 情 報 を 照 ら し合 わ せ な が らの 解 析 をす る必 要 が あ り、 とて も不 便 な 状 態 とな っ て い る。 そ こで 、 本研 究 で は 理想 と され て きた 中間 デ ー タ構 造 の使 い 方 を 現 実 とす るた め に 、 各 解 析 部 で 解 析 した 結 果 を 自由 に使 用 す る こ との で き る よ うな 、 並 列 情 報 を保 存 す るフ ォ ー マ ッ トを 作 成 す る こ とに す る。 4.並 列 化 情 報 統 合 手 法 現 状 の トラ ンス レー タ に お い て 、 各 タス クの ノー ド単 位 の 依 存 情 報 を 取 得 し よ うとす る場 合 に 、 依 存 の あ る ノ ー ドま で 潜 っ て い か な い と情 報 を取 得 す る こ との で きな い 部 分 が 存在 して い る。 そ こで 、 タス ク グ ラ フ にお い て そ の 中 の ノー ド単位 ま で 深 く見 る こ とな く大 きな 部 分 か 4.1過 去 の 並 列 化情 報 保 存 手法 これ ま で の トラ ンス レー タで は 、 変数 や タス クに 関 す る並 列 ・依 存 情 報 は リス ト構 造 で保 存 され て お り、 必 要 なデ ー タ を取 得 す る際 に必 要 な デ ー タま で デ ー タ リス ト の頭 か ら順 に 見 て い く必 要 が あ っ た。 これ で は解 析 の 効 率 が悪 くな っ て しま うた め 、 この よ うな 状 態 を解 消 す る た め に も、 どの よ うな デ ー タに 対 して も直接 指 定 して 必 要 なデ ー タ を 取得 で き る よ うな デ ー タ構 造 を作 成 す る必 要 が あ る。 4.2タ ス ク操 作 に お け る 並 列 化情 報 の役 割 今 回考 え る 並列 化 情 報 統合 手 法 の 主 な役 割 と して は 、 必 要 な情 報 を簡 単 に 取得 で き る よ うに す る必 要 が あ る。 過 去 の トラ ン ス レー タ に 見 られ た よ うな 必 要 な 情 報 を得 る た め に リス トを 走査 す る必 要 な く、 各 タス クが 必 要 な 情 報 を 直接 取 得 で き る よ うにす る。 4.3並 列 化情 報 統 合 手法 並 列 ・依 存 情 報 を使 いや す い 状 態 で保 存 して お く こ と は 、 中 間デ ー タ構 造 を用 い て 並列 解 析 を行 う上 で 重 要 な こ とで あ る。 そ こで 、今 年 度 の研 究 と して 並 列化 に 必 要 な情 報 を ま とめ る新 しい フ ォ ー マ ッ トを 作成 し、 そ れ を 用 い て解 析 や ス ケ ジ ュ ー リ ン グを行 うこ とで 、 よ り正確 な解 析 が行 え る よ うにす る もの で あ る。 4.3.1変 数 の 依 存 情 報 保 存 手 法 プ ログ ラ ム の 並列 化 を行 う際 に は 、 実行 す る処 理 が どの 変 数 に依 存 して い るか を 正 し く判 断 す る必 要 が あ る。 そ の た め に 、各 変 数 が持 つ依 存 に つ い て 各 タス クが 自分 で 情 報 を所 持 して い る状 態 に し、他 に 用意 した デ ー タ リス トに ア クセ ス した りす る こ とな く依 存 情 報 を使 用 で き る よ うな構 造 を 作 る。 4.3.1.1変 数 の 依 存 情 報 プ ロ グ ラ ム 内 で 使 用 し て い る 変 数 に は 、 様 々 な 状 態 が 存 在 し て い る 。 変 数 に 含 ま れ る値 を 変 更 す る こ と な く値 を 読 み 込 ん で 処 理 に 使 用 す るread、 変 数 に 代 入 され た 値 に 新 た な 値 を 代 入 す るwrite、 読 み 込 み の 後 に 続 け て 書 き 込 み を 行 うread-write、 関 数 の 実 行 を 行 うた め のexecで あ る 。4.3.1.2変 数 間 の 依 存 解 析 変数 間 に は 並 列 処 理 を 行 う際 の 制 限 に な る もの が あ る。 そ れ が デ ー タ 依 存 と制御 依 存 で あ る。 デ ー タ 依 存 とは 、 プ ログ ラム 中 の命 令 文2つ の うち、 どち らか の 処 理 を 実 行 しな い と も う一 つ の 処 理 が で きな い 状 態 の こ とで あ る。 制 御 依 存 とは 、if文に お い て 条 件 文 の 処 理 が完 了 しな い とブ ロ ック 内 の 処 理 を 実 行 す るか ど うか が 決 め られ な い よ うに 、 デ ー タ 依 存 が 無 く と も処 理 を評 価 した うえで 実行 す る必 要 が あ る状 態 の こ とで あ る。 依 存 情 報 を 一 つ に ま とめ て 保 存 す る為 に、 各 変 数 が ど の依 存 を 持 っ て い るか を解 析 す る必 要 が あ る。 しか し、 変数 に も様 々 な 種 類 が あ るた め 、 そ れ ぞ れ につ い て 個 別 に解 析 す る必 要 が あ る。 こ こで は 各 変 数 につ い て 説 明 し て い く。 (1)ス カ ラ 変 数 ス カ ラ変 数 とは 、 そ の 変 数 の 中に 数 値 や 文 字 列 の よ う な値 を 一 つ だ け保 存 して お く こ との で き る もの で あ る。 各 ス カ ラ変 数 間 に 依 存 関係 が 存 在 す る と並 列 実 行 を行 う こ とが で き な い。 (2)配 列 変 数 配 列 変 数 に は複 数 の 値 を リス ト形 式 で 持 た せ る こ とが で き る。 ま た 、 各 要 素 に 含 む こ とが で き るの は ス カ ラ変 数 の み で あ る。 過 去 の トラ ンス レー タ で は 、 配 列 は イ ンデ ッ クス 単 位 で は な くシ ンボ ル 単位 で の 解 析 しか 行 うこ とが で きな か っ た が 、今 回 イ ンデ ッ クス 単位 で も解 析 が 可 能 にな る よ うに 改 良 した。 (3)構 造 体 の メ ンバ 変 数 構 造 体 の メ ンバ 変 数 を 指 定 した もの の 場 合 は 、 解 析 す る際 に 指 定 変 数 を 別 の 変 数 と して 保 存 して しま うと メモ リ数 が 増 大 して しま う恐 れ が あ るた め 、 指 定 変 数 ご と に 新 た に 情 報 を 追加 す るの で は な く、 元 とな る構 造 体 の メ ンバ 変数 か ら依 存 情 報 を 参 照 す る こ とで 無 駄 な メモ リの 増加 を 防 ぐ。 (4)ポ イ ンタ 変 数 ポ イ ンタ 変 数 は 、 変 数 や 動 的 に 確 保 され た 領 域 に対 し て解 析 を 行 う必 要 が あ る。 ポ イ ン タ と して 代 入 され る値 に つ い て は そ れ が ポ イ ンタ 変 数 で あ る とい う情 報 を変 数 に 持 たせ る。 4.3.1.3依 存 情 報 の 保 存 手 法 解 析 し た 変 数 に つ い て の 依 存 情 報 は 、 中 間 デ ー タ 構 造 内 に 保 存 し て い く 。 そ の た め に 新 し く フ ォ ー マ ッ トを 作 成 し 、 そ れ に 当 て は め る 形 で 保 存 し て い く 。 依 存 情 報 の保 存 の 手 法 と して 、 ま ず 重 要 とな るの が 各 情 報 へ の ア ク セ ス の しや す さで あ る。 今 回 考 え る フォ ー マ ッ トで は 、各 変 数 に 固有 のIDを 持 たせ 、そ のIDに 対応 させ る よ うなハ ッシ ュ テ ー ブル を 用 い る こ とに した。 こ うす る こ とで 、欲 しい情 報 に 直接 ア クセ ス す る こ とが 可 能 に な る。 ハ ッシ ュ テ ー ブル の値 の 部 分 に は 変数 に 関 す る依 存 情 報 を保 存 す る ク ラス を持 たせ る。 そ の ク ラス に 持 たせ る 情 報 は 以 下 の通 りで あ る。 変 数 の依 存 情 報 クラス private:public: 依 存 先(Task)依 存 先 タス ク取 得 関 数 依 存 先 タス ク変 更 関 数 依 存 先(Var)依 存 先 変 数 取 得 関 数 依 存 先 変 数 変 更 関 数 依 存 情 報 依 存 情 報 取 得 関 数 依 存 情 報 変 更 関 数 図2変 数 の 依 存 情 報 保 存 ク ラ ス 依 存 先(var)は そ の 変 数 が どの 変 数 に依 存 して い る か を保 存 す る。 依 存 先(Task)は そ の 変 数 が依 存 して い る 変 数 が どの タ ス ク で あ る か を保 存 す る。 コス トは各 変 数 が持 つ重 み の値 を保 存 す る。 依 存 情 報 は そ の変 数 の もつ依 存 に つ い て保 存 す る。 4.3.2タ ス ク の 並 列 情 報 保 存 手 法 過 去 の トラ ンス レー タ で は 、 タ ス クの解 析 に 必 要 とな る エ ッジや 保 有 す るタ ス クの 情報 に つ い て 、 そ れ ぞ れ に 用 意 され た テ ー ブル を調 べ る こ とで 取得 す る とい う方 法 を とっ て い た。 今 回 の研 究 で は 、他 に 用 意 され た リス ト を参 照す る の で は な く必 要 な 情報 を 各 タス クが 個別 に 所 有 す る よ うに 改 良 し、解 析 や 操 作 の た め の 情 報 を取 得 す る の に手 間 が か か らな い よ うに した。 4.3.2.1タ ス ク の依 存 情 報 並 列 性 解 析 で は どの タ ス クが 並列 に 実行 で き るか を解 析 す る。タス ク の並 列 実 行 に は変 数 の通 信 が必 要 な た め、 前 項 で保 存 した変 数 の依 存 情報 を 用 い て 並 列性 を解 析 す る。 タ ス ク に お け る依 存 情 報 は 、 内 部 の 変数 に お け る依 存 情 報 の種 類 と向 き に よっ て決 ま る。 4.3.2.2タ ス ク ス ケ ジ ュ ー リ ン グ 結 果 の 保 存 手 法 こ ち ら に 関 し て も 、 各 タ ス ク に ユ ニ ー ク なIDを 持 た せ 、
そ のIDを キ ー とす る ハ ッ シ ュテ ー ブ ル を 用 い て 各 タ ス ク の 情 報 を保 存 して い く。 保 存 す る情 報 は 以 下 の 通 りで あ る。 の 融 合 が 可 能 に な る。 ・タスク融合 並 列 情 報 クラス: 依 存 情 報map 先 行 タスクリス ト タス クコス ト 操 作 履 歴id 部 分 タスク判 別id 割 り当 てプ ロセッサ 依 存 強 度 リス ト 図3タ ス ク の 並 列 情 報 保 存 ク ラス 依 存 情 報mapは そ の タ ス ク が持 つ 変 数 の依 存 情 報保 存 ク ラス を ま とめ た ハ ッシ ュ テ ー ブ ル で あ る。 先行 タ ス ク リス トは 、 そ の タス クの 先 行 タス クの リス トで あ る。 タ ス ク コス トは 、 そ の タ ス クの コス トを計 算 す る関 数 で あ る。 操 作 履 歴idは 後 に紹 介 す る タ ス ク グ ラ フ操 作 履 歴機 能 に お い て 、 何 番 目の 操 作 に 使 わ れ て い るか とい う情 報 で あ る。 部 分 タ ス ク 判 別 フ ラ グは 、 そ の タス クが 部 分 タス クの 一 部 で あ るか を 判 定 す るた め の フ ラ グで あ る。 割 り当 て プ ロセ ッサ は 、 そ の タス クが どの プ ロセ ス に 割 り当 て られ るか の 情 報 で あ る。 依 存 強 度 リス トは 、そ の タ ス ク の持 つ 依 存 強度 で あ る。
⇒
融合 図4タ ス ク 融 合⇒
S融 合 5.タ ス ク グ ラ フ 操 作 履 歴 トラ ンス レー タ で は 、解 析 な ど を行 う際 に タス ク に対 して様 々 な 操 作 を す る。 これ ま で の トラ ンス レー タ にお い て 、 そ の 操 作 を 行 っ た 後 は 、 操 作 前 の 状 態 を保 持 す る 機 能 が な く、 一 度 操 作 して しま うと元 の 状 態 に戻 す こ と が難 しい とい う状 態 で あ っ た 。 そ こで 、 タ ス クに 対 す る操 作 の 情 報 を履 歴 と して 保 存 し、 後 で 元 の 状 態 に 戻 した い と きに 簡 単 に戻 せ る よ うに す る。 5.1操 作 履 歴 を 保 存 す る 操 作 こ こで は タ ス クの 操 作 の 履 歴 を保 存 す る操 作 につ い て 説 明 す る。 ・タ ス ク の 融 合 2つ の タ ス ク を1つ に ま と め る操 作 。 先 行 後 続 関 係 に あ るタ ス ク や 、 並 列 関係 に あ る タス ク間 にお い て タス ク ・タ ス ク の 分 割 1つ の タ ス ク が 、 分 割 す る こ と で 並 列 可 能 に な る と 判 断 され る 場 合 、 そ の タ ス ク を2つ に 分 割 す る こ と が で き る 。 具 体 的 な 例 と し て 、 ル ー プ 文 を 二 つ に 分 割 す る ル ー プ デ ィ ス ト リ ビ ュ ー シ ョ ン が 挙 げ られ る。 ・タスク分 割⇒
図5タ ス ク 分 割⇒
・タ ス ク の複 製 タ ス ク を複 製 す る こ とに よ り複 製 元 タス クの 後続 エ ッ ジ を分 散 させ 、 後続 タ ス ク の 処理 開 始 時 間 を早 め る こ と が 可能 に な る場 合 が あ る。 ・タスク複製[〉
図6タ ス ク 複 製 しか し、 この操 作 を行 うこ とに よ り通信 が 増 えて ス ケ ジ ュ ール 長 が伸 び て しま うこ と もあ るた め 、 そ の よ うな 場 合 に は複 製 は行 わ な い もの とす る。 以 上 の よ うな操 作 が起 き た とき 、 そ の操 作 の 履歴 を取 る こ と とす る。 5.2操 作 履 歴 を保 存 す る 方法 操 作 履 歴 は 、操 作 が行 わ れ る ご とに順 番 に保 存 して いく。 今 回 も保 存 形 式 に ハ ッシ ュマ ップ を使 用 し、 キ ー に は 操 作 ナ ンバ ー 、値 に 操 作 情 報 を保 存 す る。 操 作 情 報 は 以 下 の 通 りで あ る。 1:対 象,操 作 名,結 果 2:対 象,操 作 名,結 果 RestoreList 3:13,division,810 1:10/division,67 操 作 情 報: 操 作 対 象 タスク 構 文 木 に対 す る操 作 先 行 操 作IDリスト 操 作 結 果 タスク 図7操 作 履 歴 に残 す 情 報 操 作 対 象 タ ス クに は 、 どの タス クに 対 して 操 作 を行 っ た か を保 存 す る。 こ こで は 先 に 述 べ た 並 列 化 情 報 統 合 手 法 で 用 い た 情 報 を利 用 す る。 構 文 木 に 対 す る操 作 は 、 タス クに 対 して どの よ うな 操 作 が 行 わ れ た か を保 持 す る。 先行 操 作 リス トは 、 そ の 操 作 を行 うの に必 要 な 事 前 操 作 のIDを 保 存 す る。 操 作 結 果 タ ス クに は 、 そ の タス ク操 作 に よ りどの よ う な タ ス ク が 作 られ た か の 情 報 を保 存 す る。 5.3操 作 履 歴 の 使 用 方 法 操 作 履歴 機 能 を使 用 す るに は 、 ま ず 操 作 履 歴 の 一 覧 を 出 力 す る。 そ の 後 、 や り直 した い 操 作 が 存 在 す る場 合 は そ のIDを 指 定 す る こ とに よ り、 そ の 操 作 か ら作 られ た タ ス クが そ の 後 の 操 作 で使 用 され て い るか を検 索 し、 存 在 した 場 合 は そ の 操 作 も含 め て 復 元 す るべ き操 作 を列 挙 す る。 r 1:対 象 操 作 名,結 果,先 行 2:対 象 操 作 名,結 果,先 行 3:対 象 操 作 名,結 果,先 行 r、 processhistoryList 1:67,fusion,10,0 2:4,division,1112,0 3:810,fusion,13,1
(◎
図8操 作 履 歴 出 力結 果 1 5 1 4 structstr{ ints; }; 図9操 作 復 元 順 序 6.評 価 intmainO{ inti,a,b,c,x,y,z∫ int*P; intarr[10]; StrUCtStreX; 一〉つ づ く } for(iニ0;i<10;i++){ a++; y++; a[i】=i+1; } Cニa+X; z=17; P=&z; ex.S=C; a=b+x; returnO; 図10サ ン プ ル コ ー ド *〈Va【1100>* 1105read-wrlte 1112read-wrlte *〈Task1104>* 1111尉rlte *〈Task1105>* 01100read 51112read *〈Task1106>* 51114read *〈Task1107>* 31109rvrIte *<Task1109>* 21107readpolnter *〈Task1111>* 11104read *<Task1112>* 01100wrlte 11105wrIte *<Task1114>* 11106read 図11依 存情 報 出 力 結 果 TaskID:4とTaskID:8に つ い て 見 て み る 。TaskID:4に お け る 変 数a(Val _ID:llO5)とTask_ID:8に お け る 変 数 a(Val _ID:1112)の 問 に は 逆 依 存 の 関 係 が あ る と言 え る 。 こ こ で 保 存 し た 結 果 を 出 力 し た 図 を 見 て み る と 、 二 つ の 変 数 に お い て 、 お 互 い に 依 存 が あ る相 手 と し て 認 識 で き て い る こ と が わ か る。 こ の よ うに 、 変 数 に 関 す る 依 存 情 報 は 保 存 で き て い る と言 え る。 6.1変 数 に 関 す る依 存 情 報 の 保 存 と解 析 変 数 問 の 依 存 情 報 が 正 し く保 存 され て い るか 確 認 して い く。 今 回使 用 す る コー ドは 次 の とお りで あ る。 こ の コ ー ドに 対 し て 、 タ ス ク や 変 数 に 解 析 の 際 に ユ ニ ー ク なIDを 持 た せ る。 こ の よ う にIDを 持 っ た コ ー ドを 解 析 し 、 そ の 結 果 を 出 力 し た も の が 次 の 図 に な る 。 7.結 論 今 回 の研 究 内容 と して は 、 並列 化 情報 統 合 手 法 の 改 良 と して 、依 存 情 報 や 並列 情 報 を保 存 して 自 由に 取 り出 す こ との で き る よ うな新 しい フォ ー マ ッ トを作 成 し、解 析 して得 た依 存 情 報 を 正 し く保 存 した り、 取 り出 す こ とが 可能 に な っ た。 ま た 、 タ ス クに 対 す る操 作 の 履歴 を保 存 し、後 に操 作 を復 元す る必 要 が 出 た場 合 に す ぐに 元 の 状 態 を た どれ る よ うに した。 今 後 の課 題 と して 、今 回 作 っ た 並 列化 情 報 統 合 手 法 を適 用 で き て い るの は 一 部 の 解 析器 の み とな って い るた め、 現 状 で 効 率 の 良 い解 析 が で き て い な い と考 え られ る部 分 に つ い て 、 今 回 提 案 した 手 法 を適 用 して い く こ とが 挙 げ られ る。 そ れ に よ り、 今 後 の トラ ンス レー タ にお け る解 析 が よ り良 い もの に な る と考 え られ る。 ま た 、 操 作 履歴 に 関 して は 現 状 で は 復 元 に必 要 な 操 作 の リス トを 出 力 す るの み とな っ て お り、 自動 で 復 元 ま で 行 うこ との で き る と こ ろま で は 実 装 で きて い な い 。 自動 修 復 機 能 を 実 装 す る とい うこ とが 今 後 の 課 題 で あ る と言 え る。