JP6558009B2 - 転送装置、転送システムおよびプログラム - Google Patents
転送装置、転送システムおよびプログラム Download PDFInfo
- Publication number
- JP6558009B2 JP6558009B2 JP2015059374A JP2015059374A JP6558009B2 JP 6558009 B2 JP6558009 B2 JP 6558009B2 JP 2015059374 A JP2015059374 A JP 2015059374A JP 2015059374 A JP2015059374 A JP 2015059374A JP 6558009 B2 JP6558009 B2 JP 6558009B2
- Authority
- JP
- Japan
- Prior art keywords
- range
- registered
- request
- data
- communication path
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Bus Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
請求項2に係る発明によれば、演算装置が書き出しのために指定した範囲を登録する数が閾値を超えない。
請求項3に係る発明によれば、調停装置から検出した範囲の方が既に登録されている範囲よりも評価が低いときに、既に登録した範囲を削除する必要がない。
請求項4に係る発明によれば、要求装置から要求される可能性が低い範囲が削除される。
請求項5に係る発明によれば、調停装置から検出した範囲と統合される可能性が低い範囲が削除される。
請求項6、7に係る発明によれば、登録された範囲を削除する必要がない。
1−1.転送システムの全体構成
図1は、本実施形態に係る転送システム9の全体構成を示す図である。図1に示すように、転送システム9は、転送装置1と、メモリコントローラ3と、調停バス5と、要求装置7とを有する。また、転送システム9は、共有メモリ2と、一以上の演算装置4と、内部バス6と、を有する。
転送装置1は、要求装置7からの要求の内容に応じてデータの要求先を決めてそのデータを取得し、取得したそのデータを要求装置7に転送する装置である。
内部バス6は、要求装置7と転送装置1との情報伝達を中継するバスである。
転送装置1は、演算処理装置や、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置を必要に応じて備える。
転送部14は、取得部13が取得したデータを、内部バス6経由で要求装置7に転送する。
図5は、転送システム9の動作を示すシーケンス図である。転送装置1は、電源が供給された直後の初期状態において、要求装置7から要求された範囲をメモリコントローラ3から取得するように設定されている。そして、演算装置4が読み出しのために指定した範囲を調停バス5から初めて検出したときに、転送装置1は、初期状態を脱して、要求装置7から要求された範囲を調停バス5から取得するように再設定される。演算装置4が調停バス5を介して読み出しを続け、読み出しの量がキャッシュメモリ41の記憶容量を超えると、演算装置4は、キャッシュメモリ41のうち、既に演算を終了して記憶する必要がなくなった記憶内容を共有メモリ2に書き出すため調停バス5を介してメモリコントローラ3へ要求する。
(1)登録処理の動作
図6は、転送装置1における登録処理の動作を示すフロー図である。転送装置1は、調停バス5からメモリコントローラ3への要求を監視することにより、演算装置4が書き出しのために指定した範囲を検出したか否か判断する(ステップS101)。演算装置4が書き出しのために指定した範囲を検出していないと判断する場合(ステップS101;NO)、転送装置1は、この判断を続ける。
図9は、上述した抑制処理の動作を示すフロー図である。ステップS200において、転送装置1は、管理表161に登録されている範囲(すなわち、第2範囲)のそれぞれについて予め決められた評価を行い、その評価に基づく評価値を特定する(ステップS201)。そして、転送装置1は、特定した評価値を相互に比較して、管理表161に登録されているレコードの中から最も評価の低いものを選択し(ステップS202)、選択したそのレコードを削除する(ステップS203)。
以上が実施形態の説明であるが、この実施形態の内容は以下のように変形し得る。また、以下の変形例を組合せてもよい。
上述した実施形態において、転送装置1は、新たに第1範囲を登録することによって、管理表161に登録されるレコードの数が予め決められた閾値を超過するか否か判断していたが、この判断は行わなくてもよい。この場合、管理表161に登録されるレコード数に上限を設けなくてもよい。例えば、管理表161に登録されるレコード数が或る数を超えないように、演算装置4の要求が調整されるように構成されていればよい。
上述した実施形態のステップS201において、転送装置1は、管理表161に登録されている第2範囲のそれぞれについて予め決められた評価を行い、その評価に基づく評価値を特定していたが、第1範囲についても評価値を特定し比較する対象に含めてもよい。
管理表161から上述したレコードを削除した後、転送装置1は、第1範囲を管理表161に追加して登録する(ステップS216)。
上述した実施形態において、評価値とは、管理表161に登録される範囲のデータ量に応じた値であったが、管理表161に登録される範囲の他の属性に応じた値であってもよい。例えば、評価値は、管理表161に登録される範囲の、他の範囲までの最短距離に応じた値であってもよい。この場合、他の範囲までの最短距離が長いものほど、その範囲に対する評価値を低くすればよい。この構成によれば、調停バス5から検出した範囲と統合される可能性が低い範囲から優先して削除される。
上述した実施形態において、転送装置1の検出部15は、調停バス5からメモリコントローラ3へ伝えられた演算装置4の要求を監視して、演算装置4が書き出しのために指定した共有メモリ2の範囲を検出していたが、演算装置4が読み出しのために指定した共有メモリ2の範囲を検出してもよい。
上述した実施形態において、転送装置1は、抑制処理をする際に、管理表161に登録されている第2範囲に対してそれぞれ特定した評価値を相互に比較して、その中から最も評価の低いものを選択して削除していたが、上述した変形例4においては、それらの評価値に基づいて、管理表161に登録されている第2範囲のレコードのうち、一つを選択し、選択した範囲と第1範囲とを統合して連続した一の範囲として再登録してもよい。
上述した変形例5では、評価値を特定する対象は、第2範囲のみであったが、第1範囲についても評価値を特定してもよい。そして、それらの評価値に基づいて第1範囲および第2範囲の中から二つの範囲を選択して、選択したその二つの範囲を統合して登録してもよい。この場合、評価値は、他の範囲との最短距離に応じた値であってもよい。
また、上述した変形例5では、選択した一つの第2範囲と第1範囲とを統合していたが、第1範囲を登録するとともに、二つの第2範囲を選択して、選択したこれら二つの第2範囲を統合してもよい。すなわち、転送装置1は、管理表161に登録されている第2範囲のそれぞれに対して、予め決められた評価を行い、その評価に基づく評価値を特定する。そして、転送装置1は、それらの評価値に基づいて、管理表161に登録されている第2範囲のレコードのうち、二つを選択し、選択したこれら二つの第2範囲を統合して連続した一の範囲として再登録してもよい。
転送装置1を制御するためのプログラムは、磁気テープや磁気ディスクなどの磁気記録媒体、光ディスクなどの光記録媒体、光磁気記録媒体、半導体メモリなどの、コンピュータ装置が読み取り可能な記録媒体に記憶された状態で提供し得る。また、これらのプログラムを、インターネットなどを経由してダウンロードさせることも可能である。なお、上記の転送装置1の演算処理装置としては種々の装置が適用される場合があり、例えば、専用のプロセッサなどが用いられる。
Claims (9)
- 共有メモリ内の指定された範囲に対して読み書きを行うメモリコントローラと通信する第1通信路と、
装置間の要求を調停する装置であって一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の範囲を指定して読み書きの要求をする調停装置と通信する第2通信路と、
要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
前記演算装置が書き出しのために指定した範囲を前記調停装置から検出して登録する登録手段と、
前記要求装置からの要求が登録された範囲に対するものである場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が登録されていない範囲に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
前記取得したデータを前記要求装置に転送する転送手段と、
を有し、
前記登録手段は、前記調停装置から検出した第1範囲が、登録されている第2範囲の少なくとも一部と重複するか、または該第2範囲と隣接する場合、該第1範囲と該第2範囲とを統合して連続した一の範囲として登録する
ことを特徴とする転送装置。 - 前記登録手段は、
前記調停装置から検出した第1範囲が、登録されている複数の第2範囲のいずれとも重複せず、隣接せず、かつ、複数の該第2範囲の数が閾値を超える場合に、複数の該第2範囲のそれぞれに対して、予め決められた評価に基づく評価値を特定し、該評価値が最も低いものを削除して、該第1範囲を登録する
ことを特徴とする請求項1に記載の転送装置。 - 前記登録手段は、
前記調停装置から検出した第1範囲が、登録されている複数の第2範囲のいずれとも重複せず、隣接せず、かつ、複数の該第2範囲の数が閾値を超える場合に、該第1範囲および複数の該第2範囲のそれぞれに対して、予め決められた評価に基づく評価値を特定し、該第1範囲に対する評価値が複数の前記第2範囲に対する評価値よりも低い場合に、該第1範囲を登録しない
ことを特徴とする請求項1に記載の転送装置。 - 前記登録手段は、前記範囲が示すデータ量に応じた値を前記範囲の評価値として特定し、該データ量が小さいものほど該評価値を低くする
ことを特徴とする請求項2または3に記載の転送装置。 - 前記登録手段は、他の範囲までの最短距離に応じた値を前記範囲の評価値として特定し、該最短距離が長いものほど該評価値を低くする
ことを特徴とする請求項2または3に記載の転送装置。 - 共有メモリ内の指定された範囲に対して読み書きを行うメモリコントローラと通信する第1通信路と、
装置間の要求を調停する装置であって一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の範囲を指定して読み書きの要求をする調停装置と通信する第2通信路と、
要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
前記演算装置が読み出しのために指定した範囲を前記調停装置から検出して登録する登録手段と、
前記要求装置からの要求が登録されていない範囲に対するものである場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が登録された範囲に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
前記取得したデータを前記要求装置に転送する転送手段と、
を有し、
前記登録手段は、前記調停装置から検出した第1範囲が、登録されている第2範囲の少なくとも一部と重複するか、または該第2範囲と隣接する場合、該第1範囲と該第2範囲とを統合して連続した一の範囲として登録し、
前記調停装置から検出した第1範囲が、登録されている複数の第2範囲のいずれとも重複せず、隣接せず、かつ、複数の該第2範囲の数が閾値を超える場合に、複数の該第2範囲のうち、該第1範囲との距離が最も近いものを該第1範囲と統合して連続した一の範囲として登録する
ことを特徴とする転送装置。 - 共有メモリ内の指定された範囲に対して読み書きを行うメモリコントローラと通信する第1通信路と、
装置間の要求を調停する装置であって一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の範囲を指定して読み書きの要求をする調停装置と通信する第2通信路と、
要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
前記演算装置が読み出しのために指定した範囲を前記調停装置から検出して登録する登録手段と、
前記要求装置からの要求が登録されていない範囲に対するものである場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が登録された範囲に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
前記取得したデータを前記要求装置に転送する転送手段と、
を有し、
前記登録手段は、前記調停装置から検出した第1範囲が、登録されている第2範囲の少なくとも一部と重複するか、または該第2範囲と隣接する場合、該第1範囲と該第2範囲とを統合して連続した一の範囲として登録し、
前記調停装置から検出した第1範囲が、登録されている複数の第2範囲のいずれとも重複せず、隣接せず、かつ、複数の該第2範囲の数が閾値を超える場合に、該第1範囲を登録するとともに、複数の該第2範囲のうち、互いの距離が最も近い二つの範囲を統合して連続した一の範囲として登録する
ことを特徴とする転送装置。 - 請求項1から7のいずれか1項に記載の転送装置と、
前記転送装置と前記第1通信路経由で通信し、共有メモリ内の指定された範囲に対して読み書きを行うメモリコントローラと、
装置間の要求を調停する装置であって、前記転送装置と前記第2通信路経由で通信し、一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の範囲を指定して読み書きの要求をする調停装置と、
前記転送装置に対して前記共有メモリに格納されたデータの要求を送る要求装置と、
を有する転送システム。 - 共有メモリ内の指定された範囲に対して読み書きを行うメモリコントローラと通信する第1通信路と、
装置間の要求を調停する装置であって一以上の演算装置からの要求に基づいて前記メモリコントローラに対して前記共有メモリ内の範囲を指定して読み書きの要求をする調停装置と通信する第2通信路と、
を有するコンピュータを、
要求装置から前記共有メモリに格納されたデータの要求を受付ける受付手段と、
前記演算装置が書き出しのために指定した範囲を前記調停装置から検出して登録する登録手段と、
前記要求装置からの要求が登録された範囲に対するものである場合に、前記第1通信路経由で前記メモリコントローラから前記データを取得し、該要求が登録されていない範囲に対するものである場合に、前記第2通信路経由で前記調停装置から前記データを取得する取得手段と、
前記取得したデータを前記要求装置に転送する転送手段、 として機能させるとともに、
前記調停装置から検出した第1範囲が、登録されている第2範囲の少なくとも一部と重複するか、または該第2範囲と隣接する場合、該第1範囲と該第2範囲とを統合して連続した一の範囲として登録するように、前記登録手段を機能させるためのプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015059374A JP6558009B2 (ja) | 2015-03-23 | 2015-03-23 | 転送装置、転送システムおよびプログラム |
US14/840,403 US9870326B2 (en) | 2015-03-23 | 2015-08-31 | Transfer apparatus, transfer system, and non-transitory computer readable medium |
CN201510641496.5A CN105991756B (zh) | 2015-03-23 | 2015-09-30 | 传输装置、传输***以及传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015059374A JP6558009B2 (ja) | 2015-03-23 | 2015-03-23 | 転送装置、転送システムおよびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016177752A JP2016177752A (ja) | 2016-10-06 |
JP6558009B2 true JP6558009B2 (ja) | 2019-08-14 |
Family
ID=56976679
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015059374A Expired - Fee Related JP6558009B2 (ja) | 2015-03-23 | 2015-03-23 | 転送装置、転送システムおよびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9870326B2 (ja) |
JP (1) | JP6558009B2 (ja) |
CN (1) | CN105991756B (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109491587B (zh) | 2017-09-11 | 2021-03-23 | 华为技术有限公司 | 数据访问的方法及装置 |
JP7463855B2 (ja) | 2020-06-04 | 2024-04-09 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置及びプログラム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63285649A (ja) * | 1987-05-19 | 1988-11-22 | Fujitsu Ltd | 空き領域管理処理方法 |
JP3965784B2 (ja) * | 1998-06-15 | 2007-08-29 | 株式会社日立製作所 | 共有メモリ排他アクセス制御方法 |
US7353301B2 (en) * | 2004-10-29 | 2008-04-01 | Intel Corporation | Methodology and apparatus for implementing write combining |
US7624236B2 (en) * | 2004-12-27 | 2009-11-24 | Intel Corporation | Predictive early write-back of owned cache blocks in a shared memory computer system |
US7353319B2 (en) * | 2005-06-02 | 2008-04-01 | Qualcomm Incorporated | Method and apparatus for segregating shared and non-shared data in cache memory banks |
JP2008140078A (ja) * | 2006-11-30 | 2008-06-19 | Toshiba Corp | バスブリッジ装置、情報処理装置、およびデータ転送制御方法 |
JP2008140065A (ja) * | 2006-11-30 | 2008-06-19 | Toshiba Corp | アクセス調停装置、アクセス調停方法、及び情報処理装置 |
-
2015
- 2015-03-23 JP JP2015059374A patent/JP6558009B2/ja not_active Expired - Fee Related
- 2015-08-31 US US14/840,403 patent/US9870326B2/en active Active
- 2015-09-30 CN CN201510641496.5A patent/CN105991756B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US20160283414A1 (en) | 2016-09-29 |
CN105991756A (zh) | 2016-10-05 |
CN105991756B (zh) | 2019-04-05 |
JP2016177752A (ja) | 2016-10-06 |
US9870326B2 (en) | 2018-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8606997B2 (en) | Cache hierarchy with bounds on levels accessed | |
KR102429404B1 (ko) | 상이한 캐시 레벨에서의 캐시라인의 상태를 모니터하기 위한 쉐도우 태그 메모리 | |
US7177987B2 (en) | System and method for responses between different cache coherency protocols | |
CN106104502B (zh) | 用于存储***事务的***、方法和介质 | |
US9619150B2 (en) | Data arrangement control method and data arrangement control apparatus | |
JP4474570B2 (ja) | キャッシュコヒーレンシ制御方法 | |
US10482033B2 (en) | Method and device for controlling memory | |
US6842828B2 (en) | Methods and arrangements to enhance an upbound path | |
US7533223B1 (en) | System and method for handling memory requests in a multiprocessor shared memory system | |
JP6558009B2 (ja) | 転送装置、転送システムおよびプログラム | |
WO2009110168A1 (ja) | Dma転送装置 | |
US20100058001A1 (en) | Distributed shared memory multiprocessor and data processing method | |
JP4295814B2 (ja) | マルチプロセッサシステム及びマルチプロセッサシステムの動作方法 | |
CN110036376A (zh) | 无分配高速缓存策略 | |
WO2016206463A1 (zh) | 一种写操作控制方法、装置及*** | |
US8296525B1 (en) | Method and apparatus for data-less bus query | |
JP2018129074A5 (ja) | ストレージシステム、およびストレージシステムの制御方法 | |
CN107967220A (zh) | 具有对高速缓存线拥有者cpu的跟踪的多cpu设备 | |
JP6558008B2 (ja) | 転送装置、転送システムおよびプログラム | |
US20140365736A1 (en) | Hardware Based Cache Scan with Divert Node Handling | |
US8677041B2 (en) | Balancing loads of a plurality of bus lanes of a snooping-based bus using a receiver, analyzer, and controller | |
JP4295815B2 (ja) | マルチプロセッサシステムおよびマルチプロセッサシステムの動作方法 | |
JPH0415494B2 (ja) | ||
KR20200127793A (ko) | 메모리 장치의 캐시 시스템 및 캐시 시스템의 데이터 캐싱 방법 | |
JPS6336531B2 (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: 20190115 |
|
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: 6558009 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 |