TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2025141260
公報種別公開特許公報(A)
公開日2025-09-29
出願番号2024041122
出願日2024-03-15
発明の名称アプリケーションコードの並列化・分散化処理システム
出願人株式会社日立製作所
代理人弁理士法人信友国際特許事務所
主分類G06F 9/50 20060101AFI20250919BHJP(計算;計数)
要約【課題】アプリケーションプログラムの実行の内容と環境に応じて適切に分散化して、処理時間短縮を図る。
【解決手段】アプリケーションプログラムのコードから、並列性のある部分を抽出して並列コードを生成する並列化部と、並列化部で生成された並列コード内で並列化した各プログラムに最適なクラスタの選定処理を呼び出すクラスタ選定処理呼出部と、並列化部で生成された並列コードの性能要件を計測する並列コードブロック性能要件定義部と、並列コードの実行対象となるクラスタで、並列コードを実行した場合の動的な性能を計測するクラスタ性能計測部と、性能要件定義部が計測した性能要件を満たすクラスタを、クラスタ性能計測部での計測結果に基づいて選定するクラスタ選定部と、を備える。
【選択図】図1
特許請求の範囲【請求項1】
アプリケーションプログラムのコードから、並列性のある部分を抽出して並列コードを生成する並列化部と、
前記並列化部で生成されたアプリケーションコード内で並列処理されるプログラムのコードである並列コードブロックに最適なクラスタの選定処理を呼び出すクラスタ選定処理呼出部と、
前記並列コードブロックの性能要件を計測する並列コードブロック性能要件定義部と、
前記並列コードの実行対象となるクラスタで、前記並列コードを実行した場合の動的な性能を計測するクラスタ性能計測部と、
前記性能要件定義部が計測した性能要件を満たすクラスタを、前記クラスタ性能計測部での計測結果に基づいて選定するクラスタ選定部と、を備える
アプリケーションコードの並列化・分散化処理システム。
続きを表示(約 1,200 文字)【請求項2】
前記クラスタとして、前記アプリケーションプログラムを実行するコンピュータに構成されるローカルクラスタと、前記コンピュータとデータ転送可能に接続された1つ又は複数のリモートクラスタとが用意され、
前記クラスタ性能計測部は、前記リモートクラスタの性能を計測する
請求項1に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項3】
前記クラスタ選定部がクラスタを選定する際の選択肢として、前記リモートクラスタを選定しない状況を含める
請求項2に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項4】
前記クラスタ性能計測部は、前記ローカルクラスタと前記リモートクラスタの動的な性能を計測する際に、前記並列コードのループ処理の1回分を実行した際の処理時間を計測し、計測した1回分の処理時間とループ数から、前記並列コードのプロセスの全体の処理時間を得る
請求項3に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項5】
さらに、前記クラスタ性能計測部は、前記リモートクラスタとの間のデータ転送速度と、転送するデータ量からレイテンシを算出し、
前記クラスタ選定部は、算出したレイテンシとプロセスの全体の処理時間の合計が最短なクラスタを選定する
請求項4に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項6】
前記ローカルクラスタと前記リモートクラスタに前記並列コードで実行させるデータは、予め用意されたサンプルデータとしての分析データである
請求項5に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項7】
クラスタにおいて実行する並列コードブロックの実行時のワークフローのログやメトリクスを取得して、入力データのサイズ変更時又はクラスタ環境の変更時に、前記クラスタ選定部が適切なクラスタの再選定を行う
請求項2に記載のアプリケーションコードの並列化・分散化処理システム。
【請求項8】
前記並列コードブロック性能要件定義部が計測した前記並列コードの性能要件を記憶する並列コードブロックの性能要件データベースと、
前記クラスタ性能計測部が計測した前記リモートクラスタの性能を記憶するリモートクラスタ性能データベースと、を備え、
前記クラスタ選定部が適切なクラスタの再選定を行う際に、前記並列コードの中身に変更がなく、入力データのサイズが過去にクラスタ選定したときと同じであり、ループ回数が過去にクラスタを選定したときと同じである場合に、前記並列コードブロックの性能要件データベースが記憶した性能要件から再選定を行う
請求項7に記載のアプリケーションコードの並列化・分散化処理システム。

