JP2016177751A - 転送装置、転送システムおよびプログラム - Google Patents

転送装置、転送システムおよびプログラム Download PDF

Info

Publication number
JP2016177751A
JP2016177751A JP2015059372A JP2015059372A JP2016177751A JP 2016177751 A JP2016177751 A JP 2016177751A JP 2015059372 A JP2015059372 A JP 2015059372A JP 2015059372 A JP2015059372 A JP 2015059372A JP 2016177751 A JP2016177751 A JP 2016177751A
Authority
JP
Japan
Prior art keywords
request
area
data
transfer
memory controller
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.)
Granted
Application number
JP2015059372A
Other languages
English (en)
Other versions
JP6558008B2 (ja
Inventor
晃 三角
Akira Misumi
晃 三角
貴之 橋本
Takayuki Hashimoto
貴之 橋本
杉山 雄一
Yuichi Sugiyama
雄一 杉山
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2015059372A priority Critical patent/JP6558008B2/ja
Publication of JP2016177751A publication Critical patent/JP2016177751A/ja
Application granted granted Critical
Publication of JP6558008B2 publication Critical patent/JP6558008B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)
  • Bus Control (AREA)

Abstract

【課題】複数の装置に共有される記憶内容の一貫性の維持と、これらの装置の処理速度の向上とを両立させる。
【解決手段】監視部15は、調停バス5からメモリコントローラ3へ伝えられた演算装置4の要求を監視する。登録部12は、監視された要求で指定されたエリアへの書き込み処理が完了しているか否かを調べ、完了していない場合にこのエリアを記憶部16の管理表161に登録する。受付部11は、内部バス6を介して要求装置7から共有メモリ2に格納されたデータの要求を受付ける。取得部13は、受付部11が受付けた要求と、管理表161の登録内容とに基づいて、要求装置からの要求が登録されたエリアに対するものであるか否かを判断し、その判断結果に応じて調停バス5およびメモリコントローラ3のいずれか一方をデータの要求先として選択してデータを取得する。転送部14は、取得部13が取得したデータを要求装置7に転送する。
【選択図】図2

Description

