JP2015156158A - 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置 - Google Patents

命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置 Download PDF

Info

Publication number
JP2015156158A
JP2015156158A JP2014031180A JP2014031180A JP2015156158A JP 2015156158 A JP2015156158 A JP 2015156158A JP 2014031180 A JP2014031180 A JP 2014031180A JP 2014031180 A JP2014031180 A JP 2014031180A JP 2015156158 A JP2015156158 A JP 2015156158A
Authority
JP
Japan
Prior art keywords
input
instruction
memory
information
storage area
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
JP2014031180A
Other languages
English (en)
Inventor
佑基 水野
Yuki Mizuno
佑基 水野
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2014031180A priority Critical patent/JP2015156158A/ja
Publication of JP2015156158A publication Critical patent/JP2015156158A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Multi Processors (AREA)

Abstract

【課題】入出力命令を効率よく処理することができる命令処理装置等を提供する。
【解決手段】
命令処理装置101は、メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、記憶領域と記憶装置508とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、記憶領域と記憶装置508とを通信接続可能な1つ以上の経路の中から、特定の経路を選択する選択部102と、入出力命令を、特定の経路に含まれるインターコネクトを介するリクエストに変換する変換部103と有する。
【選択図】 図1

Description

本発明は、入出力命令を処理する命令処理装置等に関する。
コンピュータシステム(情報処理装置)が有する性能を向上するアーキテクチャとして、NUMA(Non−Uniform_Memory_Access)が知られている。
NUMAは、共有メモリ型マルチプロセッサコンピュータシステムに関するアーキテクチャの一つである。NUMAにおいては、中央演算処理装置(Central_Processing_unit、CPU)と、メインメモリ(主記憶装置、以降、「メモリ」と表す。)とを有するNUMAノードが複数存在する。NUMAノードは、インターコネクトを介して相互に通信接続する。
インターコネクトは、2つのCPU(たとえば、NUMAノード)の間、CPUと、入出力ハブまたはルーティングハブとの間を接続し、任意のコンポーネント(たとえば、CPU、入出力ハブ等)が通信ネットワークを経由して他のコンポーネントに接続することを可能にする。インターコネクトは、本発明に係る各実施形態においても、上述したことと同様のことを表す。
上述したように、NUMAノードは、CPUとメモリの対(これをノードと呼ぶ)を複数有する。ただし、NUMAにおいて、各CPUは、論理アドレスを用いて、全NUMAノードにおけるメモリを参照することができる。
一方、SMP(Symmetric_MultiProcessing)においては、バスを経由することにより、コンピュータシステムにおける全てのCPUと、メモリとが通信接続する。
このため、NUMAは、SMPに比べ、複数のCPUがバスを共有することにより生じる輻輳を低減することができ、さらに、バス等を実装する配線の長さを短くすることができる。このため、NUMAを採用するコンピュータシステムは、SMPよりも、多くのCPU、及び、メモリを有することが容易である。
近年、NUMAノードは、さらに、入出力ハブ(I/Oハブ)を有することも多い。NUMAノードは、入出力ハブを介して相互に通信接続する。NUMAノードが入出力ハブを有する構成の場合、各NUMAノード及び入出力ハブ間におけるインターコネクトは、必ずしも、同一の構成であるとは限らない。
マルチパス機能は、CPUが記憶装置にアクセスする方式の一つである。マルチパス機能は、CPUと記憶装置との間において通信接続可能な経路が複数存在する場合に、経路を選択するポリシー(以降、「経路選択ポリシー」と表す。)に従い、CPUから受信する入出力リクエストに、特定の経路を割り当てる。ユーザは、マルチパス機能を用いることにより、記憶装置にアクセスする経路を意識することなく、複数の経路を利用することができる。
たとえば、一般的な経路選択ポリシーには、以下に示す3つの方式がある。すなわち、
(1)特定の経路を選択する方式(アクティブスタンバイ方式)、
(2)順番に経路を選択する方式(ラウンドロビン方式)、
(3)未処理の入出力リクエストに関する処理を完了する時間が最短となる経路を選択する方式(サービスタイム方式)。
たとえば、特許文献1及び特許文献2は、コンピュータシステムを効率的に制御する技術等を開示する。
特許文献1に開示される装置は、ホストコンピュータと記憶装置とを通信接続可能な経路が複数存在する場合に、キャッシュヒット率、及び、入出力処理時間に関する履歴に基づき経路を選択する。
特許文献2が開示する資源管理装置は、NUMA型のマルチプロセッサシステムにおいて、プロセッサごとに決定されるプロセスの優先度を変更する。これにより、該資源管理装置は、異なるプロセッサ間において、プロセスが移動する回数を減らすことができる。
特開2006−351030号公報 特開平06−259386号公報
しかし、一般的な経路選択ポリシーは、NUMAノードと入出力ハブとの間におけるインターコネクトを考慮していない。このため、マルチパス機能が、経路選択ポリシーに従い、インターコネクトを介する経路を選択する場合に、バスにおいて輻輳が生じる可能性がある。この結果、性能は低下する。
また、特許文献1は、インターコネクトを考慮した発明ではない。さらに、特許文献1に開示される装置は、キャッシュヒット率、及び、入出力処理時間に関する履歴に基づき、経路を選択する。このため、該装置は、該履歴が存在しない場合に、入出力処理を低減することはできない。
特許文献2において、プロセスの優先度は、インターコネクトに起因する処理時間に関連しない。したがって、特許文献2に開示される資源管理装置は、インターコネクトに起因する処理時間を低減しない。
そこで、本発明の主たる目的は、入出力命令を効率よく処理することができる命令処理装置等を提供することである。
前述の目的を達成するために、本発明に係る命令処理装置は、以下の構成を備えることを特徴とする。
すなわち、本発明に係る命令処理装置は、
メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、前記記憶領域と、前記記憶装置とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、前記記憶領域と、前記記憶装置とを通信接続可能な1つ以上の経路の中から、特定の経路を選択する選択手段と、
前記入出力命令を、前記特定の経路に含まれる前記インターコネクトを介するリクエストに変換する変換手段と
を備えることを特徴とする。
また、本発明の他の見地として、本発明に係る命令処理方法は、
情報処理装置を用いて、メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、前記記憶領域と、前記記憶装置とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、前記記憶領域と、前記記憶装置とを通信接続可能な1つ以上の経路の中から、特定の経路を選択し、前記入出力命令を、前記特定の経路に含まれる前記インターコネクトを介するリクエストに変換する
ことを特徴とする。
さらに、同目的は、係る命令処理プログラム、および、そのプログラムを記録するコンピュータ読み取り可能な記録媒体によっても実現される。
本発明に係る命令処理装置等によれば、入出力命令を効率よく処理することができる。
本発明の第1の実施形態に係る命令処理装置が有する構成を示すブロック図である。 第1の実施形態に係る命令処理装置における処理の流れを示すフローチャートである。 入出力命令に含まれる情報の一例を概念的に表す図である。 論理アドレスと、メモリにおける特定の領域を指し示す物理アドレスとが関連付けされたマップ情報の一例を概念的に表す図である。 マルチパスデバイスが有する構成の一例を概念的に表す図である。 インターコネクトコストの一例を表す図である。 サービスタイムコストの一例を表す図である。 本発明の第2の実施形態に係る命令処理装置が有する構成を示すブロック図である。 第2の実施形態に係る命令処理装置における処理の流れを示すフローチャートである。 アドレス情報の一例を概念的に表す図である。 接続情報の一例を概念的に表す図である。 情報処理装置が有する構成を表すブロック図である。 本発明の各実施形態に係る命令処理装置を実現可能な計算処理装置のハードウェア構成を、概略的に示すブロック図である。
次に、本発明を実施する実施形態について図面を参照しながら詳細に説明する。
<第1の実施形態>
本発明の第1の実施形態に係る命令処理装置101が有する構成と、命令処理装置101が行う処理とについて、図1と図2とを参照しながら詳細に説明する。図1は、本発明の第1の実施形態に係る命令処理装置101が有する構成を示すブロック図である。図2は、第1の実施形態に係る命令処理装置101における処理の流れを示すフローチャートである。
第1の実施形態に係る命令処理装置101は、選択部102と、変換部103とを有する。
情報処理装置104は、命令処理装置101と、メモリ501と、メモリ502と、インターコネクト503と、インターコネクト504と、インターコネクト505と、ハブ506と、ハブ507とを有する。情報処理装置104は、記憶装置508と情報を送受信することができる。
情報処理装置104が、たとえば、メモリ501と、記憶装置508との間において情報を送受信する場合に、該情報は、インターコネクト504、及び、ハブ506を経由する。または、該情報は、インターコネクト503、インターコネクト505、及び、ハブ507を経由する。
尚、図1に示す構成においては、説明の便宜上、命令処理装置101と、メモリ501とが通信接続可能であるとするが、情報処理装置104において、命令処理装置101は、複数であってもよい。この場合、命令処理装置は、それぞれ、1つのメモリ(メモリ501、または、メモリ502)と通信接続可能であってもよい。すなわち、情報処理装置104が有する構成は、上述した例に限定されない。
説明の便宜上、情報処理装置104は、2つのメモリと、3つのインターコネクトとを有するとしたが、さらに多くのメモリと、インターコネクトとを有してもよい。メモリ及びハブの間におけるインターコネクト、及び、複数のメモリ間におけるインターコネクトは、1つであるとは限らず、複数であってもよい。インターコネクト503は、メモリ501と、メモリ502とを通信接続するとしたが、上述した複数のNUMAノード間を通信接続してもよい。すなわち、NUMAノード(不図示)は、CPU(不図示)と、メモリ501とを有するとともに、インターコネクト503を介して通信接続する態様であってもよい。情報処理装置104は、記憶装置508を有する構成であってもよい。記憶装置508は、情報を記憶する機能を有していればよく、情報を処理する機能を有する装置(デバイス)であってもよい。すなわち、情報処理装置104が有する構成は、上述した例に限定されない。
情報処理装置104が、インターコネクト504を介して、メモリ501と、記憶装置508との間において入出力する例を用いながら、本実施形態に係る命令処理装置101について説明する。たとえば、情報処理装置104は、メモリ501と、記憶装置508との間において入出力するプログラムが発行する入出力命令に従い、その入出力命令に応じた処理を開始する。
図3に示すように、入出力命令は、マルチパスデバイス(後述)を識別する識別子と、メモリ(メモリ501、メモリ502、または、その両者)における記憶領域の先頭を指し示す論理アドレスと、該記憶領域の大きさ(サイズ)とが関連付けされた情報を含む。図3は、入出力命令に含まれる情報の一例を概念的に表す図である。たとえば、図3に例示する入出力命令は、デバイスdev−Mと、論理アドレス10000と、サイズ3000とが関連付けされた情報を含む。この情報は、記憶装置508と、メモリ(メモリ501、メモリ502、または、その両者)内における記憶領域(すなわち、論理アドレス10000を先頭アドレスとする、大きさが3000である記憶領域)との間において、デバイスdev−Mを介して情報を入出力することを表す。
また、上述した記憶領域は、図4に示すように、1つ以上のメモリ(メモリ501、メモリ502、または、その両者)を指し示す論理アドレスと、サイズとを用いて指定される。図4は、論理アドレスと、メモリにおける特定の領域を指し示す物理アドレスとが関連付けされたマップ情報の一例を概念的に表す図である。
たとえば、マップ情報において、論理アドレス10000は、サイズ1000と、物理アドレス1000とに関連付けされている。これは、論理アドレス10000乃至論理アドレス10999は、たとえば、メモリ501における物理アドレス1000乃至物理アドレス1999であることを表す。すなわち、論理アドレス10001における情報は、メモリ501における物理アドレス1001における情報である。
同様に、たとえば、論理アドレス11000乃至論理アドレス11999は、メモリ502における物理アドレス11000乃至物理アドレス11999であることを表す。論理アドレス12000乃至論理アドレス12999は、メモリ501における物理アドレス2000乃至物理アドレス2999であることを表す。
次に、図5を参照しながら、入出力命令に含まれるマルチパスデバイスについて説明する。図5は、マルチパスデバイスが有する構成の一例を概念的に表す図である。
マルチパスデバイスは、複数のデバイスを表す。図5に示す例において、デバイスdev−Mは、デバイスdev−Aと、デバイスdev−Bとに関連付けされている。これは、デバイスdev−Mがマルチパスデバイスであり、デバイスdev−Aと、デバイスdev−Bとを含むことを表す。
入出力命令においてマルチパスデバイス(すなわち、デバイスdev−M)が指定される場合、1つ以上のメモリ(メモリ501、メモリ502、または、その両者)における記憶領域と、記憶装置508との間における送受信は、デバイスdev−Aであっても、デバイスdev−Bであっても、その両者であってもよい。
以降、説明の便宜上、経路は、メモリ(メモリ501、メモリ502、または、その両者)と記憶装置508との間において情報を送受信可能な通信路であるとする。すなわち、経路は、デバイス等の装置を含む。
まず、選択部102は、入出力命令に応じて、該入出力命令に含まれる論理アドレス等に関する情報と、マルチパスデバイスとを読み取る。次に、選択部102は、インターコネクト間の繋がりを表す接続情報と、マルチパスデバイスが表すデバイスとに基づいて、経路の中から、メモリ(メモリ501、メモリ502、または、その両者)と記憶装置508との間において情報を送受信する特定の経路を選択する(ステップS101)。
接続情報は、たとえば、グラフを用いて表してもよい。この場合、たとえば、節点は、メモリ502、ハブ507、記憶装置508等の装置を表し、枝は、インターコネクトを表す。2つの装置を通信接続可能なインターコネクトが存在する場合、該2つの装置を表す節点間を結ぶ枝は存在する。2つの装置を通信接続可能なインターコネクトが存在しない場合、該2つの装置を表す節点間を結ぶ枝は存在しない。また、インターコネクトにおける通信性能が相互に異なる場合には、枝に、通信性能を表す重みを付してもよい。また、インターコネクトにおける通信性能が均一な場合には、枝に、一様な重みを付してもよい。
選択部102は、グラフにおいて、読み取ったメモリを表す節点と、読み取った記憶装置508を表す節点とを結ぶ経路のうち、枝の重みの総和が最小である経路(以降、「最小経路」と表す。)を、特定の経路として選択する。
また、選択部102は、経路数が少ない場合に、径路に含まれる枝の重みの総和をそれぞれ算出し、該総和が最小である経路を、特定の経路として選択してもよい。
たとえば、選択部102は、枝の重みが一様な場合に、経路に含まれる枝数が最小である経路を選択する。すなわち、メモリと記憶装置508との間において通信接続する場合に、特定の経路は、インターコネクトの本数が少なくなる。
また、枝の重みが、インターコネクトに関するコスト(たとえば、通信性能等)を表す場合に、最小経路は、インターコネクトに関するコストが少ない経路である。すなわち、選択部102は、メモリと記憶装置508との間において通信接続するコストが少ない経路を選択する。
尚、グラフにおいて最小経路を探索する方法は、既に多くの方法が知られているため、ここでは、詳細な説明を省略する。
次に、変換部103は、入出力命令を、特定の経路に含まれるインターコネクトを経由するリクエストに変換する(ステップS102)。
この場合、変換部103は、マップ情報及び該特定の経路に基づき、入出力命令に含まれる論理アドレスを、該特定の経路に含まれるデバイス及び物理アドレスに変換する。
変換部103は、マップ情報において、該論理アドレスに関連付けされた物理アドレスを読み取る。次に、変換部103は、該デバイスと、該物理アドレスを含むメモリ(あるいは、該メモリを含むNUMAノード)とにリクエストを発行する。
この場合、変換部103は、リクエストリスト(不図示)に、発行したリクエストと、入出力命令とを格納してもよい。
リクエスト処理部(不図示)は、係るリクエストリストからリクエストを読み取り、該リクエストに応じた処理を行う。リクエスト処理部は、リクエストリストから、処理を完了したリクエストを削除する。
その後、入出力命令に関するリクエストの処理が完了した場合には、該入出力命令に関する処理を完了し、その後、該入出力命令を発行したプログラムに制御を戻す。
説明の便宜上、インターコネクトコストは、インターコネクトを経由して情報を送受信するのに要する時間を表すとする。また、サービスタイムコストは、処理が開始されていないリクエストを処理するのに要する時間を表すとする。
選択部102において、枝の重みは、図6に例示するようなインターコネクトコストと、図7に例示するようなサービスタイムコストとを合わせたコストであってもよい。図6は、インターコネクトコストの一例を表す図である。図7は、サービスタイムコストの一例を表す図である。
図6において、デバイスdev−Aが示す行は、デバイスdev−Aが通信接続可能なインターコネクトに関するインターコネクトコストを表す。デバイスdev−Bが示す行は、デバイスdev−Bが通信接続可能なインターコネクトに関するインターコネクトコストを表す。メモリ501が示す列は、メモリ501が通信接続可能なインターコネクトに関するインターコネクトコストを表す。メモリ502が示す列は、メモリ502が通信接続可能なインターコネクトに関するインターコネクトコストを表す。たとえば、図6を参照することにより、インターコネクトコストの本数は、デバイスdev−Aとメモリ501との間において10であり、デバイスdev−Bとメモリ501と間において40であることがわかる。
図6と図7とは同様の構成を有する情報であるため、図7からサービスタイムコストを読み取ることができる。
この場合、選択部102は、最小経路を算出することにより、コストが少ない経路を選択する。
さらに、インターコネクトに優先度が割り当てられていてもよい。たとえば、最小経路が複数存在する場合に、選択部102は、最小経路のうち、経路に含まれるインターコネクトに関する優先度の総和が最大である経路を選ぶ。優先度は、外部等から割り当てることができる。このため、選択部102は、外部環境等に応じて、より的確に最小経路を選ぶことができる。したがって、本実施形態に係る命令処理装置101は、さらに、効率よく入出力命令を処理することができる。
尚、命令処理装置101は、仮想マシン環境において動作してもよい。この場合、情報処理装置104は、仮想マシン環境を制御するハイパーバイザ部(不図示)を有する。ハイパーバイザ部は、メモリ、命令処理装置101、インターコネクト、ハブ等が行う上述したような処理を、仮想マシン環境において仮想的に実現する。
次に、第1の実施形態に係る命令処理装置101に関する作用効果について説明する。
命令処理装置101によれば、インターコネクトに係る入出力命令を効率よく処理することができる。
この理由は、情報処理装置104におけるインターコネクトの経路に基づき、命令処理装置101が、入出力命令を高速に処理することが可能な経路を選択するためである。
たとえば、枝の重みが、インターコネクトの本数である場合に、命令処理装置101は、インターコネクトの本数が少ない経路を選択する。インターコネクトの本数が少ない経路ほど、処理時間が短くなるため、命令処理装置101は、入出力命令を高速に処理することが可能である。
たとえば、経路の接続情報が、グラフ(すなわち、節点と枝)を用いて表されるとする。枝の重みが、該インターコネクトを介して通信接続する場合におけるコストである場合に、命令処理装置101は、該コストが少ないインターコネクトを選択する。コストが少ない経路ほど、処理時間が短くなるため、命令処理装置101は、入出力命令を高速に処理することが可能である。
一方、特許文献1及び特許文献2に開示された装置は、上述したように、インターコネクトに係る入出力命令を対象としていない。このため、該装置は、インターコネクトに係る入出力命令を高速に処理することができない。
<第2の実施形態>
次に、上述した第1の実施形態を基本とする本発明の第2の実施形態について説明する。
以下の説明においては、本実施形態に係る特徴的な部分を中心に説明すると共に、上述した第1の実施形態と同様な構成については、同一の参照番号を付すことにより、重複する説明を省略する。
図8と図9とを参照しながら、第2の実施形態に係る命令処理装置202が有する構成と、命令処理装置202が行う処理とについて説明する。図8は、本発明の第2の実施形態に係る命令処理装置202が有する構成を示すブロック図である。図9は、第2の実施形態に係る命令処理装置202における処理の流れを示すフローチャートである。
第2の実施形態に係る命令処理装置202は、選択部102と、変換部103と、情報作成部203とを有する。
まず、情報作成部203は、情報処理装置201が起動されるのに応じて、接続情報を作成する(ステップS201)。
情報作成部203が接続情報を作成する場合の処理について説明する。
情報処理装置201におけるデバイス管理部(不図示)は、情報処理装置201が起動されるのに応じて、ハブ等の装置に、デバイスを割り当てる。たとえば、デバイス管理部は、ハブ506にデバイスdev−Aを割り当て、ハブ507にデバイスdev−Bを割り当てる。
次に、メモリ管理部(不図示)は、メモリ501、及び、メモリ502に物理アドレスを割り当てる。図12に示すようにNUMAノード(すなわち、NUMA511、または、NUMA512)がメモリを有する場合に、メモリ管理部(不図示)は、図10に示すように、NUMAノードに物理アドレスを割り当てることにより、アドレス情報を作成してもよい。図12は、情報処理装置513が有する構成を表すブロック図である。図10は、アドレス情報の一例を概念的に表す図である。
情報処理装置513は、命令処理装置101と、NUMA511と、NUMA512とを有する。NUMA511は、CPU509と、メモリ501とを有する。NUMA512は、CPU510と、メモリ502とを有する。
図10に示すように、たとえば、メモリ管理部は、メモリ501(あるいは、NUMA511)に、物理アドレス0を割り当て、メモリ502(あるいは、NUMA512)に、物理アドレス10000を割り当てる。
図11に示すように、情報作成部203は、たとえば、メモリと、デバイスとの間におけるインターコネクトの本数を数え、その結果を接続情報とする。図11は、接続情報の一例を概念的に表す図である。第1の実施形態においては、グラフを用いることにより接続情報を説明したが、本実施形態においては、グラフを表す1つの態様としてテーブル形式を用いる。
図11において、デバイスdev−Aが示す行は、デバイスdev−Aが通信接続可能なインターコネクトの本数を表す。デバイスdev−Bが示す行は、デバイスdev−Bが通信接続可能なインターコネクトの本数を表す。メモリ501が示す列は、メモリ501が通信接続可能なインターコネクトの本数を表す。メモリ502が示す列は、メモリ502が通信接続可能なインターコネクトの本数を表す。たとえば、図11を参照することにより、インターコネクトの本数は、デバイスdev−Bとメモリ501との間において2本であり、デバイスdev−Bとメモリ502と間において1本であることがわかる。
マルチパス部(不図示)は、記憶装置508に通信接続可能な複数のデバイスを表すマルチパスデバイスを作成する。たとえば、マルチパス部は、デバイスdev−Aとデバイスdev−Bと表すデバイスdev−M(すなわち、マルチパスデバイス)を作成する。
次に、選択部102は、入出力命令に応じて、経路の中から特定の経路を選択する(ステップS101)。
たとえば、入出力命令は、情報を転送するプログラム等により開始される。たとえば、該プログラムにかかる処理が開始されるのに応じて、図8に例示するアドレス情報に従い、物理アドレスに関する論理アドレス(図4)が決められる。
次に、第2の実施形態に係る命令処理装置202に関する作用効果について説明する。
本実施形態に係る命令処理装置202によれば、情報処理装置201を起動した直後における入出力命令であっても、該入出力命令を効率よく処理することができる。
この理由は、理由1及び理由2である。すなわち、
(理由1)第2の実施形態に係る命令処理装置202が有する構成は、第1の実施形態に係る命令処理装置202が有する構成を含むためである、
(理由2)情報処理装置201が起動されるのに応じて、情報作成手段が接続情報を作成するためである。
命令処理装置202は、該接続情報に基づき、入出力命令に応じて特定の経路を選択する。接続情報が情報処理装置に含まれる構成を表すため、命令処理装置202は、情報処理装置が有する構成に基づき、特定の経路を選択する。情報処理装置201が起動されるのに応じて接続情報が算出されるため、命令処理装置202は、起動直後における入出力命令であっても効率よく処理することができる。
(ハードウェア構成例)
上述した本発明の各実施形態における命令処理装置を、1つの計算処理装置(情報処理装置、コンピュータ)を用いて実現するハードウェア資源の構成例について説明する。但し、係る命令処理装置は、物理的または機能的に少なくとも2つの計算処理装置を用いて実現してもよい。また、係る命令処理装置は、専用の装置として実現してもよい。
図13は、第1の実施形態及び第2の実施形態に係る命令処理装置を実現可能な計算処理装置のハードウェア構成を概略的に示す図である。計算処理装置20は、中央処理演算装置(Central Processing Unit、以降「CPU」と表す)21、メモリ22、ディスク23、不揮発性記録媒体24、入力装置25、出力装置26、および、通信インターフェース(以降、「通信IF」と表す。)27を有する。計算処理装置20は、通信IF27を介して、他の計算処理装置、及び、通信装置と情報を送受信することができる。
不揮発性記録媒体24は、コンピュータが読み取り可能な、たとえば、コンパクトディスク(Compact Disc)、デジタルバーサタイルディスク(Digital_Versatile_Disc)、ブルーレイディスク(Blu−ray Disc。登録商標)、ユニバーサルシリアルバスメモリ(USBメモリ)、ソリッドステートドライブ(Solid State Drive)等である。不揮発性記録媒体24は、電源を供給しなくても係るプログラムを保持し、持ち運びを可能にする。不揮発性記録媒体24は、上述した媒体に限定されない。また、不揮発性記録媒体24の代わりに、通信IF27を介して、通信ネットワークを介して係るプログラムを持ち運びしてもよい。
すなわち、CPU21は、ディスク23が記憶するソフトウェア・プログラム(コンピュータ・プログラム:以下、単に「プログラム」と称する)を、実行する際にメモリ22にコピーし、演算処理を実行する。CPU21は、プログラム実行に必要なデータをメモリ22から読み取る。表示が必要な場合には、CPU21は、出力装置26に出力結果を表示する。外部からプログラムを入力する場合、CPU21は、入力装置25からプログラムを読み取る。CPU21は、上述した図1、図8、あるいは、図12に示した各部が表す機能(処理)に対応するところのメモリ22にある命令処理プログラム(図2、あるいは、図9)を解釈し実行する。CPU21は、上述した本発明の各実施形態において説明した処理を順次行う。
すなわち、このような場合、本発明は、係る命令処理プログラムによっても成し得ると捉えることができる。更に、係る命令処理プログラムが記録されたコンピュータ読み取り可能な不揮発性の記録媒体によっても、本発明は成し得ると捉えることができる。
101 命令処理装置
102 選択部
103 変換部
104 情報処理装置
501 メモリ
502 メモリ
503 インターコネクト
504 インターコネクト
505 インターコネクト
506 ハブ
507 ハブ
508 記憶装置
201 情報処理装置
202 命令処理装置
203 情報作成部
509 CPU
510 CPU
511 NUMA
512 NUMA
513 情報処理装置
20 計算処理装置
21 CPU
22 メモリ
23 ディスク
24 不揮発性記録媒体
25 入力装置
26 出力装置
27 通信IF