発明の詳細な説明【技術分野】
【0001】
本発明は、アプリケーションコードの並列化・分散化処理システムに関する。
続きを表示(約 2,800 文字)【背景技術】
【0002】
既存のアプリケーションコードを部分的に書き換えて、分散システムでプログラムを分散・並列で処理することが従来から行われている。例えば、Rayと称される分散フレームワークは、分散・並列でのプログラムの実行をコード上で指示するAPIやライブラリ、ならびにプログラムの実行基盤となるRayクラスタを構築する機能、等を提供していることが知られている。Rayクラスタは単数のノードから構成することも複数のノードから構成することができ、Rayクラスタ上にプログラムを分散し並列実行することで処理実行の高速化を図ることができる。
【0003】
特許文献1には、OpenACCやCUDAをベースに、アプリケーション処理をGPUへ自動的にオフロードし、プログラム内の並列可能な個所を並列化して、ユーザ満足度評価に関する目的関数が最小となる並列コードブロック(プログラム内で並列可能な個所を並列化したコードのまとまり)の配置を計算ならびに配置する技術が記載されている。
【先行技術文献】
【特許文献】
【0004】
国際公開第2023/228369号
【発明の概要】
【発明が解決しようとする課題】
【0005】
Rayを用いてアプリケーションプログラムを分散・並列化する場合、全プログラムをまとめて分散・並列に実行するわけではなく、アプリケーションコードでRayのAPIやライブラリを用いて記述したプログラムを分散・並列に実行する。そのため、アプリケーションコード内のどの箇所が分散・並列に実行できるかは、アプリケーションコードを見て探す必要がある。また、アプリケーションプログラムを実行しているノードでRayクラスタを1つと、アプリケーションプログラムを実行しているノードと異なるノードで別のRayクラスタを1つ以上と、構成する場合、アプリケーションプログラムを実行しているノードと異なるノードで構成するRayクラスタへプログラムを分散して実行時間の短縮化が見られるかは、実際のプログラムや環境に適用して検証する必要がある。
ここで、例えば特許文献1に記載された技術は、目的関数に基づいてオフロードする配置のみを判断する技術であり、プログラムの動的な観測に基づいた分散の要否の判断は行われない。つまり、特許文献1に記載の技術は、プログラムの実行の内容と環境に応じて分散の要否を判断するものではないという問題がある。
【0006】
本発明は、これらの点に鑑み、アプリケーションプログラムの実行の内容と環境に応じて適切に分散化して、高速化を図ることができるアプリケーションコードの並列化・分散化処理システムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するために、例えば請求の範囲に記載の構成を採用する。
本願は、上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、以下の通りである。
アプリケーションコードの並列化・分散化処理システムとして、アプリケーションプログラムのコードから、プログラム並列性のある部分を並列処理されるコードへ書き換える並列化部と、並列化部で生成されたアプリケーションコード内で並列処理されるプログラムのコード(以降、並列コードブロック)に最適なクラスタの選定処理を呼び出すクラスタ選定処理呼出部と、並列コードブロックの性能要件を定義する並列コードブロック性能要件定義部と、計算リソースであるクラスタで、並列コードブロックを実行した場合の動的な性能を計測するクラスタ性能計測部と、性能要件定義部が定義した性能要件を満たすクラスタを、クラスタ性能計測部での計測結果に基づいて選定するクラスタ選定部と、を備える。
【発明の効果】
【0008】
本発明によれば、アプリケーションコードの分析によりプログラムの一部を並列化するコードを自動生成できると共に、並列化するプログラムの内容と、事前に用意したクラスタの性能に基づいて、動的にプログラムの分散の要否を決定する。これにより、アプリケーションプログラムを適切なクラスタで実行させることができるので、アプリケーションプログラムの実行時間を短縮することができる。
上記以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0009】
本発明の第1の実施の形態例によるアプリケーションコードの並列化・分散化処理システムの例を構成図である。
本発明の第1の実施の形態例によるリモートクラスタのハードウェア構成例を示す図である。
本発明の第1の実施の形態例によるコンピュータのハードウェア構成例を示す図である。
本発明の第1の実施の形態例によるアプリケーションコードの並列化・分散化処理システムの構成、及び処理の概要の例を示す図である。
本発明の第1の実施の形態例による並列性を有するプログラムのアプリケーションコードの例を示す図である。
本発明の第1の実施の形態例による並列化済みのアプリケーションコードの例を示す図である。
本発明の第1の実施の形態例による分析データの例を示す図である。
本発明の第1の実施の形態例によるアプリケーションコードの並列化処理の例を示すフローチャートである。
本発明の第1の実施の形態例によるクラスタ選定処理の例を示すフローチャートである。
本発明の第1の実施の形態例によるリモートクラスタでの処理時間の予測値算出処理の例を示すフローチャートである。
本発明の第1の実施の形態例による並列コードブロックデータベースの例を示す図である。
本発明の第2の実施の形態例によるアプリケーションコードの並列化・分散化処理システムの例を構成図である。
本発明の第2の実施の形態例によるクラスタ選定処理の例を示す図である。
本発明の第2の実施の形態例によるクラスタ選定処理の例を示すフローチャートである。
本発明の第2の実施の形態例によるリモートクラスタの性能データベースの例を示す図である。
本発明の第2の実施の形態例による並列コードブロックの性能要件データベースの例を示す図である。
【発明を実施するための形態】
【0010】
<第1の実施の形態例>
以下、本発明の第1の実施の形態例によるアプリケーションコードの並列化・分散化処理システムを、図1~図11を参照して説明する。
(【0011】以降は省略されています)