本発明は、転送装置、転送システムおよびプログラムに関する。
特許文献1には、キャッシュとメインメモリ間のデータ転送を監視して、アクセスされたメインメモリのアドレスを判定し、データ転送の経路を選択する技術が開示されている。
特開2008−140078号公報
本発明は、複数の装置に共有される記憶内容の一貫性の維持と、これらの装置の処理速度の向上とを両立させることを目的とする。
本発明の請求項1に係る転送装置は、共有メモリ内の複数に区分された領域のうち、指定された領域に対して読み書きを行うメモリコントローラと通信する第1通信路と、一以上の演算装置からの要求を調停して、該要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と通信する第2通信路と、要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、前記調停装置から前記メモリコントローラに対して出力された要求を監視して、該要求で指定された領域への書き込み処理が完了していない場合に、該領域を登録する登録手段と、前記要求装置の要求が、前記登録手段により登録された領域に対するものでない場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が該領域に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、前記取得したデータを前記要求装置に転送する転送手段と、を有することを特徴とする。
本発明の請求項2に係る転送装置は、請求項1に記載の態様において、前記登録手段は、前記要求が読み出し処理のための要求であり、かつ、該要求で指定された領域が登録されていない場合に、該領域を登録し、該要求が書き込み処理のための要求である場合に、該要求で指定された領域への書き込み処理の回数を計数し、該回数が閾値に達した場合に、書き込み処理が完了したものとして、該領域を解放することを特徴とする。
本発明の請求項3に係る転送システムは、上述の転送装置と、前記転送装置と前記第1通信路経由で通信し、共有メモリ内の指定された領域に対して読み書きを行うメモリコントローラと、装置間の要求を調停する装置であって、前記転送装置と前記第2通信路経由で通信し、一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と、前記転送装置に対して前記共有メモリに格納されたデータの要求を送る要求装置と、を有する。
本発明の請求項4に係るプログラムは、共有メモリ内の複数に区分された領域のうち、指定された領域に対して読み書きを行うメモリコントローラと通信する第1通信路と、一以上の演算装置からの要求を調停して、該要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と通信する第2通信路と、を有するコンピュータを、要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、前記調停装置から前記メモリコントローラに対して出力された要求を監視して、該要求で指定された領域への書き込み処理が完了していない場合に、該領域を登録する登録手段と、前記要求装置の要求が、前記登録手段により登録された領域に対するものでない場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が該領域に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、前記取得したデータを前記要求装置に転送する転送手段として機能させるためのプログラムである。
請求項1、3、4に係る発明によれば、複数の装置に共有される記憶内容の一貫性の維持と、これらの装置の処理速度の向上とを両立させることができる。
請求項2に係る発明によれば、書き込み回数を計数しない場合に比べて、登録される領域の数が抑制される。
本実施形態に係る転送システムの全体構成を示す図。 転送装置の機能的構成を示す図。 管理表の例を示す図。 共有メモリを説明するための図。 転送システムの動作を示すシーケンス図。 転送装置における登録処理の動作を示すフロー図。 変形例における管理表の例を示す図。 変形例における共有メモリを説明するための図。 変形例における転送装置の登録処理の動作を示すフロー図。
1.実施形態
1−1.転送システムの全体構成
図1は、本実施形態に係る転送システム9の全体構成を示す図である。図1に示すように、転送システム9は、転送装置1と、メモリコントローラ3と、調停バス5と、要求装置7とを有する。また、転送システム9は、共有メモリ2と、一以上の演算装置4と、内部バス6と、を有する。
共有メモリ2は、転送システム9を構成する装置間で共有されるメモリであって、メモリコントローラ3によって読み書きが行われるメモリである。共有メモリ2の記憶容量は、例えば8ギガバイトである。共有メモリ2は、決められたデータ量ごとに複数のエリア(領域)に予め区分されている。
メモリコントローラ3は、共有メモリ2内の指定されたエリアに対して読み書きを行う制御装置である。メモリコントローラ3は、転送装置1と第1通信路P1経由で通信する。また、メモリコントローラ3は、調停バス5から読み書きの要求を受ける。この要求は転送装置1により監視される。
調停バス5は、キャッシュ・コヒーレント・インターコネクト(CCI)バスなどと呼ばれるものであり、演算装置4の要求を調停する装置(調停装置)として機能する。ここで「調停」とは、複数の要求を受けて、それらの要求に対して、対象となるデータの所在を特定したり、処理する順序を割当てて各要求の要求元をその要求の処理が実行されるまで待機させたりすることをいう。
調停バス5は、転送装置1と第2通信路P2経由で通信し、一以上の演算装置4からの要求に基づいてメモリコントローラ3に対して共有メモリ2内のエリアを指定して読み書きの要求をする。調停バス5は、共有メモリ2内に記憶されているデータと、共有メモリ2から演算装置4のキャッシュメモリに読み出されたデータとの一貫性(コヒーレンシ)を維持するように動作する。
調停バス5は、一以上の演算装置4からの要求に加えて転送装置1からの要求も受付けるため、これらの要求の処理を管理する待ち行列を記憶する一時記憶領域を有する。要求の発生量に要求の処理速度が追いつかなくなると待ち行列が渋滞し、要求した処理が実行されるまでに時間がかかる場合がある。
演算装置4は、調停バス5を介してメモリコントローラ3に対して共有メモリ2内のエリアを指定して読み書きの要求をする装置である。図1に示す演算装置4は、2つであり、演算に用いる一時的な記憶領域としてそれぞれキャッシュメモリ41が備えられている。キャッシュメモリ41の記憶容量は、例えば1メガバイトである。
要求装置7は、ダイレクト・メモリ・アクセス(DMA)などと呼ばれる装置であり、転送装置1に対して共有メモリ2に格納されたデータの読み出し要求を送る装置である。
転送装置1は、要求装置7からの要求の内容に応じてデータの要求先を決めてそのデータを取得し、取得したそのデータを要求装置7に転送する装置である。
内部バス6は、要求装置7と転送装置1との情報伝達を中継するバスである。
1−2.転送装置の構成
転送装置1は、演算処理装置や、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置を必要に応じて備える。
図2は、転送装置1の機能的構成を示す図である。転送装置1は、受付部11、登録部12、取得部13、転送部14、監視部15、および記憶部16として機能する。
監視部15は、調停バス5からメモリコントローラ3へ伝えられた演算装置4の要求を監視する。
登録部12は、監視部15により監視された要求で指定されたエリアへの書き込み処理が完了しているか否かを調べ、完了していない場合に、このエリアを記憶部16の管理表161に登録する。
記憶部16は、上述したROMやRAMなどの記憶装置を含み、管理表161を記憶する。
図3は、管理表161の例を示す図である。管理表161は、監視部15によって監視された要求で指定されたエリアへの書き込み処理が完了していない場合に、その要求で指定されたエリアを登録する表である。図3(a)に示す通り、読み出しのための要求で指定された共有メモリ2内のエリアは、それぞれ固有の番号が付され、そのエリアの開始位置(SP)と書き込み回数(CT)とを含むレコードで記述される。書き込み回数とは、演算装置4が指定したエリアにデータを書き込んだ回数を示す。
演算装置4は、キャッシュメモリ41から共有メモリ2へデータを書き出す要求をするとき、指定したエリアの開始位置から書き込み処理を開始し、次にそのエリアへの書き込み処理を再開するときには、そのエリアに対して前回、書き込み処理がされた位置に続けて書き込むように要求する。したがって、書き込み処理はエリア内の開始位置ではない途中から開始されることはなく、エリア内で書き込み処理が完了した部分が2箇所以上に分離、遍在することはない。ただし、或るエリアに対する書き込み処理の途中で、他のエリアに対する書き込み処理が割り込まれることはあってもよい。管理表161に記述されるレコードの上限はn個である。
なお、エリアを示すレコードは、開始位置と書き込み回数との組合せで記述されるとは限らず、例えば、図3(b)に示す通り、開始位置(SP)と完了位置(EP)との組合せにより記述されてもよい。完了位置とは、監視部15によって要求が監視されたときまでに書き出されたデータ量の累計を開始位置に加算した値で示される。したがって、完了位置は、エリアへの書き込み処理の回数に応じた値の一例である。エリアに対する読み出し処理が行われた後、書き込み処理が行われていない場合、そのレコードの完了位置には、例えば開始位置と共通の位置が記入されるか、利用不可の値を示す「N/A」が記入される。
また、図3に破線で示す通り、各レコードには、エリアに対応付けられた通信路の識別情報を記述するフィールドが設けられていてもよい。これは、レコードが示すエリアに対するデータの要求が要求装置7から送られたときに、いずれの通信路を経由してデータを取得すべきかを示すフィールドである。このフィールドには、レコードが示すエリアへの書き込み処理が完了した場合であれば第1通信路P1が、それ以外の場合であれば第2通信路P2が、それぞれ登録部12により記述される。
例えば、転送装置1は、或るエリアに対する書き込み回数が決められた閾値に達すると、書き込み処理が完了したと判断して上記のフィールドに第1通信路P1を記述し、それ以外の場合には、書き込み処理が完了していないと判断して上記のフィールドに第2通信路P2を記述する。
或るエリアに対する書き込み回数が決められた閾値に達してから、そのエリアを示すレコードが管理表161から削除されるまで、すなわち、そのエリアが管理表161において解放されるまでの期間に、要求装置7からの要求がない場合、または、その要求が待機させられる場合には、このフィールドはなくてもよい。
図4は、共有メモリ2を説明するための図である。図4の一行目は共有メモリの全体を示している。上述した通り共有メモリ2は、決められたデータ量ごとに複数のエリアに区分されている。図4に示す共有メモリ2は、番号「1」から「m」までが割当てられたm個のエリアに区分されている。
なお、管理表161のレコードの上限nは、共有メモリ2のエリアの数m以下である(m≧n)。調停バス5における割り込みの上限が定められている場合、管理表161のレコードの上限nは、その割り込みの上限に応じて定められていてもよい。
図4の2行目は1つのエリアを示している。1つのエリアは決められた数の最小単位を含む。1つのエリアは、演算装置4のキャッシュメモリ41に相当する記憶容量を有するように構成されてもよい。
図4に示すエリアは、「0」から「k−1」までの「k」個の最小単位を含む。図4に示すエリアのうち、斜線を付した部分は、書き込み処理が完了した範囲を示す。したがって、図4に示す番号「2」のエリアは、書き込み回数が3回であり、開始位置から3つ分の最小単位について書き込み処理が完了している。
図4の3行目は1つの最小単位を示している。最小単位とは、メモリコントローラ3による一回の書き込み処理で、演算装置4のキャッシュメモリ41から共有メモリ2へ書き出されるデータであり、そのデータ量は例えば16バイトである。したがって、1つの最小単位内のデータは、全て書き込み処理が完了しているか、完了していないかのいずれかであり、1つの最小単位内で書き込み処理が完了しているデータと、完了していないデータとが共存するということはない。なお、共有メモリ2内のデータの位置は、バイト単位で記述される。
受付部11は、内部バス6を介して要求装置7から共有メモリ2に格納されたデータの要求を受付ける。受付部11は、このデータの要求を受付けると、その要求を取得部13に渡す。
取得部13は、受付部11が受付けた要求と、管理表161の登録内容とに基づいて、要求装置からの要求が登録されたエリアに対するものであるか否かを判断する。そして、取得部13は、その判断結果に応じて調停バス5およびメモリコントローラ3のいずれか一方をデータの要求先として選択し、選択したその要求先からデータを取得する。
取得部13は、判断の結果、要求装置7からの要求が管理表161に登録されたエリアに対するものでないと判断する場合に、第1通信路P1経由でメモリコントローラ3からデータを取得する。一方、取得部13は、要求装置7からの要求が管理表161に登録されたエリアに対するものであると判断する場合に、第2通信路P2経由で調停バス5からデータを取得する。
転送部14は、取得部13が取得したデータを、内部バス6経由で要求装置7に転送する。
1−3.転送システムの動作
図5は、転送システム9の動作を示すシーケンス図である。転送装置1は、電源が供給された直後の初期状態において、要求装置7から要求されたデータを第1通信路P1経由でメモリコントローラ3から取得するように設定されている。
いずれかの演算装置4から要求を受けた調停バス5は、その要求に基づいてメモリコントローラ3に対して共有メモリ2内のエリアを指定して読み書きの要求をする(ステップS001)。転送装置1は、ステップS001のこの要求を監視する(ステップS002)。そして、転送装置1は、この要求で指定されたエリアへの書き込み処理が完了していない場合に、このエリアを登録する(ステップS100)。この登録処理については後述する。
次に、要求装置7が転送装置1に対して、共有メモリ2内のいずれかのエリアを指定してデータの読み出しを要求すると(ステップS011)、この要求を受付けた転送装置1は、この要求の内容と、ステップS100で登録した内容とに応じて、データの要求先を選択し(ステップS012)、メモリコントローラ3または調停バス5のいずれかから(図5に実線で示す例ではメモリコントローラ3から)、要求装置7が要求したエリアのデータを取得する(ステップS013)。そして、転送装置1は、取得したデータを要求装置7に転送する(ステップS014)。
1−4.転送装置の動作
(1)登録処理の動作
図6は、転送装置1の登録処理の動作を示すフロー図である。転送装置1は、調停バス5からメモリコントローラ3に対して出力された要求を監視して、演算装置4からのメモリコントローラ3に対する読み出し処理または書き込み処理の要求を検出したか否か判断する(ステップS101)。これらの要求を検出していないと判断する場合(ステップS101;NO)、転送装置1は、この判断を続ける。
一方、調停バス5からメモリコントローラ3への読み出し処理または書き込み処理の要求を検出したと判断する場合(ステップS101;YES)、転送装置1は、検出された要求で指定されたエリアを特定する(ステップS102)。そして、転送装置1は、この要求が読み出し処理のためのものであるか否かを判断し(ステップS103)、読み出し処理のためのものであると判断する場合には(ステップS103;YES)ステップS104へ、読み出し処理のためのものでない(すなわち、書き出し処理のためのものである)と判断する場合には(ステップS103;NO)ステップS106へ、それぞれ処理を進める。
ステップS104において、転送装置1は、ステップS102で特定したエリアが管理表161に登録されていない、つまり、新規のエリア(新規エリアという)であるか否か判断する(ステップS104)。特定した上述のエリアが新規エリアであると判断する場合(ステップS104;YES)、転送装置1は、このエリアを管理表161に登録する。これにより、この新規エリアは、要求装置7に要求されたときに第2通信路P2経由で調停バス5からデータを取得すべきエリアとして設定される。
一方、特定した上述のエリアが新規エリアでないと判断する場合(ステップS104;NO)、転送装置1は、ステップS105の登録を行わずに処理をステップS101に戻す。
ステップS106において、転送装置1は、ステップS102で特定したエリアを管理表161から探し出し、このエリアが記述されたレコードの書き込み回数に「1」を加算する(ステップS106)。すなわち、転送装置1は、監視部15により書き込み処理の要求が監視されたときに、その要求で指定されたエリアへの書き込み処理の回数を計数する。
そして、転送装置1は、「1」が加算された後の書き込み回数に基づいて書き込み処理が完了したか否かを判断する(ステップS107)。この判断は、例えば、書き込み回数が決められた閾値に達しているか否かによって行われる。この決められた閾値とは、例えば、エリアのデータ量を最小単位で除算した値などであり、つまり、1つのエリアを全て上書きするために必要な書き込み処理の回数である。なお、図3におけるこの閾値は、16進数で「0xFFFF」と、10進数で「65535」と表記される数値である。
書き込み処理が完了したと判断する場合(ステップS107;YES)、転送装置1は、上述のエリアを解放して(ステップS108)、処理をステップS101に戻す。すなわち、転送装置1は、書き込み回数が決められた閾値に達した場合に、書き込み処理が完了したものとして、そのエリアを解放する。
一方、書き込み処理が完了していないと判断する場合(ステップS107;NO)、転送装置1は、そのまま処理をステップS101に戻す。
以上、説明した動作により、転送装置1は、演算装置4が読み出し処理のための要求で指定したエリアを記憶部16の管理表161に登録し、そのエリアに対する書き込み処理の回数に基づいて、書き込み処理が完了したか否かを判断して、書き込み処理が完了している場合に、登録されたそのエリアを解放する。
そして、転送装置1は、管理表161に登録されているエリアに対して、要求装置7からデータの要求があった場合、要求されたそのデータを第2通信路P2経由で調停バス5から取得し、それ以外のエリアに対して要求があった場合、要求されたそのデータを第1通信路P1経由でメモリコントローラ3から取得して、それぞれ要求装置7に転送する。
管理表161に登録されているエリアは、演算装置4が読み出し処理の要求をしたエリアであって、書き込み処理が完了していないエリアであるから、そのエリアに書き出されるべき最新のデータは未だ演算装置4のキャッシュメモリ41上にある可能性が高い。
したがって、転送装置1は、要求装置7が要求するデータが演算装置4のキャッシュメモリ41にある可能性が高い場合に、調停バス5からデータを取得して転送するため、共有メモリ2の一貫性が維持される。また、要求装置7が要求するデータが演算装置4のキャッシュメモリ41にある可能性がない場合にはメモリコントローラ3からデータを取得して転送するため、調停バス5からデータを取得する場合に比べて、データの転送速度が向上する。
2.変形例
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を組合せてもよい。
2−1.変形例1
上述した実施形態において、転送装置1は、管理表161においてエリアに対応付けられた書き込み回数を、書き込み処理が検知される度にインクリメントし、この書き込み回数が決められた閾値に達しているか否かで、このエリアに対する書き込み処理が完了しているか否かを判定していたが、転送装置1は、書き込み回数を計数しなくてもよい。
図7は、この変形例における管理表161の例を示す図である。また、図8は、この変形例における共有メモリ2を説明するための図である。この変形例において、共有メモリ2は、決められたデータ量ごとに複数のエリアに区分されており、そのデータ量は、最小単位のデータ量である。したがって、各エリアは最小単位で構成される。
この場合、図7で示したとおり管理表161には、読み出し処理のための要求が検出された各エリアについて、図3で示した書き込み回数を対応付けて記憶する必要がない。一回の書き込み処理により書き込まれるデータ量は最小単位のデータ量であるから、最小単位で構成されたエリアに対する書き込み処理には、その処理の「途中」が存在しないためである。したがって、読み出し処理のための要求が検出されたときに、その要求で指定されたエリアが管理表161に登録され、書き込み処理のための要求が検出されたときに、その要求で指定されたエリアが管理表161から解放される。
図9は、この変形例における転送装置1の登録処理の動作を示すフロー図である。この変形例において、転送装置1は、図5、図6にステップS100で示した登録処理に代えて、図9にステップS110で示した登録処理を実行する。
転送装置1は、調停バス5からメモリコントローラ3に対して出力された要求を監視して、演算装置4からのメモリコントローラ3に対する読み出し処理または書き込み処理の要求を検出したか否か判断する(ステップS111)。これらの要求を検出していないと判断する場合(ステップS111;NO)、転送装置1は、この判断を続ける。
一方、調停バス5からメモリコントローラ3への読み出し処理または書き込み処理の要求を検出したと判断する場合(ステップS111;YES)、転送装置1は、検出された要求で指定されたエリアを特定する(ステップS112)。そして、転送装置1は、この要求が読み出し処理のためのものであるか否かを判断し(ステップS113)、読み出し処理のためのものであると判断する場合には(ステップS113;YES)ステップS114へ、読み出し処理のためのものでないと判断する場合には(ステップS113;NO)ステップS118へ、それぞれ処理を進める。
ステップS114において、転送装置1は、ステップS112で特定したエリアが新規エリアであるか否か判断する(ステップS114)。特定した上述のエリアが新規エリアであると判断する場合(ステップS114;YES)、転送装置1は、このエリアを管理表161に登録する。一方、特定した上述のエリアが新規エリアでないと判断する場合(ステップS114;NO)、転送装置1は、ステップS115の登録を行わずに処理をステップS111に戻す。
ステップS118において、転送装置1は、ステップS112で特定したエリアが書き込み処理のための要求で指定されたものであり、その書き込み処理が実行されることによって、書き込み処理が完了したとして、このエリアを解放し(ステップS118)、処理をステップS111に戻す。
この変形例においても、転送装置1は、要求装置7が要求するデータが演算装置4のキャッシュメモリ41にある可能性が高い場合に、調停バス5からデータを取得して転送するため、共有メモリ2の一貫性が維持される。また、要求装置7が要求するデータが演算装置4のキャッシュメモリ41にある可能性がない場合にはメモリコントローラ3からデータを取得して転送するため、調停バス5からデータを取得する場合に比べて、データの転送速度が向上する。
なお、この変形例では、エリアが最小単位で構成されるため、書き込み回数や完了位置などをエリアごとに記憶する必要がない代わりに、管理表161に登録されるレコードの数が、実施形態で示した場合に比べて多くなる。調停バス5によって読み出されてから書き込まれるまでの期間に、並行してアクセスされる共有メモリ2のエリアの数が多くなると、管理表161を記憶する記憶容量を大きくする必要がある。
一方、実施形態で示した通り、共有メモリ2を構成する複数のエリアが、それぞれ複数の最小単位から構成されていると、この変形例に示した場合に比べて管理表161に登録されるレコードの数が抑制される。
2−2.変形例2
転送装置1を制御するためのプログラムは、磁気テープや磁気ディスクなどの磁気記録媒体、光ディスクなどの光記録媒体、光磁気記録媒体、半導体メモリなどの、コンピュータ装置が読み取り可能な記録媒体に記憶された状態で提供し得る。また、これらのプログラムを、インターネットなどを経由してダウンロードさせることも可能である。なお、上記の転送装置1の演算処理装置としては種々の装置が適用される場合があり、例えば、専用のプロセッサなどが用いられる。
1…転送装置、11…受付部、12…登録部、13…取得部、14…転送部、15…監視部、16…記憶部、161…管理表、2…共有メモリ、3…メモリコントローラ、4…演算装置、41…キャッシュメモリ、5…調停バス、6…内部バス、7…要求装置、9…転送システム、P1…第1通信路、P2…第2通信路。

