(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-24
(45)【発行日】2024-10-02
(54)【発明の名称】情報処理方法
(51)【国際特許分類】
G06F 13/14 20060101AFI20240925BHJP
【FI】
G06F13/14 310F
G06F13/14 330B
(21)【出願番号】P 2020184871
(22)【出願日】2020-11-05
【審査請求日】2023-10-04
(73)【特許権者】
【識別番号】000232092
【氏名又は名称】NECソリューションイノベータ株式会社
(74)【代理人】
【識別番号】100124811
【氏名又は名称】馬場 資博
(74)【代理人】
【識別番号】100088959
【氏名又は名称】境 廣巳
(74)【代理人】
【識別番号】100097157
【氏名又は名称】桂木 雄二
(74)【代理人】
【識別番号】100187724
【氏名又は名称】唐鎌 睦
(72)【発明者】
【氏名】猪熊 俊夫
【審査官】豊田 真弓
(56)【参考文献】
【文献】特開2012-212295(JP,A)
【文献】特開2020-102218(JP,A)
【文献】特開2000-029640(JP,A)
【文献】特開2016-122300(JP,A)
【文献】特開2004-112585(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/14
(57)【特許請求の範囲】
【請求項1】
情報処理装置が、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項2】
請求項1に記載の情報処理方法であって、
前記情報処理装置が、
複数のディスク装置のうちいずれかのディスク装置宛に前記読み書き処理命令を送信する際に、前記ディスク装置に対応して予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項3】
請求項1又は2に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の内容に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項4】
請求項3に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令に含まれるアドレス情報に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項5】
請求項3に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の種類及び当該読み書き処理命令に含まれるアドレス情報に対応して、使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項6】
請求項1乃至5のいずれかに記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の内容に応じて予め設定された前記ポートの使用状況を取得し、当該使用状況と前記読み書き処理命令の内容とに応じて、使用する前記ポートを変更して、前記読み書き処理命令を前記演算処理装置に対して送信する、
情報処理方法。
【請求項7】
請求項1乃至6のいずれかに記載の情報処理方法であって、
前記演算処理装置が、前記情報処理装置から受け付けた前記読み書き処理命令に含まれるアドレス情報に対応して、ディスク装置に対する処理とは異なる予め設定された演算処理を実行する、
情報処理方法。
【請求項8】
複数のポートを介して接続された情報処理装置と演算処理装置とを備え、
前記情報処理装置は、演算処理装置に対して、ディスク装置用の読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する送信手段を備え、
前記演算処理装置は、前記情報処理装置から受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する読み書き処理とは異なる演算処理を実行する演算処理手段を備えた、
情報処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理方法、情報処理装置、プログラムに関する。
【背景技術】
【0002】
近年、顔認証処理技術の発達により、様々な場所に顔認証システムが導入されている。例えば、顔認証システムは、特許文献1に記載されているように、空港や企業のゲートを通過する人物を認証するウォークスルー顔認証システムとして利用されたり、街中の防犯カメラで撮影した人物を認証する防犯システムで利用されるなど、様々な場所に設置されて利用される。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
そして、上述したような顔認証システムでは、次々と撮影される人物の顔認証を順次行う必要があるため、大容量のデータを連続して処理することとなる。このため、顔認証処理を管理するソフトウェアと特徴量の照合処理などの演算処理を行う演算処理装置との間においてデータ転送効率の向上が求められる。また、顔認証処理に限らず、あらゆる演算処理においても、システムを管理するソフトウェアと演算処理装置との間におけるデータ転送効率の向上が求められる。
【0005】
このため、本発明の目的は、上述した課題である、演算処理装置に対するデータ転送効率の向上を図ることにある。
【課題を解決するための手段】
【0006】
本発明の一形態である情報処理方法は、
情報処理装置が、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する、
という構成をとる。
【0007】
また、本発明の一形態である情報処理装置は、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する送信手段、
を備えた、
という構成をとる。
【0008】
また、本発明の一形態である情報処理システムは、
複数のポートを介して接続された情報処理装置と演算処理装置とを備え、
前記情報処理装置は、演算処理装置に対して、ディスク装置用の読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する送信手段を備え、
前記演算処理装置は、前記情報処理装置から受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する読み書き処理とは異なる演算処理を実行する演算処理手段を備えた、
という構成をとる。
【0009】
また、本発明の一形態であるプログラムは、
情報処理装置に、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する読み書き処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する、
処理を実行させる、
という構成をとる。
【0010】
また、本発明の一形態である演算処理方法は、
演算処理装置が、
ディスク装置用の読み書き処理命令を受け付け、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する、
という構成をとる。
【0011】
また、本発明の一形態である演算処理装置は、
ディスク装置用の読み書き処理命令を受け付ける受付手段と、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する演算手段と、
を備えた、
という構成をとる。
【0012】
また、本発明の一形態であるプログラムは、
演算処理装置に、
ディスク装置用の読み書き処理命令を受け付け、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する、
処理を実行させる、
という構成をとる。
【発明の効果】
【0013】
本発明は、以上のように構成されることにより、演算処理装置に対するデータ転送効率の向上を図ることができる。
【図面の簡単な説明】
【0014】
【
図1】本発明の実施形態1における情報処理システムの全体構成と、当該情報処理システムに含まれるサーバの構成と、を示すブロック図である。
【
図2】
図1に開示した演算処理装置の構成を示すブロック図である。
【
図3】
図1に開示した情報処理システムの全体構成の概略を示す図である。
【
図4】
図1に開示したサーバにて用いられるデータの一例を示す図である。
【
図5】
図1に開示した演算処理装置が受け付ける命令の内容の一例を示す図である。
【
図6】
図1に開示したサーバと演算処理装置とによる処理の一例を示す図である。
【
図7】
図1に開示したサーバの動作を示すフローチャートである。
【
図8】
図1に開示したサーバからの命令の流れの一例を示す図である。
【
図9】
図1に開示したサーバからの命令の流れの一例を示す図である。
【
図10】本発明の実施形態2における情報処理装置のハードウェア構成を示すブロック図である。
【
図11】本発明の実施形態2における情報処理装置の構成を示すブロック図である。
【
図12】本発明の実施形態2における情報処理装置の動作を示すフローチャートである。
【
図13】本発明の実施形態2における演算処理装置のハードウェア構成を示すブロック図である。
【
図14】本発明の実施形態2における演算処理装置の構成を示すブロック図である。
【
図15】本発明の実施形態2における演算処理装置の動作を示すフローチャートである。
【発明を実施するための形態】
【0015】
<実施形態1>
本発明の第1の実施形態を、
図1乃至
図9を参照して説明する。
図1乃至
図5は、情報処理システムの構成を説明するための図であり、
図6乃至
図9は、情報処理システムの処理動作を説明するための図である。
【0016】
[構成]
本発明における情報処理システムは、
図1に示すように、サーバ1と演算処理装置2とを備えている。そして、情報処理システムは、例えば、顔認証処理を行うためのものであり、サーバ1に装備された管理ソフト11にて顔認証処理の対象となるデータを演算処理装置2に転送し、演算処理装置2にて顔認証処理を実行して、サーバ1の結果を返却する、という処理を実行するよう構成されている。但し、情報処理システムは、必ずしも顔認証処理を行うためのものであることに限定されず、指紋照合や画像解析などのいかなる処理を実行するものであってもよい。そして、本発明における情報処理システムは、サーバ1から演算処理装置2に対して演算処理を要求する命令を送信するシステムであれば、いかなるシステムにも適用可能である。以下、情報処理システムの構成について詳述する。
【0017】
上記サーバ1(情報処理装置)は、演算装置と記憶装置とを備えた1台又は複数台の情報処理装置にて構成される。そして、サーバ1は、
図1に示すように、演算処理装置2と接続された2つのポート15a,15bを備えており、これにより、サーバ1と演算処理装置2との間にデータ転送用のパスが2つ形成されていることとなる。また、サーバ1は、演算装置がプログラムを実行することにより実現された、管理ソフト11、パス冗長化部12、デバイスファイル13a,13b,13c,13d、ドライバ14a,14bを備える。
【0018】
上記管理ソフト11(送信手段)は、情報処理システムで実行される顔認証処理を管理する機能を有する。例えば、管理ソフト11は、顔認証処理の対象となる登録データと照合データとを記憶しており、これらのデータを演算処理装置2に転送して顔認証処理を依頼し、演算処理装置2から顔認証処理の結果を受け取り、結果に応じた各種制御を行う。
【0019】
そして、本実施形態では、管理ソフト11は、ディスク装置用の読み書き処理命令を用いて、演算処理装置2に対する処理命令を行う。つまり、管理ソフト11は、
図3に示すように、ポート15a,15bを介して接続された演算処理装置2を仮想的なディスク装置として認識しており、一般的にディスク装置に対するI/O命令として使用される書き込み命令(Write)と読み込み命令(Read)とを演算処理装置2に対して送信する。
【0020】
ここで、本実施形態では、サーバ1は、演算処理装置2を仮想的な4つのディスク装置として認識しており、4つのディスク装置にそれぞれ対応した4つのデバイスファイル13a,13b,13c,13dを備えている。そして、符号13a,13bに示す2つのデバイスファイルは、ドライバ14aを介して符号15aに示す1つのポートを共有しており、かかるポート15aと演算処理装置2に装備された符号25aで示すポートとの間に形成されるパスP1を通じて演算処理装置2に接続されている。また、符号13c,13dに示す他の2つのデバイスファイルは、ドライバ14bを介して符号15bに示す1つのポートを共有しており、かかるポート15bと演算処理装置2に装備された符号25bで示すポートとの間に形成されるパスP2を通じて演算処理装置2に接続されている。このように、本実施形態では、サーバ1と演算処理装置2とは、2つのパスP1,P2を通じてデータ転送可能なよう構成されている。但し、サーバ1と演算処理装置2とは、さらに多くのポートを備えて、さらに多くのパスを通じて、データ転送可能なよう構成されていてもよい。
【0021】
そして、管理ソフト11は、上述したように、演算処理装置2に対する処理命令として、「ディスク装置(宛先)」、「I/O種別」、「アドレス」、「転送データ」を含むディスク装置用のI/O命令を送信する。例えば、管理ソフト11は、
図5に示す「I/O種別」と「アドレス」の組み合わせに示すように、「Read,0x1000」という命令や、「Write,0x5000,(転送データ)」といった命令を、仮想的な各ディスク装置を宛先として演算処理装置2に送信する。但し、管理ソフト11が演算処理装置2に送信するディスク装置用のI/O命令の実際の内容は、一般的なディスク装置に対する処理内容とは異なる演算処理の内容を意味している。つまり、管理ソフト11が送信するディスク装置用のI/O命令は、受け取った演算処理装置2では、指定されたアドレスにデータを書き込む処理や指定されたアドレスからデータを読み込む処理の命令といったディスク装置用のI/O命令として認識されず、「I/O種別」と「アドレス」とに対応して予め設定された処理内容の命令として認識されることとなる。なお、I/O命令の実際の処理内容については後述する。
【0022】
上記パス冗長化部12(送信手段)は、管理ソフト11からのI/O命令の内容に応じて、使用するポート15a,15bを設定し、かかるポート15a,15bを使用して演算処理装置2にI/O命令を送信する。このとき、パス冗長化部12には、予め
図4(1)に示すようなパス検索テーブルが格納されており、かかるテーブルに従ってI/O命令を送信する際に使用するポート15a,15bを初期ポートとして設定する。具体的に、
図4(1)に示すパス検索テーブルは、管理ソフト11にて認識される仮想的なディスク装置であるデバイスと、ポート15a,15bと、の対応付けで構成されている。この例では、ディスク装置「disk1」とディスク装置「disk2」とにそれぞれポート「1」(符号15aに示すポート)が対応付けられており、ディスク装置「disk3」とディスク装置「disk4」とにそれぞれポート「2」(符号15bに示すポート)が対応付けられている。このため、パス冗長化部12は、まず管理ソフト11からのI/O命令の宛先を調べ、かかる宛先にパス検索テーブルにて対応付けられているいずれかのポートを、初期ポートとして設定する。
【0023】
また、パス冗長化部12は、I/O命令の内容に応じて、上述したように設定した使用する初期ポートを変更することも行う。このとき、パス冗長化部12には、予め
図4(3)に示す命令判別テーブルが格納されており、かかるにテーブルに従ってI/O命令を送信する際に使用される初期ポートを変更可能となる。具体的に、
図4(3)に示す命令判別テーブルは、I/O命令に含まれる「I/O種別」及び「アドレス」の組み合わせに対応して、「パス迂回可否」が設定されており、「パス迂回可否」が「可」の場合には、パス検索テーブルで設定された初期ポートを使用せず、他のポートに変更してよいこととなる。この例では、I/O種別「Write」及びアドレス「0x3000」に対応するI/O命令は、パス検索テーブルで設定された初期ポートを変更して、他のポートを使用して送信することができるよう設定されている。
【0024】
但し、パス冗長化部12は、I/O命令を送信する際に使用する初期ポートを実際に変更するか否かは、各ポート15a,15bの使用状況に基づいて判断する。このため、パス冗長化部12は、各ポート15a,15bの使用状況を表すBusy率を常に取得して、
図4(2)に示すように格納しておく。そして、パス冗長化部12は、送信するI/O命令について設定された初期ポートのBusy率が予め設定された第一閾値を超えている場合であって、他のポートのBusy率が予め設定された第二閾値を超えておらず空きがあると判断した場合には、I/O命令を演算処理装置2に送信する際に、初期ポートに替えて、他のポートを使用するよう変更する。例えば、パス冗長化部12は、初期ポートのBusy率が80%(第一閾値)を超えている場合であって、他のポートのBusy率が50%(第二閾値)以下である場合には、使用するポートを初期ポートから他のポートに変更する。なお、パス冗長化部12は、初期ポートのBusy率が第一閾値を超えている場合には、他のポートのBusy率がいかなる状況であっても、当該他のポートに変更してもよい。また、パス冗長化部12は、ポートのBusy率を調べることに限定されず、ポート毎の単位時間当たりのデータ転送数やデータ転送量などからポートの使用状況を調べ、かかる使用状況に応じて初期ポートを変更するか否かを判断してもよい。
【0025】
ここで、上述した
図4(3)に示す命令判別テーブルでは、I/O命令に含まれる「I/O種別」及び「アドレス」に対応して「パス迂回可否」が設定されている場合を例示したが、「I/O種別」に対応して「パス迂回可否」が設定されていたり、「アドレス」に対応して「パス迂回可否」が設定されていてもよい。さらには、命令判別テーブルでは、I/O命令に含まれる「転送データ」の容量などI/O命令に含まれる他の内容に対応して「パス迂回可否」が設定されていてもよい。
【0026】
次に、上記演算処理装置2について説明する。演算処理装置2は、演算装置と記憶装置とを備えた1台又は複数台の情報処理装置にて構成される。そして、演算処理装置2は、
図1に示すように、サーバ1と接続された2つのポート25a,25bを備えており、これにより、サーバ1と演算処理装置2との間にデータ転送用のパスが2つ形成されていることとなる。また、演算処理装置2は、
図2に示すように、I/Oコントローラ21、管理用CPU22、メモリ23、フラッシュメモリ24、演算用CPU26a,26b,26c,26d、これら演算用CPUにそれぞれ接続されたメモリ27a,27b,27c,27d、を備えている。そして、演算処理装置は、I/Oコントローラ21、管理用CPU22及び演算用CPU23a等がそれぞれプログラムを実行することで、以下の機能を実現できる。
【0027】
上記I/Oコントローラ21(受付手段)は、サーバ1に対するI/Oを送受信する。例えば、I/Oコントローラ21は、サーバ1からI/O命令を受け付けると、管理用CPU22に割り込みを上げる。
【0028】
上記管理用CPU(Central Processing Unit)22(演算手段)は、フラッシュメモリ24に記憶されているファームウェアを読み込み、当該ファームウェアを起動する。また、管理用CPU22は、フラッシュメモリ24に記憶されている演算用CPU23a等のファームウェアを読み込み、当該演算用CPU23a等を起動する。そして、管理用CPU22は、ファームウェアの機能により、受け付けたI/O命令の内容に対応して予め設定された演算処理を実行する。このとき、管理用CPU22は、単独でI/O命令の内容に対応した演算処理を実行したり、I/Oコントローラ21や演算用CPU26a,26b,26c,26d(演算手段、演算部)と協働してI/O命令の内容に対応した演算処理を実行する。なお、演算用CPU26a,26b,26c,26dは、
図2の例では4つ搭載されているが、その数は限定されず、いかなる数が搭載されていてもよく、また、1つの演算用CPU26a等は複数のコアを有していてもよい。また、演算用CPU26a,26b,26c,26dには、それぞれメモリ27a,27b,27c,27dが接続されており、演算用CPU26a,26b,26c,26dはそれぞれに接続されたメモリ27a,27b,27c,27dに処理対象となるデータを格納して演算処理を実行する。
【0029】
そして、管理用CPU22には、ファームウェアの機能により、予めI/O命令に含まれる「I/O種別」及び「アドレス」に対応する演算処理の内容が設定されている。ここで、
図5に、I/O命令の内容に対応して設定された演算処理の内容の一例を示す。
図5の例では、まず、I/O種別「Read」及びアドレス「0x1000」のI/O命令に対応して、「演算処理装置の状態を返却する」という処理内容が設定されている。また、I/O種別「Write」及びアドレス「0x2000」のI/O命令に対応して、「演算処理内容を予め決められた演算処理セットの中から設定する」という処理内容が設定されている。また、I/O種別「Write」及びアドレス「0x3000」のI/O命令に対応して、「演算時に使用するパラメータを設定する」という処理内容が設定されている。また、I/O種別「Write」及びアドレス「0x4000」のI/O命令に対応して、「共通の演算データを転送する」という処理内容が設定されている。また、I/O種別「Write」及びアドレス「0x4000」のI/O命令に対応して、「個別の演算データを転送する」という処理内容が設定されている。また、I/O種別「Read」及びアドレス「0x6000」のI/O命令に対応して、「演算結果を取得する」という処理内容が設定されている。また、I/O種別「Write」及びアドレス「0x7000」のI/O命令に対応して、「演算処理装置の状態をリセットすうr」という処理内容が設定されている。。また、I/O種別「Read」及びアドレス「0x8000」のI/O命令に対応して、「演算処理装置のログを取得する」という処理内容が設定されている。このように、演算処理装置2は、I/O命令に含まれる「I/O種別」及び「アドレス」に対応して、ディスク装置に対する処理とは異なる演算処理を実行するよう設定されている。
【0030】
なお、
図5に示すI/O命令に対応する演算処理の内容は一例であり、他の演算処理が演算処理装置2にて実行されるよう設定されていてもよい。また、上記では、I/O命令に含まれる「I/O種別」及び「アドレス」に対応して演算処理の内容が設定されている場合を例示したが、「I/O種別」に対応して演算処理の内容が設定されていたり、「アドレス」に対応して演算処理の内容が設定されていてもよい。さらには、I/O命令に含まれる他のデータの内容に対応して演算処理の内容が設定されていてもよい。
【0031】
ここで、演算処理装置2の管理CPU22が、管理ソフト11から、順次I/O命令を受け取ったときに実行される一連の演算処理の一例を、
図6を参照して説明する。
・手順1:サーバ1の管理ソフト11が、I/O種別「Read」及びアドレス「0x1000」のI/O命令を送信することで、演算処理装置2の状態を確認するよう命令する。これにより、演算処理装置2の管理用CPU22が、演算処理装置の状態をサーバ1に返却する、といった演算処理を実行する。
・手順2:サーバ1の管理ソフト11が、I/O種別「Write」及びアドレス「0x2000」のI/O命令を送信することで、演算処理装置2で実行する演算処理を特定する番号を設定するよう命令する。これにより、演算処理装置2の管理用CPU22が、演算用CPU26a等に対して指示する際に使用する演算処理を特定する番号を記憶する、といった演算処理を実行する。なお、かかる番号はI/O命令に含まれているデータである。一例として、管理用CPU22が、後述するように、共通データと個別データとの認証を行う演算処理を特定する番号を記憶する。
・手順3:サーバ1の管理ソフト11が、I/O種別「Write」及びアドレス「0x3000」のI/O命令を送信することで、演算処理装置2で演算処理を実行する際に使用するパラメータを設定するよう命令する。これにより、演算処理装置2の管理用CPU22が、演算用CPU26a等に対して指示する際に使用するパラメータを記憶する、といった演算処理を実行する。なお、かかるパラメータは、I/O命令に含まれてデータである。
【0032】
・手順4:サーバ1の管理ソフト11が、I/O種別「Write」及びアドレス「0x4000」のI/O命令を送信することで、各演算処理で使用される共通の演算データを転送するよう命令する。これにより、演算処理装置2の管理用CPU22が、I/Oコントローラ21に対してI/O命令に含まれる演算データを全ての演算用CPU26a等に転送するよう指示し、I/Oコントローラ21がI/Oデータに含まれる演算データを全ての演算用CPU26a等に転送する、といった演算処理を実行する。これにより、全ての演算用CPU26a等にそれぞれ接続された全てのメモリ27a等に共通の演算データである共通データが格納されることとなる。
・手順5:サーバ1の管理ソフト11が、I/O種別「Write」及びアドレス「0x5000」のI/O命令を送信することで、個別の演算データを転送するよう命令する。これにより、演算処理装置2の管理用CPU22が、空いている演算用CPU26a等のコアをI/Oコントローラ21に対して指示し、I/Oコントローラ21はI/Oデータに含まれる演算データを該当する演算用CPU26a等に転送する、といった演算処理を実行する。これにより、1つの演算用CPU26a等に接続されたメモリ27a等に個別の演算データである個別データが格納されることとなる。
・手順6:上述したように、演算処理装置2の演算用CPU26a等に個別データの転送が完了すると、管理用CPU22が演算用CPU26a等に対して、演算開始指示と共に、演算処理の番号とパラメータを通知する、といった演算処理を実行する。つまり、管理用CPU22は、手順2で記憶した演算処理の番号と、手順3で記憶したパラメータと、を演算用CPU26a等に通知する。これにより、演算用CPU26a等は、メモリ27a等に格納している共通データと個別データとを用いて、通知された番号で特定された演算処理を、通知されたパラメータを用いて実行する。例えば、演算用CPU26a等は、共通データと個別データとの認証処理を行う。
・手順7:上述した演算処理の実行が完了すると、演算用CPU26a等が管理用CPU22に対して演算結果を返却する。そして、全ての演算用CPU26a等に割り振った演算が完了すると、管理用CPU22が演算結果を用意する、といった演算処理を実行する。なお、上述した手順6,7は、手順5で説明したI/O命令に対応する一連の演算処理として実行される。
・手順8:サーバ1の管理ソフト11が、I/O種別「Read」及びアドレス「0x6000」のI/O命令を送信することで、演算処理装置2による演算結果を読み込むよう命令する。これにより、演算処理装置2の管理用CPU22が、用意した演算結果をサーバ1に返却する、といった演算処理を実行する。なお、管理用CPU22は、演算用CPU23a等による演算処理が完了していない場合は、その旨を管理ソフト11に通知し、管理ソフト11は、演算処理が完了していない場合には、時間を空けてからI/O指令を再送する。
【0033】
[動作]
次に、上述した情報処理システムの動作を、
図7のフローチャートと
図8,9のI/O命令の流れを参照して説明する。まず、主に
図7のフローチャートを参照して、サーバ1が演算処理装置2に対してI/O命令を送信するときの動作を説明する。
【0034】
まず、サーバ1の管理ソフト11が演算処理装置2に対してディスク装置用のI/O命令を発行する。このとき、管理ソフト11は、演算処理装置2を複数の仮想的なディスク装置として認識しているため、1つのディスク装置を宛先として、「I/O種別」と「アドレス」とが含まれるI/O命令を発行する。すると、パス冗長化部12がI/O命令を取得して(ステップS1)、かかるI/O命令が演算処理装置2に送信される際に使用されるパスを検索する(ステップS2)。このとき、パス冗長化部12は、I/O命令の宛先となるディスク装置に対応付けられたポートを、
図4(1)に示すようなパス検索テーブルから検索する。これにより、パス冗長化部12は、取得したI/O命令を演算処理装置2に送信する際に使用する1つのポート15a,15bを、初期ポートとして設定する。つまり、この時点では、I/O命令は、設定された初期ポートを通過するパスを経由して演算処理装置2に送信されるよう設定される。
【0035】
続いて、パス冗長化部12は、
図4(2)に示すように取得されて格納されている各ポート15a,15bの使用状況を表すBusy率を検索する(ステップS3)。また、パス冗長化部12は、
図4(3)に示す命令判別テーブルを参照して、I/O命令に含まれる「I/O種別」及び「アドレス」に基づいて、かかるI/O命令が初期ポートに対応して設定されたパスを迂回することが可能か否かを判断する(ステップS4)。具体的に、パス冗長化部12は、命令判別テーブルにおいて、I/O命令に含まれる「I/O種別」及び「アドレス」に対応する「パス迂回可否」が「可」の場合には、設定された初期ポートを変更して、他のポートを使用した他のパスを経由して送信することができると判断する(ステップS4でYes)。一方で、パス冗長化部12は、命令判別テーブルにおいて、I/O命令に含まれる「I/O種別」及び「アドレス」に対応する「パス迂回可否」が「不可」の場合には、設定された初期ポートを変更することができないため(ステップS4でNo)、初期ポートを通過する元のパスを使用してI/O命令を送信する(ステップS8)。
【0036】
続いて、パス冗長化部12は、I/O命令について設定された初期ポートを変更可能であると判断した場合には(ステップS4でYes)、検索した各ポート15a,15bのBusy率から初期ポートがBusy状態であるか否かを調べる(ステップS5)。そして、パス冗長化部12は、初期ポートのBusy率が閾値以上であるなどBusy状態である場合には(ステップS5でYes)、さらに、他のポートに空きがあるか否かを調べる(ステップS6)。パス冗長化部12は、他のポートのBusy率が閾値以下であるなど空きがあると判断した場合には(ステップS6でYes)、かかる他のポートを通過する別のパスを使用してI/O命令を送信する(ステップS7)。一方で、パス冗長化部12は、初期ポートがBusy状態でない場合や(ステップS5でNo)、他のポートに空きがない場合には(ステップS6でNo)、初期ポートを通過する元のパスを使用してI/O命令を送信する(ステップS8)。
【0037】
以上のように、本発明によると、I/O命令の内容に応じて、当該I/O命令を送信する際に使用するポートつまりパスを変更することができる。このため、例えば、
図8に示すように、複数のI/O命令Y1,Y2が1つのパスP2に集中してしまうような場合であっても、
図9に示すように、所定のI/O命令Y2を他のパスP1に変更することができる。例えば、サーバ1から演算処理装置2に対して連続してデータ転送する演算処理を行う場合には、かかる演算処理のI/O命令を、その命令の内容に対応してポートを変更可能と設定しておくことで、データ転送ごとに空きのあるポートが使用されることとなり、データ転送効率の向上を図ることができる。
【0038】
次に、演算処理装置2の動作について説明する。まず、演算処理装置2は、上述したようにサーバ1から送信されるI/O命令を受け付けるための準備処理を行う。具体的に、管理用CPU22は、フラッシュメモリ24に記憶されているファームウェアを読み込み、当該ファームウェアを起動する。また、管理用CPU22は、I/Oコントローラ21を初期化する。さらに、管理用CPU22は、フラッシュメモリ24に記憶されている演算用CPU23a等のファームウェアを読み込み、当該ファームウェアを用いて演算用CPU23a等を起動する。
【0039】
その後、演算処理装置2は、サーバ1からI/O命令を受け付けると、I/Oコントローラ21は管理用CPU22にI/O命令を割り込みとして上げる。そして、管理用CPU22は、I/O命令の内容を解析し、当該I/O命令の内容に対応した演算処理を実行する。このとき、管理用CPU22は、必要に応じて、I/Oコントローラ21や演算用CPU23a等と協働して演算処理を実行する。具体的には、演算処理装置2には、
図5に示すようにI/O命令に含まれる「I/O種別」及び「アドレス」に対応して演算処理の内容が設定されており、管理用CPU22は、I/Oコントローラ21から上げられたI/O命令に含まれる「I/O種別」及び「アドレス」に対応する演算処理の内容を特定して、かかる演算処理を実行する。なお、演算処理の内容は、いずれもディスク装置内の指定したアドレスに対する読み書きのような処理とは異なる処理が設定されている。
【0040】
一例として、管理用CPU22は、演算処理装置2で実行する演算処理を特定する番号や、演算処理で使用するパラメータを設定するといった演算処理を行う。また、一例として、管理用CPU22は、I/O命令に含まれる演算データを演算用CPU26a等に転送し、かかる演算データに対する所定の処理を実行する、という演算処理を行う。また、一例として、管理用CPU22は、演算用CPU26a等による演算結果をサーバ1に返却する、といった演算処理を行う。
【0041】
以上のように、本発明によると、サーバ1側からはディスク装置用の読み書き指令であるI/O命令を演算処理装置2に送信することで、当該演算処理装置2に、ディスク装置に対する処理とは異なる様々な演算処理を実行させることができる。このように、ディスク装置用のI/O命令を用いることで、そのI/O特性から演算処理装置2に大容量のデータを連続して転送しながら随時演算を行い、結果を返却する必要のある処理に好適であり、データ転送効率の向上を図ることができる。さらに、サーバ1側からは複数の仮想的なディスク装置に対して、同時に複数種類の演算処理を指示することができ、これに応じて演算処理装置2は、多くの演算用CPU23a等に演算処理を振り分けることができ、演算処理の効率化も図ることができる。。
【0042】
<実施形態2>
次に、本発明の第2の実施形態を、
図10乃至
図15を参照して説明する。
図10乃至
図11は、実施形態2における情報処理装置の構成を示すブロック図であり、
図12は、情報処理装置の動作を示すフローチャートである。また、
図13乃至
図14は、実施形態2における演算処理装置の構成を示すブロック図であり、
図15は、演算処理装置の動作を示すフローチャートである。なお、本実施形態では、上述した実施形態で説明したサーバ1及び演算処理装置2の構成の概略を示している。
【0043】
まず、
図10を参照して、本実施形態における情報処理装置100のハードウェア構成を説明する。情報処理装置100は、一般的な情報処理装置にて構成されており、一例として、以下のようなハードウェア構成を装備している。
・CPU(Central Processing Unit)101(演算装置)
・ROM(Read Only Memory)102(記憶装置)
・RAM(Random Access Memory)103(記憶装置)
・RAM103にロードされるプログラム群104
・プログラム群104を格納する記憶装置105
・情報処理装置外部の記憶媒体110の読み書きを行うドライブ装置106
・情報処理装置外部の通信ネットワーク111と接続する通信インタフェース107
・データの入出力を行う入出力インタフェース108
・各構成要素を接続するバス109
【0044】
そして、情報処理装置100は、プログラム群104をCPU101が取得して当該CPU101が実行することで、
図11に示す送信手段121を構築して装備することができる。なお、プログラム群104は、例えば、予め記憶装置105やROM102に格納されており、必要に応じてCPU101がRAM103にロードして実行する。また、プログラム群104は、通信ネットワーク111を介してCPU101に供給されてもよいし、予め記憶媒体110に格納されており、ドライブ装置106が該プログラムを読み出してCPU101に供給してもよい。但し、上述した送信手段121は、かかる手段を実現させるための専用の電子回路で構築されるものであってもよい。
【0045】
なお、
図10は、情報処理装置100のハードウェア構成の一例を示しており、情報処理装置のハードウェア構成は上述した場合に限定されない。例えば、情報処理装置は、ドライブ装置106を有さないなど、上述した構成の一部から構成されてもよい。
【0046】
そして、情報処理装置100は、上述したようにプログラムによって構築された送信手段121の機能により、
図12のフローチャートに示す情報処理方法を実行する。
【0047】
図12に示すように、情報処理装置100は、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し(ステップS11)、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する(ステップS12)、
という処理を実行する。
【0048】
本発明は、以上のように構成されることにより、演算処理装置に対して命令を送信する際に使用するポートを、読み書き処理命令の内容に応じて変更することができる。その結果、命令の内容に応じて使用するポートを振り分けることができ、ポートの混雑を抑制し、データ転送効率の向上を図ることができる。
【0049】
次に、
図13を参照して、本実施形態における演算処理装置200のハードウェア構成を説明する。演算処理装置200は、一般的な情報処理装置にて構成されており、一例として、以下のようなハードウェア構成を装備している。
・CPU(Central Processing Unit)201(演算装置)
・ROM(Read Only Memory)202(記憶装置)
・RAM(Random Access Memory)203(記憶装置)
・RAM203にロードされるプログラム群204
・プログラム群204を格納する記憶装置205
・情報処理装置外部の記憶媒体210の読み書きを行うドライブ装置206
・情報処理装置外部の通信ネットワーク211と接続する通信インタフェース207
・データの入出力を行う入出力インタフェース208
・各構成要素を接続するバス209
【0050】
そして、演算処理装置200は、プログラム群204をCPU201が取得して当該CPU201が実行することで、
図14に示す受付手段221と演算手段222とを構築して装備することができる。なお、プログラム群204は、例えば、予め記憶装置205やROM202に格納されており、必要に応じてCPU201がRAM203にロードして実行する。また、プログラム群204は、通信ネットワーク211を介してCPU201に供給されてもよいし、予め記憶媒体210に格納されており、ドライブ装置206が該プログラムを読み出してCPU201に供給してもよい。但し、上述した受付手段221と演算手段222とは、かかる手段を実現させるための専用の電子回路で構築されるものであってもよい。
【0051】
なお、
図13は、演算処理装置200を構成する情報処理装置のハードウェア構成の一例を示しており、情報処理装置のハードウェア構成は上述した場合に限定されない。例えば、情報処理装置は、ドライブ装置206を有さないなど、上述した構成の一部から構成されてもよい。
【0052】
そして、演算処理装置200は、上述したようにプログラムによって構築された受付手段221と演算手段222との機能により、
図15のフローチャートに示す演算処理方法を実行する。
【0053】
図15に示すように、演算処理装置200は、
ディスク装置用の読み書き処理命令を受け付け(ステップS21)、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する(ステップS12)、
という処理を実行する。
【0054】
本発明は、以上のように構成されることにより、ディスク装置用の読み書き指令により、演算処理装置2にディスク装置に対する処理とは異なる様々な演算処理を実行させることができる。このように、ディスク装置用のI/O命令を用いることで、そのI/O特性から演算処理装置に大容量のデータを連続して転送しながら随時演算を行い、結果を返却する必要のある処理に好適であり、データ転送効率の向上を図ることができる。
【0055】
なお、上述したプログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(Random Access Memory))を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【0056】
以上、上記実施形態等を参照して本願発明を説明したが、本願発明は、上述した実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の範囲内で当業者が理解しうる様々な変更をすることができる。また、上述した装置の機能のうちの少なくとも一以上の機能は、ネットワーク上のいかなる場所に設置され接続された情報処理装置で実行されてもよく、つまり、いわゆるクラウドコンピューティングで実行されてもよい。
【0057】
<付記>
上記実施形態の一部又は全部は、以下の付記のようにも記載されうる。以下、本発明における情報処理方法、情報処理装置、演算処理方法、演算処理装置、プログラムの構成の概略を説明する。但し、本発明は、以下の構成に限定されない。
(付記1)
情報処理装置が、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記2)
付記1に記載の情報処理方法であって、
前記情報処理装置が、
複数のディスク装置のうちいずれかのディスク装置宛に前記読み書き処理命令を送信する際に、前記ディスク装置に対応して予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記3)
付記1又は2に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の内容に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記4)
付記3に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令に含まれるアドレス情報に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記5)
付記3に記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の種類及び当該読み書き処理命令に含まれるアドレス情報に対応して、使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記6)
付記1乃至5のいずれかに記載の情報処理方法であって、
前記情報処理装置が、
前記読み書き処理命令の内容に応じて予め設定された前記ポートの使用状況を取得し、当該使用状況と前記読み書き処理命令の内容とに応じて、使用する前記ポートを変更して、前記読み書き処理命令を前記演算処理装置に対して送信する、
情報処理方法。
(付記7)
付記1乃至6のいずれかに記載の情報処理方法であって、
前記演算処理装置が、前記情報処理装置から受け付けた前記読み書き処理命令に含まれるアドレス情報に対応して、ディスク装置に対する処理とは異なる予め設定された演算処理を実行する、
情報処理方法。
(付記8)
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する送信手段、
を備えた情報処理装置。
(付記8.1)
付記8に記載の情報処理装置であって、
前記送信手段は、複数のディスク装置のうちいずれかのディスク装置宛に前記読み書き処理命令を送信する際に、前記ディスク装置に対応して予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理装置。
(付記8.2)
付記8又は8.1に記載の情報処理装置であって、
前記送信手段は、前記読み書き処理命令の内容に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理装置。
(付記8.3)
付記8.2に記載の情報処理装置であって、
前記送信手段は、前記読み書き処理命令に含まれるアドレス情報に対応して使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
演算処理装置。
(付記8.4)
付記8.2に記載の情報処理装置であって、
前記送信手段は、前記読み書き処理命令の種類及び当該読み書き処理命令に含まれるアドレス情報に対応して、使用する前記ポートを変更可能であると設定されている場合に、使用する前記ポートを変更して、当該読み書き命令を前記演算処理装置に対して送信する、
情報処理装置。
(付記8.5)
付記8乃至8.4のいずれかに記載の情報処理装置であって、
前記送信手段は、前記読み書き処理命令の内容に応じて予め設定された前記ポートの使用状況を取得し、当該使用状況と前記読み書き処理命令の内容とに応じて、使用する前記ポートを変更して、前記読み書き処理命令を前記演算処理装置に対して送信する、
情報処理装置。
(付記9)
複数のポートを介して接続された情報処理装置と演算処理装置とを備え、
前記情報処理装置は、演算処理装置に対して、ディスク装置用の読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信すると共に、前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する送信手段を備え、
前記演算処理装置は、前記情報処理装置から受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する読み書き処理とは異なる演算処理を実行する演算処理手段を備えた、
情報処理システム。
(付記10)
情報処理装置に、
複数のポートを介して接続され、ディスク装置用の読み書き処理命令の内容に対応して予め設定された演算処理でありディスク装置に対する読み書き処理とは異なる演算処理を実行するよう構成された演算処理装置に対して、前記読み書き処理命令の内容に応じて予め設定された前記ポートを使用して前記読み書き処理命令を送信し、
前記読み書き処理命令の内容に応じて使用する前記ポートを変更して、当該読み書き処理命令を前記演算処理装置に対して送信する、
処理を実行させるためのプログラム。
【0058】
(付記A1)
演算処理装置が、
ディスク装置用の読み書き処理命令を受け付け、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する、
演算処理方法。
(付記A2)
付記A1に記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の種類に対応して予め設定された演算処理を実行する、
演算処理方法。
(付記A3)
付記A1又はA2に記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令に含まれるアドレス情報に対応して予め設定された演算処理を実行する、
演算処理方法。
(付記A4)
付記A3に記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の種類及び当該読み書き命令に含まれるアドレス情報に対応して予め設定された演算処理を実行する、
演算処理方法。
(付記A5)
付記A1乃至A4のいずれかに記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の内容に対応して、当該読み書き処理命令に含まれる演算データを前記演算処理装置が備える演算部に転送して当該演算部にて所定の演算処理を実行する、
演算処理方法。
(付記A6)
付記A5に記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の内容に対応して、前記演算データを前記演算処理装置が備える複数の前記演算部の全てに転送する、
演算処理方法。
(付記A7)
付記A5又はA6に記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の内容に対応して、前記演算データを前記演算処理装置が備える複数の前記演算部のうち1つに転送する、
演算処理方法。
(付記A8)
付記A5乃至A7のいずれかに記載の演算処理方法であって、
前記演算処理装置が、受け付けた前記読み書き処理命令の内容に対応して、前記演算処理装置が備える前記演算部にて実行された演算結果を返却する、
演算処理方法。
(付記A9)
ディスク装置用の読み書き処理命令を受け付ける受付手段と、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する演算手段と、
を備えた演算処理装置。
(付記A9.1)
付記A9に記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の種類に対応して予め設定された演算処理を実行する、
演算処理装置。
(付記A9.2)
付記A9又はA9.1に記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令に含まれるアドレス情報に対応して予め設定された演算処理を実行する、
演算処理装置。
(付記A9.3)
付記A9.2に記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の種類及び当該読み書き命令に含まれるアドレス情報に対応して予め設定された演算処理を実行する、
演算処理装置。
(付記A9.4)
付記A9乃至A9.3のいずれかに記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の内容に対応して、当該読み書き処理命令に含まれる演算データを前記演算処理装置が備える演算部に転送して当該演算部にて所定の演算処理を実行する、
演算処理装置。
(付記A9.5)
付記A9.4に記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の内容に対応して、前記演算データを前記演算処理装置が備える複数の前記演算部の全てに転送する、
演算処理装置。
(付記A9.6)
付記A9.4又はA9.5に記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の内容に対応して、前記演算データを前記演算処理装置が備える複数の前記演算部のうち1つに転送する、
演算処理装置。
(付記A9.7)
付記A9.4乃至A9.6のいずれかに記載の演算処理装置であって、
前記演算手段は、受け付けた前記読み書き処理命令の内容に対応して、前記演算処理装置が備える前記演算部にて実行された演算結果を返却する、
演算処理装置。
(付記A10)
演算処理装置に、
ディスク装置用の読み書き処理命令を受け付け、
受け付けた前記読み書き処理命令の内容に対応して予め設定された演算処理であり、ディスク装置に対する処理とは異なる演算処理を実行する、
処理を実行させるためのプログラム。
【符号の説明】
【0059】
1 サーバ
11 管理ソフト
12 パス冗長化部
13a,13b,13c,13d デバイスファイル
14a,14b ドライバ
15a,15b ポート
2 演算処理装置
21 I/Oコントローラ
22 管理用CPU
23 メモリ
24 フラッシュメモリ
25a,25b ポート
26a,26b,26c,26d 演算用CPU
27a,27b,27c,27d メモリ
P1,P2 パス
100 情報処理装置
101,201 CPU
102,202 ROM
103,203 RAM
104,204 プログラム群
105,205 記憶装置
106,206 ドライブ装置
107,207 通信インタフェース
108,208 入出力インタフェース
109,209 バス
110,210 記憶媒体
111,211 通信ネットワーク
121 送信手段
200 演算処理装置
221 受付手段
222 演算手段