Claims (10)

  1. メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、前記記憶領域と、前記記憶装置とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、前記記憶領域と、前記記憶装置とを通信接続可能な1つ以上の経路の中から、特定の経路を選択する選択手段と、
    前記入出力命令を、前記特定の経路に含まれる前記インターコネクトを介するリクエストに変換する変換手段と
    を備えることを特徴とする命令処理装置。
  2. 前記選択手段は、前記経路のうち、前記経路に含まれる前記インターコネクトの本数が少ない経路を、前記特定の経路として選択する
    ことを特徴とする請求項1に記載の命令処理装置。
  3. 前記選択手段は、前記経路のうち、前記経路に係るコストが少ない経路を、前記特定の経路として選択する
    ことを特徴とする請求項1に記載の命令処理装置。
  4. 自装置を含む情報処理装置が起動されるのに応じて、前記接続情報を作成する情報作成手段
    をさらに備える
    請求項1乃至請求項3のいずれかに記載の情報処理装置。
  5. 前記選択手段は、前記入出力命令が第1記憶領域に関する処理である場合に、前記入出力命令に応じて、論理アドレスと物理アドレスとが関連付けされたマップ情報から、前記第1記憶領域に含まれる前記論理アドレスに関連付けされた前記物理アドレスを読み取ることにより、前記第1記憶領域に応じた前記記憶領域を特定し、前記経路と前記本数とが関連付けされた経路情報に基づき、特定した前記記憶領域と、前記記憶装置とを通信接続可能な経路の中から、前記特定の経路を選択する
    ことを特徴とする請求項1乃至請求項4のいずれかに記載の命令処理装置。
  6. 請求項1乃至請求項5に記載の命令処理装置と、
    前記リクエストを処理する処理手段と
    を備えることを特徴とする情報処理装置。
  7. 請求項1乃至請求項5に記載の命令処理装置、前記インターコネクト、及び、前記メモリが有する機能を仮想的に実現するハイパーバイザ手段を
    備えることを特徴とする情報処理装置。
  8. 情報処理装置を用いて、メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、前記記憶領域と、前記記憶装置とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、前記記憶領域と、前記記憶装置とを通信接続可能な1つ以上の経路の中から、特定の経路を選択し、前記入出力命令を、前記特定の経路に含まれる前記インターコネクトを介するリクエストに変換することを特徴とする命令処理方法。
  9. メモリ内の記憶領域と、記憶装置との間において入出力する入出力命令に応じて、前記記憶領域と、前記記憶装置とを通信接続する場合に経由可能なインターコネクト間の繋がりを表す接続情報に基づいて、前記記憶領域と、前記記憶装置とを通信接続可能な1つ以上の経路の中から、特定の経路を選択する選択機能と、
    前記入出力命令を、前記特定の経路に含まれる前記インターコネクトを介するリクエストに変換する変換機能と
    コンピュータに実現させることを特徴とする命令処理プログラム。
  10. 前記選択機能において、前記経路のうち、前記経路に含まれる前記インターコネクトの本数が少ない経路を、前記特定の経路として選択する
    ことを特徴とする請求項9に記載の命令処理プログラム。