Claims (4)

  1. 共有メモリ内の複数に区分された領域のうち、指定された領域に対して読み書きを行うメモリコントローラと通信する第1通信路と、
    一以上の演算装置からの要求を調停して、該要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と通信する第2通信路と、
    要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
    前記調停装置から前記メモリコントローラに対して出力された要求を監視して、該要求で指定された領域への書き込み処理が完了していない場合に、該領域を登録する登録手段と、
    前記要求装置の要求が、前記登録手段により登録された領域に対するものでない場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が該領域に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
    前記取得したデータを前記要求装置に転送する転送手段と、
    を有することを特徴とする転送装置。
  2. 前記登録手段は、前記要求が読み出し処理のための要求であり、かつ、該要求で指定された領域が登録されていない場合に、該領域を登録し、該要求が書き込み処理のための要求である場合に、該要求で指定された領域への書き込み処理の回数を計数し、該回数が閾値に達した場合に、書き込み処理が完了したものとして、該領域を解放する
    ことを特徴とする請求項1に記載の転送装置。
  3. 請求項1または2に記載の転送装置と、
    前記転送装置と前記第1通信路経由で通信し、共有メモリ内の指定された領域に対して読み書きを行うメモリコントローラと、
    装置間の要求を調停する装置であって、前記転送装置と前記第2通信路経由で通信し、一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と、
    前記転送装置に対して前記共有メモリに格納されたデータの要求を送る要求装置と、
    を有する転送システム。
  4. 共有メモリ内の複数に区分された領域のうち、指定された領域に対して読み書きを行うメモリコントローラと通信する第1通信路と、
    一以上の演算装置からの要求を調停して、該要求に基づいて前記メモリコントローラに対して前記共有メモリ内の領域を指定して読み書きの要求をする調停装置と通信する第2通信路と、
    を有するコンピュータを、
    要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
    前記調停装置から前記メモリコントローラに対して出力された要求を監視して、該要求で指定された領域への書き込み処理が完了していない場合に、該領域を登録する登録手段と、
    前記要求装置の要求が、前記登録手段により登録された領域に対するものでない場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が該領域に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
    前記取得したデータを前記要求装置に転送する転送手段
    として機能させるためのプログラム。