この特許をJ-PlatPat(特許庁公式サイト)で参照する

関連特許

株式会社日立製作所
鉄道車両
12日前
株式会社日立製作所
形状制御システム
6日前
株式会社日立製作所
ガス濃度測定装置
12日前
株式会社日立製作所
計画装置および計画方法
18日前
株式会社日立製作所
ソフトウェア生成システム
今日
株式会社日立製作所
管理システムおよび管理方法
8日前
株式会社日立製作所
訓練システムおよび訓練方法
8日前
株式会社日立製作所
費用対効果算出方法および装置
6日前
株式会社日立製作所
情報処理装置及び情報処理方法
4日前
株式会社日立製作所
情報処理装置及び情報処理方法
8日前
株式会社日立製作所
回転電機および電動機システム
4日前
株式会社日立製作所
電力変換器およびインバータ装置
8日前
株式会社日立製作所
情報処理システム、及び予測方法
5日前
株式会社日立製作所
Webページ更新管理装置及び方法
12日前
株式会社日立製作所
音声分析システム及び音声分析方法
12日前
株式会社日立製作所
昇降機システム及び昇降機制御方法
8日前
株式会社日立製作所
計算機システム及びデータ検索方法
8日前
株式会社日立製作所
物流計画システム及び物流計画方法
6日前
株式会社日立製作所
通貨管理システム、及び通貨管理方法
12日前
株式会社日立製作所
データ出力装置およびデータ出力方法
8日前
株式会社日立製作所
半導体装置および半導体装置の駆動方法
今日
株式会社日立製作所
設計図書のチェックシステムおよび方法
4日前
株式会社日立製作所
計算機システム及びタスクの割当制御方法
18日前
株式会社日立製作所
支援装置、支援方法、及び支援プログラム
18日前
株式会社日立製作所
仮想空間生成装置および仮想空間生成方法
4日前
株式会社日立製作所
統合装置、統合方法、および統合プログラム
8日前
株式会社日立製作所
サービス管理システム及びサービス管理方法
18日前
株式会社日立製作所
電力運用管理システム及び電力運用管理方法
18日前
株式会社日立製作所
ビル設備制御システム及びビル設備制御方法
8日前
株式会社日立製作所
作業認識支援システム及び作業認識支援方法
8日前
株式会社日立製作所
在室人数計測システムおよび在室人数計測方法
8日前
株式会社日立製作所
磁場発生装置およびそれを用いた磁気冷凍装置
8日前
株式会社日立製作所
仮想化システム及び仮想化システムの制御方法
6日前
株式会社日立製作所
電力需給調整システムおよび電力需給調整方法
18日前
株式会社日立製作所
制御設計支援方法、および、制御設計支援装置
今日
株式会社日立製作所
ドキュメント生成装置、ドキュメント生成方法
8日前
続きを見る