JP2014031180A 2014-02-21 2014-02-21 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置 Pending JP2015156158A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014031180A JP2015156158A (ja) 2014-02-21 2014-02-21 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014031180A JP2015156158A (ja) 2014-02-21 2014-02-21 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置

Publications (1)

Publication Number Publication Date
JP2015156158A true JP2015156158A (ja) 2015-08-27

Family

ID=54775430

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014031180A Pending JP2015156158A (ja) 2014-02-21 2014-02-21 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置

Country Status (1)

Country Link
JP (1) JP2015156158A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079355A (ja) * 2004-09-09 2006-03-23 Hitachi Ltd ストレージネットワーク管理サーバ、ストレージネットワーク管理方法、ストレージネットワーク管理用プログラムおよびストレージネットワーク管理システム
JP2007188447A (ja) * 2006-01-16 2007-07-26 Sony Computer Entertainment Inc 信号伝送方法、ブリッジユニット、および情報処理装置
JP2010061194A (ja) * 2008-09-01 2010-03-18 Hitachi Ltd データ転送装置
JP2012113604A (ja) * 2010-11-26 2012-06-14 Hitachi Ltd 計算機システム、方法、及びi/oスイッチ
WO2012160641A1 (ja) * 2011-05-23 2012-11-29 富士通株式会社 管理装置、情報処理装置、情報処理システム、データ転送方法、経路選択プログラム及び転送要求プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006079355A (ja) * 2004-09-09 2006-03-23 Hitachi Ltd ストレージネットワーク管理サーバ、ストレージネットワーク管理方法、ストレージネットワーク管理用プログラムおよびストレージネットワーク管理システム
JP2007188447A (ja) * 2006-01-16 2007-07-26 Sony Computer Entertainment Inc 信号伝送方法、ブリッジユニット、および情報処理装置
JP2010061194A (ja) * 2008-09-01 2010-03-18 Hitachi Ltd データ転送装置
JP2012113604A (ja) * 2010-11-26 2012-06-14 Hitachi Ltd 計算機システム、方法、及びi/oスイッチ
WO2012160641A1 (ja) * 2011-05-23 2012-11-29 富士通株式会社 管理装置、情報処理装置、情報処理システム、データ転送方法、経路選択プログラム及び転送要求プログラム

Similar Documents

Publication Publication Date Title
JP5088366B2 (ja) 仮想計算機制御プログラム、仮想計算機制御システムおよび仮想計算機移動方法
CN105068953A (zh) 用于对等高速外围组件互联存储传输的系统和方法
EP4428684A1 (en) Data access method and computing device
US9940020B2 (en) Memory management method, apparatus, and system
JP6379291B2 (ja) ファイルアクセス方法、システム、及びホスト
US12001868B2 (en) VM migration system and VM migration method
JP6477266B2 (ja) ダンプ管理装置、ダンプ管理プログラム及びダンプ管理方法
JP6244949B2 (ja) 情報処理装置、制御方法、および制御プログラム
US7996614B2 (en) Cache intervention on a separate data bus when on-chip bus has separate read and write data busses
JP5158576B2 (ja) 入出力制御システム、入出力制御方法、及び、入出力制御プログラム
KR20130010467A (ko) 듀얼 모드 리더 라이터 락
US10909044B2 (en) Access control device, access control method, and recording medium containing access control program
JP2015156158A (ja) 命令処理装置、命令処理方法、命令処理プログラム、及び、情報処理装置
WO2014188643A1 (ja) スケジュールシステム、スケジュール方法、及び、記録媒体
US9367329B2 (en) Initialization of multi-core processing system
JPWO2013062109A1 (ja) I/oデバイス制御システムおよびi/oデバイス制御方法
JP4691153B2 (ja) マルチコアプロセッサ,制御方法および情報処理装置
JP2015176218A (ja) 演算処理装置、演算処理装置の制御方法、及び演算処理装置の制御プログラム
KR20130104958A (ko) 다중 운영체제들을 실행하는 장치 및 방법
JP6653786B2 (ja) I/o制御方法およびi/o制御システム
JP7047906B2 (ja) 入出力処理割り当て制御装置、入出力処理割り当て制御システム、入出力処理割り当て制御方法、及び、入出力処理割り当て制御プログラム
KR101634672B1 (ko) 네트워크 인터페이스 가상화 장치, 방법 및 이를 실행하기 위한 컴퓨터 프로그램
JP6200100B2 (ja) 計算機システム
JP2019164510A (ja) ストレージシステム及びio処理の制御方法
US9229875B2 (en) Method and system for extending virtual address space of process performed in operating system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170116

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171003

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171121

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180206