JP2015059372A 2015-03-23 2015-03-23 転送装置、転送システムおよびプログラム Expired - Fee Related JP6558008B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015059372A JP6558008B2 (ja) 2015-03-23 2015-03-23 転送装置、転送システムおよびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015059372A JP6558008B2 (ja) 2015-03-23 2015-03-23 転送装置、転送システムおよびプログラム

Publications (2)

Publication Number Publication Date
JP2016177751A true JP2016177751A (ja) 2016-10-06
JP6558008B2 JP6558008B2 (ja) 2019-08-14

Family

ID=57070064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015059372A Expired - Fee Related JP6558008B2 (ja) 2015-03-23 2015-03-23 転送装置、転送システムおよびプログラム

Country Status (1)

Country Link
JP (1) JP6558008B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019047579A1 (zh) * 2017-09-11 2019-03-14 华为技术有限公司 数据访问的方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003302A (ja) * 1998-06-15 2000-01-07 Hitachi Ltd 共有メモリ排他アクセス制御方法
JP2008140065A (ja) * 2006-11-30 2008-06-19 Toshiba Corp アクセス調停装置、アクセス調停方法、及び情報処理装置
JP2008140078A (ja) * 2006-11-30 2008-06-19 Toshiba Corp バスブリッジ装置、情報処理装置、およびデータ転送制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003302A (ja) * 1998-06-15 2000-01-07 Hitachi Ltd 共有メモリ排他アクセス制御方法
JP2008140065A (ja) * 2006-11-30 2008-06-19 Toshiba Corp アクセス調停装置、アクセス調停方法、及び情報処理装置
JP2008140078A (ja) * 2006-11-30 2008-06-19 Toshiba Corp バスブリッジ装置、情報処理装置、およびデータ転送制御方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019047579A1 (zh) * 2017-09-11 2019-03-14 华为技术有限公司 数据访问的方法及装置
CN109491587A (zh) * 2017-09-11 2019-03-19 华为技术有限公司 数据访问的方法及装置
US11119953B2 (en) 2017-09-11 2021-09-14 Huawei Technologies Co., Ltd. Data access method and apparatus for accessing shared cache in a memory access manner

