【手続補正書】
【提出日】平成18年2月6日(2006.2.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のプロセッサにおいてシングルプロセッサ向けＯＳ及びアプリケーションを動作させ、前記アプリケーションに対して複数のプロセッサによる並列処理を実現する並列処理システムであって、
前記各プロセッサに、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理手段を備えることを特徴とする並列処理システム。
【請求項２】
複数のプロセッサにおいてＯＳ及びアプリケーションを動作させ、前記アプリケーションに対して複数のプロセッサによる並列処理を実現する並列処理システムにおいて、
前記複数のプロセッサのうち、一のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を、他のプロセッサで新たな処理単位として制御し、
前記各プロセッサに、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理手段を備えることを特徴とする並列処理システム。
【請求項３】
前記複数のプロセッサを論理的に、第１のプロセッサ群と第２のプロセッサ群の少なくとも二つに分け、
前記第１のプロセッサ群のプロセッサに属する並列処理手段が、前記第２のプロセッサ群の少なくとも一のプロセッサに対して、
前記第１のプロセッサ群の処理単位に関する要求を発し、前記第２のプロセッサ群のプロセッサが前記要求に基づいて前記処理単位を新たな処理単位として制御することを特徴とする請求項２に記載の並列処理システム。
【請求項４】
送信側の処理単位が動作するプロセッサ上の前記通信代理手段が、前記受信側の処理単位のプロセッサ上におけるアドレス情報を保持し、前記受信側の処理単位の代理として前記送信側の処理単位からの転送データを受理することを特徴とする請求項１から請求項３の何れか1項に記載の並列処理システム。
【請求項５】
受信側の処理単位が動作するプロセッサのアドレス情報と、前記処理単位のプロセッサにおける経路情報を含む処理情報を、他のプロセッサ上の前記通信代理手段にマルチキャストにより転送し、
前記他のプロセッサ上の前記通信代理手段は、前記処理情報を受理することにより、前記受信側の処理単位の代理でデータを受信する状態となることを特徴とする請求項１から請求項４の何れか1項に記載の並列処理システム。
【請求項６】
送信側の処理単位が動作するプロセッサ上の前記通信代理手段が、
送信側の処理単位からの要求により、前記シングルプロセッサ向けＯＳから送信されるデータを、前記受信側の処理単位の代理で受信し、
受信したデータを、プロセッサ間で通信を行う所定のデータ転送手段を介して、前記受信側のプロセッサ上の前記通信代理手段に送信し、
前記データを受信した受信側のプロセッサ上の前記通信代理手段が、
受信側のプロセッサ上の前記シングルプロセッサ向けＯＳに対して、前記処理単位へのデータ転送を要求することを特徴とする請求項１から請求項５に記載の並列処理システム。
【請求項７】
前記通信代理手段は、
ソケットを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理することを特徴とする請求項１から請求項６の何れか1項に記載の並列処理システム。
【請求項８】
前記通信代理手段は、
メッセージキュー又はＦＩＦＯを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理することを特徴とする請求項１から請求項６の何れか1項に記載の並列処理システム。
【請求項９】
受信側の処理単位によるバインド処理関数の呼び出しをフックして、代理で前記シングルプロセッサ向けＯＳに対してバインド処理を要求するＯＳ代理手段を有し、
前記ＯＳ代理手段が、前記受信側の処理単位の経路情報を含むバインド処理情報を、ブロードキャストにより他のプロセッサの前記通信代理手段に通知することを特徴とする請求項７に記載の並列処理システム。
【請求項１０】
前記通信代理手段は、自プロセッサ内の処理単位と、自プロセッサ内のみで通信可能なプロセス間通信方式基づいて通信を行うことを特徴とする請求項７から請求項９に記載の並列処理システム。
【請求項１１】
自プロセッサ内のみで通信可能な前記プロセス間通信方式が、ＵＮＩＸ（登録商標）ドメインソケットであることを特徴とする請求項１０に記載の並列処理システム。
【請求項１２】
複数のプロセッサの並列実行を行うシステム上でＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、
前記複数のプロセッサを論理的に、第１のプロセッサ群と第２のプロセッサ群の少なくとも二つに分け、
前記第１のプロセッサ群のプロセッサに、
前記第１のプロセッサ群のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を抽出する機能と、
前記抽出された処理単位を前記第２のプロセッサ群のプロセッサ上で新たな処理単位として制御する機能と、
前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能とを実行させることを特徴とする並列処理プログラム。
【請求項１３】
複数のプロセッサの並列実行を行うシステム上でＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、
前記複数のプロセッサのうち、一のプロセッサに、
当該一のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を抽出する機能と、
前記抽出された処理単位を他のプロセッサ上で新たな処理単位として制御する機能と、
前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を実行させることを特徴とする並列処理プログラム。
【請求項１４】
複数のプロセッサの並列実行を行うシステム上でシングルプロセッサ向けＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、
前記各プロセッサに、
前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を実行させることを特徴とする並列処理プログラム。
【請求項１５】
前記通信代理機能は、
ソケットを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理する機能を有することを特徴とする請求項１２から請求項１４の何れか1項に記載の並列処理プログラム。
【請求項１６】
前記通信代理機能は、
メッセージキュー又はＦＩＦＯを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理することを特徴とする請求項１２から請求項１４の何れか1項に記載の並列処理プログラム。
【請求項１７】
受信側の処理単位によるバインド処理関数の呼び出しをフックして、代理で前記シングルプロセッサ向けＯＳに対してバインド処理を要求するＯＳ代理機能を有し、
前記ＯＳ代理機能が、前記受信側の処理単位の経路情報を含むバインド処理情報を、ブロードキャストにより他のプロセッサの前記通信代理機能に通知することを特徴とする請求項１５に記載の並列処理プログラム。
【請求項１８】
前記通信代理機能は、自プロセッサ内の処理単位と、自プロセッサ内のみで通信可能なプロセス間通信方式基づいて通信を行うことを特徴とする請求項１５から請求項１７に記載の並列処理プログラム。
【請求項１９】
自プロセッサ内のみで通信可能な前記プロセス間通信方式が、ＵＮＩＸ（登録商標）ドメインソケットであることを特徴とする請求項１８に記載の並列処理プログラム。
【請求項２０】
並列処理を行う少なくとも一つの情報処理装置であって、
自情報処理装置が、他の情報処理装置に対して、自情報処理装置の処理単位を前記他の情報処理装置で新たな処理単位として実行するための要求を発し、前記他の情報処理装置において前記新たな処理単位として制御し、かつ、
前記自情報処理装置は、前記他の情報処理装置との間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を備えることを特徴とする情報処理装置。
【請求項２１】
並列処理を行う少なくとも一つの情報処理装置であって、
自情報処理装置において、他の情報処理装置に有する処理単位を新たな処理単位として制御するための要求を、前記他の情報処理装置から受信し、
前記要求に基づき、前記新たな処理単位を実行し、かつ、
前記自情報処理装置は、前記他の情報処理装置との間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を備えることを情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】並列処理システム及び並列処理プログラム
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
上記目的を達成するため本発明の並列処理システムは、複数のプロセッサにおいてシングルプロセッサ向けＯＳ及びアプリケーションを動作させ、前記アプリケーションに対して複数のプロセッサによる並列処理を実現する並列処理システムであって、前記各プロセッサに、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理手段を備えることを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】変更
【補正の内容】
【００１８】
請求項２の本発明の複数のプロセッサにおいてＯＳ及びアプリケーションを動作させ、前記アプリケーションに対して複数のプロセッサによる並列処理を実現する並列処理システムにおいて、前記複数のプロセッサのうち、一のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を、他のプロセッサで新たな処理単位として制御し、前記各プロセッサに、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理手段を備えることを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】変更
【補正の内容】
【００１９】
請求項３の本発明の前記複数のプロセッサを論理的に、第１のプロセッサ群と第２のプロセッサ群の少なくとも二つに分け、前記第１のプロセッサ群のプロセッサに属する並列処理手段が、前記第２のプロセッサ群の少なくとも一のプロセッサに対して、前記第１のプロセッサ群の処理単位に関する要求を発し、前記第２のプロセッサ群のプロセッサが前記要求に基づいて前記処理単位を新たな処理単位として制御することを特徴とする。
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
請求項４の本発明の並列処理システムは、送信側の処理単位が動作するプロセッサ上の前記通信代理手段が、前記受信側の処理単位のプロセッサ上におけるアドレス情報を保持し、前記受信側の処理単位の代理として前記送信側の処理単位からの転送データを受理することを特徴とする。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】変更
【補正の内容】
【００２１】
請求項５の本発明の並列処理システムは、受信側の処理単位が動作するプロセッサのアドレス情報と、前記処理単位のプロセッサにおける経路情報を含む処理情報を、他のプロセッサ上の前記通信代理手段にマルチキャストにより転送し、前記他のプロセッサ上の前記通信代理手段は、前記処理情報を受理することにより、前記受信側の処理単位の代理でデータを受信する状態となることを特徴とする。
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】変更
【補正の内容】
【００２２】
請求項６の本発明の並列処理システムは、送信側の処理単位が動作するプロセッサ上の前記通信代理手段が、送信側の処理単位からの要求により、前記シングルプロセッサ向けＯＳから送信されるデータを、前記受信側の処理単位の代理で受信し、受信したデータを、プロセッサ間で通信を行う所定のデータ転送手段を介して、前記受信側のプロセッサ上の前記通信代理手段に送信し、前記データを受信した受信側のプロセッサ上の前記通信代理手段が、受信側のプロセッサ上の前記シングルプロセッサ向けＯＳに対して、前記処理単位へのデータ転送を要求することを特徴とする。
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２３
【補正方法】変更
【補正の内容】
【００２３】
請求項７の本発明の並列処理システムは、前記通信代理手段は、ソケットを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理することを特徴とする。
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２４
【補正方法】変更
【補正の内容】
【００２４】
請求項８の本発明の並列処理システムは、前記通信代理手段は、メッセージキュー又はＦＩＦＯを用いた通信方式により、プロセッサ間にまたがる処理単位どうしのデータ転送を代理で処理することを特徴とする。
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
請求項９の本発明の並列処理システムは、受信側の処理単位によるバインド処理関数の呼び出しをフックして、代理で前記シングルプロセッサ向けＯＳに対してバインド処理を要求するＯＳ代理手段を有し、前記ＯＳ代理手段が、前記受信側の処理単位の経路情報を含むバインド処理情報を、ブロードキャストにより他のプロセッサの前記通信代理手段に通知することを特徴とする。
【手続補正１２】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
請求項１０の本発明の並列処理システムは、前記通信代理手段は、自プロセッサ内の処理単位と、自プロセッサ内のみで通信可能なプロセス間通信方式基づいて通信を行うことを特徴とする。
【手続補正１３】
【補正対象書類名】明細書
【補正対象項目名】００２７
【補正方法】変更
【補正の内容】
【００２７】
請求項１１の本発明の並列処理システムは、自プロセッサ内のみで通信可能な前記プロセス間通信方式が、ＵＮＩＸ（登録商標）ドメインソケットであることを特徴とする。
【手続補正１４】
【補正対象書類名】明細書
【補正対象項目名】００２８
【補正方法】変更
【補正の内容】
【００２８】
請求項１２の本発明は、複数のプロセッサの並列実行を行うシステム上でＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、前記複数のプロセッサを論理的に、第１のプロセッサ群と第２のプロセッサ群の少なくとも二つに分け、前記第１のプロセッサ群のプロセッサに、前記第１のプロセッサ群のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を抽出する機能と、前記抽出された処理単位を前記第２のプロセッサ群のプロセッサ上で新たな処理単位として制御する機能と、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能とを実行させることを特徴とする。
【手続補正１５】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
請求項１３の本発明は、複数のプロセッサの並列実行を行うシステム上でＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、前記複数のプロセッサのうち、一のプロセッサに、当該一のプロセッサ上で動作する前記アプリケーション内で並列化が可能な処理単位を抽出する機能と、前記抽出された処理単位を他のプロセッサ上で新たな処理単位として制御する機能と、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を実行させることを特徴とする。
【手続補正１６】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
請求項１４の本発明は、複数のプロセッサの並列実行を行うシステム上でシングルプロセッサ向けＯＳ及びアプリケーションを動作させ、前記アプリケーションを前記複数のプロセッサにより並列処理を実現する並列処理プログラムであって、前記各プロセッサに、前記プロセッサ間にまたがる処理単位どうしのデータ転送を代理で行う通信代理機能を実行させることを特徴とする。
【手続補正１７】
【補正対象書類名】明細書
【補正対象項目名】００３５
【補正方法】変更
【補正の内容】
【００３５】
まず、本発明のプロセッサ間通信システムを適用するシングルプロセッサ向けＯＳによる並列処理システムについて説明する。以下で説明する並列処理システムでは、従来のシングルプロセッサ向けＯＳに対して改造を加えることなく、複数のプロセッサへの処理を依頼する機構や複数のプロセッサへのＯＳサービスの提供におけるクリティカルセクションの保護機構を付加することにより、マルチプロセッサ上での並列処理を実行する。