Also Published As

Publication number Publication date
JP6558008B2 (ja) 2019-08-14

Similar Documents

Publication Publication Date Title
US9639469B2 (en) Coherency controller with reduced data buffer
JP5931196B2 (ja) I/oノード及び複数の計算ノードに備えられたキャッシュメモリの制御方法
US9619150B2 (en) Data arrangement control method and data arrangement control apparatus
US8725873B1 (en) Multi-server round robin arbiter
JP2014130420A (ja) 計算機システム及び計算機の制御方法
CN101604295A (zh) 优化基于目录的一致性协议中的并发访问
US10956205B2 (en) Data processing
CN110362426B (zh) 一种面向突发性负载的选择性副本实现方法及系统
US10664398B2 (en) Link-level cyclic redundancy check replay for non-blocking coherence flow
JP6558008B2 (ja) 転送装置、転送システムおよびプログラム
JP5158576B2 (ja) 入出力制御システム、入出力制御方法、及び、入出力制御プログラム
WO2018176397A1 (zh) 一种锁分配的方法、装置和计算设备
EP3788494B1 (en) Transfer protocol in a data processing network
JP6558009B2 (ja) 転送装置、転送システムおよびプログラム
CN114356839B (zh) 处理写操作的方法、设备、处理器及设备可读存储介质
EP3293625B1 (en) Method and device for accessing file, and storage system
JP4176933B2 (ja) 外部記憶装置ドライバプログラムを記録した記録媒体、及び外部記憶装置アクセス機能を有する計算機
US9201611B2 (en) Interface control apparatus, data storage apparatus and interface control method
US20170315941A1 (en) Bridge and method for coupling a requesting interconnect and a serving interconnect in a computer system
JPWO2010119932A1 (ja) マルチプロセッサシステム、マルチプロセッサシステムにおけるメモリ管理方法及び通信プログラム
US11422937B2 (en) Multiprocessor system and method for controlling shared memory
US20150058585A1 (en) Migrating and retrieving queued data in byte-addressable storage
JP6798211B2 (ja) 並列計算機システムおよび管理方法
JP6565729B2 (ja) 演算処理装置、制御装置、情報処理装置及び情報処理装置の制御方法
JPH07182213A (ja) ファイル共用システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180228

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190701

R150 Certificate of patent or registration of utility model

Ref document number: 6558008

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees