JP2019164411A - Management device, information processing device, management method, and program - Google Patents
Management device, information processing device, management method, and program Download PDFInfo
- Publication number
- JP2019164411A JP2019164411A JP2018050512A JP2018050512A JP2019164411A JP 2019164411 A JP2019164411 A JP 2019164411A JP 2018050512 A JP2018050512 A JP 2018050512A JP 2018050512 A JP2018050512 A JP 2018050512A JP 2019164411 A JP2019164411 A JP 2019164411A
- Authority
- JP
- Japan
- Prior art keywords
- management
- access
- area
- storage unit
- unit
- 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
Links
Images
Abstract
Description
本発明の実施形態は、管理装置、情報処理装置、管理方法、およびプログラムに関する。 Embodiments described herein relate generally to a management apparatus, an information processing apparatus, a management method, and a program.
MRAM(Magnetoresistive Random Access Memory)、ReRAM(Resistive RAM)、PCM(Phase−Change Memory)などの各種のストレージクラスメモリ(SCM)が開発されている。SCMは、DRAM(Dynamic Random Access Memory)に比べてアクセス速度は遅いが、集積度が高い。一方、DRAMは、SCMに比べて集積度は低いが、アクセス速度が速い。このため、複数種類のメモリを搭載したシステムの場合、これらのメモリを使い分けて用いる必要がある。 Various storage class memories (SCM) such as MRAM (Magnetic Resistive Random Access Memory), ReRAM (Resistive RAM), and PCM (Phase-Change Memory) have been developed. SCM has a slower access speed than DRAM (Dynamic Random Access Memory), but has a high degree of integration. On the other hand, DRAM is less integrated than SCM but has a high access speed. For this reason, in the case of a system equipped with a plurality of types of memories, it is necessary to use these memories separately.
しかし、従来では、DRAMのみをメインメモリに用いることを前提としていたため、複数の種類のメモリに対するデータの割当てに用いる情報が管理されていなかった。例えば、アクセス済であるか否かを示す情報を、ページ単位でページテーブルに記録する方法が開示されている。しかし、従来では、ページ内の何れの領域にアクセスがなされたかの管理がなされておらず、従来管理されている情報では、複数種類のメモリに対するデータの割当てを定めることは困難であった。 However, conventionally, since it is assumed that only DRAM is used as the main memory, information used for data allocation to a plurality of types of memories has not been managed. For example, a method is disclosed in which information indicating whether access has been made is recorded in a page table in units of pages. However, conventionally, it has not been managed which area in the page has been accessed, and it has been difficult to determine the allocation of data to a plurality of types of memory using information that has been conventionally managed.
本発明が解決しようとする課題は、複数種類のメモリに対するデータの割当てに用いる情報を提供することの可能な、管理装置、情報処理装置、管理方法、およびプログラムを提供することである。 The problem to be solved by the present invention is to provide a management device, an information processing device, a management method, and a program capable of providing information used for data allocation to a plurality of types of memories.
実施形態の管理装置は、処理回路による複数種類の記憶部に対するアクセスを管理する。前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含む。管理装置は、管理テーブルを管理する管理部を備える。管理テーブルは、前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付ける。 The management apparatus according to the embodiment manages access to a plurality of types of storage units by a processing circuit. The storage unit includes a plurality of first areas, and the first area includes a plurality of second areas. The management device includes a management unit that manages a management table. The management table indicates whether the second area has been accessed by the processing circuit for each of the identification information of the first area and each of the plurality of second areas included in the first area. Corresponds to the access management information that defines the information.
以下に添付図面を参照して、本実施の形態の詳細を説明する。 Details of the present embodiment will be described below with reference to the accompanying drawings.
図1は、本実施の形態の情報処理装置10の構成の一例を示す模式図である。情報処理装置10は、処理回路12と、管理装置18と、キャッシュメモリ16と、記憶部14と、を備える。
FIG. 1 is a schematic diagram illustrating an example of the configuration of the
処理回路12とキャッシュメモリ16、処理回路12と管理装置18、キャッシュメモリ16と管理装置18、および管理装置18と記憶部14の各々は、データや信号を授受可能に接続されている。
The
処理回路12は、1または複数のプロセッサを有する。プロセッサは、例えば、CPU(Central Processing Unit)である。プロセッサは、1または複数のCPUコアを含んでいてもよい。処理回路12は、プログラムの実行に応じて、記憶部14からのデータ読出しや、記憶部14へのデータ書込みを行う。
The
処理回路12および後述する管理装置18は、記憶部14に記憶されているデータをキャッシュメモリ16に一時的に記憶し、処理に用いる。
The
記憶部14は、処理回路12による作業領域として用いられるメインメモリである。本実施の形態の情報処理装置10は、複数種類の記憶部14を備える。すなわち、本実施の形態の情報処理装置10は、複数種類の記憶部14を、メインメモリとして用いる。
The
複数種類の記憶部14は、処理回路12によるアクセス速度が互いに異なる。なお、以下では、処理回路12によるアクセス速度を、単にアクセス速度と称して説明する場合がある。また、アクセス速度は、アクセス遅延とも呼ばれることもある。アクセス速度が速いというのは、アクセス遅延時間が短いことである。
The plurality of types of
本実施の形態では、情報処理装置10は、アクセス速度の異なる複数種類の記憶部14として、第1記憶部14Aと、第2記憶部14Bと、を備える。なお、情報処理装置10は、3種類以上の記憶部14を備えた構成であってもよい。
In the present embodiment, the
第1記憶部14Aは、第2記憶部14Bに比べてアクセス速度が速い。また、本実施の形態では、第1記憶部14Aは、第2記憶部14Bより集積度が低い。
The
第1記憶部14Aは、例えば、揮発性メモリである。具体的には、第1記憶部14Aは、DRAM(Dynamic Random Acces Memory)である。なお、第1記憶部14Aは、DRAMと同様に高速アクセスが可能な、MRAM(Magnetoresistive Random Acces Memory)等の不揮発メモリであってもよい。
The
一方、第2記憶部14Bは、第1記憶部14Aに比べてアクセス速度が遅い。また、本実施の形態では、第2記憶部14Bは、第1記憶部14Aより容量が大きい。
On the other hand, the
第2記憶部14Bは、例えば、不揮発性メモリである。具体的には、第2記憶部14Bは、DRAMより大容量な大容量高速不揮発メモリ(Non−volatile Memory)である。
The
更に具体的には、第2記憶部14Bは、MRAM、PCM(Phase Change Memory)、PRAM(Phase Random Access Memory)、PCRAM(Phase Change Random Access Memory)、ReRAM(Resistance Change Random Access Memory)、FeRAM(Ferroelectric Random Access Memory)、3DXPointまたはMemristorなどである。
More specifically, the
また、第2記憶部14Bは、いわゆるストレージクラスメモリ(SCM)と呼ばれるメモリであってもよい。また、第2記憶部14Bは、複数の半導体装置を1つの基板または筐体等に設けたモジュールであってもよい。
The
本実施の形態では、第1記憶部14AがDRAMであり、第2記憶部14BがSCMである場合を、一例として説明する。なお、第1記憶部14Aのアクセス速度が第2記憶部14Bより速ければよく、これらの組合せは、第1記憶部14AがDRAMであり第2記憶部14BがSCMである形態に限定されない。例えば、第1記憶部14AがMRAMであり、第2記憶部14BがReRAMであってもよい。
In the present embodiment, a case where the
なお、第1記憶部14Aおよび第2記憶部14Bを総称して説明する場合には、単に、記憶部14と称して説明する。
Note that when the
記憶部14は、複数の第1領域を含む。第1領域は、複数の第2領域を含む。言い換えると、本実施の形態では、処理回路12および管理装置18が、第1記憶部14Aおよび第2記憶部14Bを、第1領域毎に管理すると共に、第1領域内の第2領域ごとに管理する。
The
図2は、処理回路12から見た物理アドレス空間を示す模式図である。
FIG. 2 is a schematic diagram showing a physical address space viewed from the
図2に示すように、第1記憶部14Aおよび第2記憶部14Bは、それぞれ、複数の第1領域を含む。
As shown in FIG. 2, each of the
第1領域は、例えば、処理回路12によるデータの管理単位(例えば、ページ)である。なお、第1領域は、処理回路12によるデータの管理単位の所定数倍の単位などであってもよい。本実施の形態では、第1領域が、ページに相当する場合を、一例として説明する。
The first area is, for example, a data management unit (for example, a page) by the
第2領域は、第1領域より小さい領域である。例えば、第2領域は、処理回路12による記憶部14に対するアクセスに伴うデータの書き換え単位である。具体的には、第2領域は、キャッシュラインと呼ばれる単位である。キャッシュラインは、キャッシュメモリ16に対するデータの書き換え単位に対応する。すなわち、処理回路12からのメモリアクセス要求を受けた管理装置18は、キャッシュラインの単位で、第1記憶部14Aまたは第2記憶部14Bにアクセスする。
The second area is an area smaller than the first area. For example, the second area is a data rewrite unit associated with access to the
キャッシュラインは、例えば、64バイトである。なお、第2領域は、キャッシュラインよりも小さい単位(例えば、バイト単位)であってもよい。また、第2領域は、キャッシュラインのサイズの所定数倍の単位などであってもよい。 The cache line is, for example, 64 bytes. The second area may be a unit (for example, byte unit) smaller than the cache line. The second area may be a unit of a predetermined number of times the size of the cache line.
本実施の形態では、処理回路12および管理装置18は、図2に示す物理アドレス空間15にマッピングされた第1記憶部14Aおよび第2記憶部14B内の領域を、第1領域のサイズ(例えば、ページサイズ)に区切って管理する。そして、処理回路12および管理装置18は、ページテーブルを用いて論理アドレスから物理アドレスに変換することで、仮想記憶を実現する。
In the present embodiment, the
また、本実施の形態では、処理回路12および管理装置18は、第1領域内を第2領域のサイズ(例えば、キャッシュライン)に区切って管理する。
In the present embodiment, the
このように、本実施の形態の情報処理装置10は、複数種類の記憶部14の各々を、第1領域(例えばページ単位)より細かい単位である第2領域(例えばキャッシュライン)ごとに、管理可能に構成されている。
As described above, the
図1に戻り、説明を続ける。管理装置18は、処理回路12による、複数種類の記憶部14(第1記憶部14A、第2記憶部14B)に対するアクセスを管理する。管理装置18は、メモリ管理ユニット(MMU:Memory Management Unit)と称される場合がある。
Returning to FIG. 1, the description will be continued. The management device 18 manages access to a plurality of types of storage units 14 (
管理装置18は、アクセス制御部20と、管理部22と、を有する。管理部22は、更新部24と、決定部26と、転送部28と、管理情報記憶部30と、を有する。
The management device 18 includes an
更新部24、決定部26、および転送部28は、例えば、ハードウェア(論理回路)により実現される。また、更新部24、決定部26、および転送部28は、1または複数のプロセッサにより実現してもよい。例えば、更新部24、決定部26、および転送部28の少なくとも1つは、CPUなどのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。また、更新部24、決定部26、および転送部28の少なくとも1つは、専用のIC(Integrated Circuit)などのハードウェアにより実現してもよい。また、更新部24、決定部26、および転送部28は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、これらの更新部24、決定部26、および転送部28のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
The
アクセス制御部20は、処理回路12から受付けたメモリアクセス要求を処理する。メモリアクセス要求は、処理回路12から記憶部14に対するアクセス要求である。メモリアクセス要求は、記憶部14へのデータ書込み、または記憶部14からのデータ読出しを示す。メモリアクセス要求は、アクセス対象の記憶部14の第1領域のアドレス情報および第2領域のアドレス情報を含む。これらのアドレス情報は、論理アドレスによって表される。
The
アクセス制御部20は、処理回路12から受付けたメモリアクセス要求によって示されるアクセス対象のデータがキャッシュメモリ16に格納されていない場合、記憶部14へアクセスする。この場合、アクセス制御部20は、処理回路12から受付けたメモリアクセス要求によって示される、アクセス対象の記憶部14における第1領域内の第2領域にアクセスする。そして、管理装置18は、アクセスした該第2領域に対して、メモリアクセス要求によって示される処理(書込みや読出し)を実行する。
The
具体的には、処理回路12から受付けたメモリアクセス要求が特定の第2領域への書込みを示す場合がある。この場合、アクセス制御部20は、メモリアクセス要求に示される、アクセス対象の記憶部14における、アクセス対象の第1領域内の第2領域に、メモリアクセス要求に示されるデータを書込む。また、処理回路12から受付けたメモリアクセス要求が特定の第2領域からのデータ読出しを示す場合がある。この場合、アクセス制御部20は、メモリアクセス要求に示される、アクセス対象の記憶部14における、アクセス対象の第1領域内の第2領域からデータを読出し、キャッシュメモリ16に格納するとともに、処理回路12へ出力する。
Specifically, the memory access request received from the
次に、管理部22について説明する。管理部22は、管理テーブル30Aを管理する。図3は、管理テーブル30Aのデータ構成の一例を示す模式図である。
Next, the
管理テーブル30Aは、第1領域の識別情報と、アクセス管理情報と、を対応付けたテーブルである。第1領域の識別情報は、第1記憶部14Aおよび第2記憶部14Bの各々の第1領域を識別するための情報である。
The management table 30A is a table in which the identification information of the first area is associated with the access management information. The identification information of the first area is information for identifying the first areas of the
本実施の形態では、上述したように第1領域がページに相当する場合を説明する。このため、本実施の形態では、第1領域の識別情報が、ページ番号である場合を一例として説明する。 In the present embodiment, as described above, a case where the first area corresponds to a page will be described. For this reason, in this Embodiment, the case where the identification information of a 1st area | region is a page number is demonstrated as an example.
また、本実施の形態では、管理テーブル30Aに登録されている第1領域の識別情報は、論理アドレスによって表される。すなわち、本実施の形態では、第1領域の識別情報は論理アドレス空間におけるページ番号で表される。このため、情報処理装置10では、ページテーブルにおける論理アドレスに対応する物理アドレスを特定することで、管理テーブル30Aに示されるページ番号が、何れの種類の記憶部14(第1記憶部14A、第2記憶部14B)におけるページ番号を示すかを特定可能である。
In the present embodiment, the identification information of the first area registered in the management table 30A is represented by a logical address. That is, in the present embodiment, the identification information of the first area is represented by a page number in the logical address space. For this reason, in the
アクセス管理情報は、対応するページ番号によって識別される第1領域に含まれる複数の第2領域の各々ごとに、アクセス情報を規定したものである。 The access management information defines access information for each of a plurality of second areas included in the first area identified by the corresponding page number.
アクセス情報は、第2領域が処理回路12によってアクセス済であるか否かを示すフラグである。図3に示す例では、アクセス情報“0”は、処理回路12によるアクセス未の第2領域を示す。また、アクセス情報“1”は、処理回路12によるアクセス済の第2領域を示す。
The access information is a flag indicating whether or not the second area has been accessed by the
図3には、一例として、1ページ(1つの第1領域)に対して、16個の第2領域としてのキャッシュラインが割り当てられた例を示した。例えば、1ページ(第1領域)のサイズが4Kバイトであると仮定する。また、第2領域であるキャッシュラインのサイズが64バイトであると仮定する。この場合、1つの第1領域は、64個の第2領域を有することとなる。また、管理テーブル30Aには、ページ番号によって識別される第1領域ごとに、64個の第2領域の各々のアクセス情報を規定したアクセス管理情報が、規定された状態となる。 FIG. 3 shows an example in which 16 cache lines as second areas are assigned to one page (one first area). For example, assume that the size of one page (first area) is 4K bytes. Further, it is assumed that the size of the cache line which is the second area is 64 bytes. In this case, one first region has 64 second regions. In the management table 30A, the access management information that defines the access information of each of the 64 second areas is defined for each first area identified by the page number.
図1に戻り説明を続ける。管理部22は、更新部24と、決定部26と、転送部28と、管理情報記憶部30と、を有する。管理情報記憶部30は、管理テーブル30Aを記憶する。
Returning to FIG. The
更新部24は、処理回路12からメモリアクセス要求を受付けたときに、管理テーブル30Aを更新する。詳細には、更新部24は、管理テーブル30Aにおける、メモリアクセス要求に示されるアクセス対象の第1領域を示すページ番号に対応する、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する。
When the
具体的には、処理回路12から受付けたメモリアクセス要求に示されるアクセス対象のデータが、キャッシュメモリ16に格納されていなかったと仮定する。この場合、アクセス制御部20が、該メモリアクセス要求に基づいて記憶部14へアクセスする。すると、更新部24は、アクセス制御部20から該メモリアクセス要求を受付ける。
Specifically, it is assumed that the access target data indicated in the memory access request received from the
そして、更新部24は、受付けたメモリアクセス要求に基づいて、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新する。
Then, the
なお、更新部24は、メモリアクセス要求が記憶部14へのデータ書込みを示す場合にのみ、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。また、更新部24は、メモリアクセス要求が記憶部14からのデータ読出しを示す場合にのみ、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。また、更新部24は、メモリアクセス要求が記憶部14へのデータ書込みまたは記憶部14からのデータ読出しを示す場合に、処理回路12によってアクセスされた第2領域のアクセス情報を、アクセス未“0”からアクセス済“1”に更新してもよい。
Note that the
このように、更新部24は、処理回路12によって記憶部14からデータの読出しや、データの書込み、などのアクセスが実行されるごとに、管理テーブル30Aのアクセス情報を更新する。
In this way, the
このため、管理テーブル30Aには、処理回路12がどのようなメモリアクセス要求を発行したかを示すアクセスパターンが、登録されることとなる。
Therefore, an access pattern indicating what kind of memory access request is issued by the
なお、メモリアクセス要求に示される第1領域のアドレス情報によって示されるページ番号が、管理テーブル30Aに存在しない場合がある。すなわち、メモリアクセス要求に示される、アクセス対象の第1領域のエントリが、管理テーブル30Aに存在しない場合がある。 Note that the page number indicated by the address information of the first area indicated in the memory access request may not exist in the management table 30A. That is, the entry of the first area to be accessed indicated in the memory access request may not exist in the management table 30A.
この場合、更新部24は、新たなエントリ(ページ番号とアクセス管理情報との対)を作成し、管理テーブル30Aに登録する必要がある。ここで、管理テーブル30Aに登録されるエントリの数には、上限がある。このため、管理テーブル30Aに空のエントリが無い場合には、更新部24は、管理テーブル30Aに登録されている何れかのエントリを解放し、新たなエントリを作成すればよい。
In this case, the
解放対象のエントリの特定方法には、公知の方法を用いればよい。例えば、更新部24は、LRU(Least Recently Used)などのアルゴリズムを用いて、解放対象のエントリを特定することが好ましい。この方法を用いることで、更新部24は、最も使われていないエントリや、長期間使われていないエントリや、参照頻度の低いエントリを、解放対象のエントリとして特定することができる。
A known method may be used as a method for specifying the entry to be released. For example, the
そして、更新部24は、新たに作成したエントリ(以下、新エントリと称する場合がある)に、受付けたメモリアクセス要求に示される第1領域のページ番号を登録し、対応するアクセス管理情報における全ての第2領域のアクセス情報として、アクセス未“0”を登録する。そして、更新部24は、管理テーブル30Aにおける新たに作成した新エントリにおける、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新すればよい。
Then, the
決定部26は、管理テーブル30Aにおけるアクセス管理情報に基づいて、該管理テーブル30Aにおけるページ番号によって識別される第1領域内のデータの、転送先を決定する。なお、本実施の形態では、“転送”とは、コピーを意味する。 Based on the access management information in the management table 30A, the determination unit 26 determines the transfer destination of the data in the first area identified by the page number in the management table 30A. In the present embodiment, “transfer” means copying.
すなわち、決定部26は、管理テーブル30Aにおける、ページ番号の各々に対応するアクセス管理情報を用いて、対応するページ番号によって識別される第1領域内のデータの最適な管理方法を決定する。 That is, the determination unit 26 uses the access management information corresponding to each page number in the management table 30A to determine the optimal management method for the data in the first area identified by the corresponding page number.
例えば、決定部26は、所定時間ごとに、アクセス管理情報に基づいて第1領域の各々のデータの転送先を決定する。また、決定部26は、更新部24が管理テーブル30Aのエントリを解放するときに、解放対象のエントリのページ番号によって識別される第1領域内のデータの転送先を、該エントリのアクセス管理情報に基づいて決定してもよい。また、決定部26は、所定時間ごと、および、管理テーブル30Aのエントリの解放時、の双方のタイミングで、データの転送先を決定してもよい。
For example, the determination unit 26 determines the transfer destination of each data in the first area based on the access management information every predetermined time. In addition, when the
本実施の形態では、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第1閾値以上のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14より処理回路12によるアクセス速度の速い他の種類の記憶部14に決定する。なお、現在データの記憶されている記憶部14が最もアクセス速度の速い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第1閾値以上のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第1記憶部14Aに決定する。
In the present embodiment, the determination unit 26 determines whether the number of access information indicating “1” that has been accessed in the management table 30 </ b> A corresponds to the access management information that is equal to or greater than the first threshold, in the first area identified by the page number. Is transferred to another type of
第1閾値は、予め定めればよい。第1閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/2以上の値であることが好ましく、2/3以上の値であることが好ましい。 The first threshold may be determined in advance. For example, the first threshold value is preferably a value equal to or greater than ½ of the number of second areas included in one page (first area), and is preferably a value equal to or greater than 2/3.
アクセス済“1”を示すアクセス情報の数が第1閾値以上の第1領域は、処理回路12によるメモリアクセスのローカリティ(局所性)が高いと推測される。このため、決定部26は、このような第1領域内のデータについて、現在記憶されている記憶部14より、処理回路12によるアクセス速度の速い他の記憶部14を、転送先として決定する。
It is estimated that the first area where the number of pieces of access information indicating “1” that has been accessed is equal to or greater than the first threshold has high locality of memory access by the
例えば、アクセス済“1”を示すアクセス情報の数が第1閾値以上の第1領域内のデータが、第2記憶部14Bに記憶されていると仮定する。この場合、決定部26は、第2記憶部14Bよりアクセス速度の速い第1記憶部14Aを、該データの転送先として決定する。該データを第1記憶部14Aへ転送した場合、処理回路12は、第2記憶部14Bに比べてよりアクセス速度の速い第1記憶部14Aにアクセスすることで、該データへアクセスすることが可能となる。
For example, it is assumed that data in the first area where the number of access information indicating “1” that has been accessed is equal to or greater than the first threshold is stored in the
一方、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第2閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14、または現在記憶されている記憶部14より処理回路12によるアクセス速度の遅い他の種類の記憶部14に決定する。なお、現在データの記憶されている記憶部14が最もアクセス速度の遅い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の数が第2閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第2記憶部14Bに決定する。
On the other hand, the determination unit 26 transfers the data in the first area identified by the page number corresponding to the access management information in which the number of access information indicating “1” being accessed is less than the second threshold in the management table 30A. The destination is determined as the currently stored
第2閾値は、第1閾値以下の値である。第2閾値は、予め定めればよい。第2閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/2以下の値であることが好ましく、1/3以下の値であることが好ましい。 The second threshold is a value equal to or less than the first threshold. The second threshold may be determined in advance. For example, the second threshold is preferably a value that is ½ or less of the number of second regions included in one page (first region), and is preferably a value that is 1 / or less.
アクセス済“1”を示すアクセス情報の数が第2閾値未満の第1領域は、処理回路12によるメモリアクセスのローカリティが低いと推測される。このため、決定部26は、このような第1領域内のデータについて、現在記憶されている記憶部14、または、現在記憶されている記憶部14より処理回路12によるアクセス速度が遅い他の記憶部14を、転送先として決定する。
In the first area where the number of pieces of access information indicating “1” that has been accessed is less than the second threshold value, the locality of memory access by the
例えば、アクセス済“1”を示すアクセス情報の数が第2閾値未満の第1領域内のデータが、第1記憶部14Aに記憶されていると仮定する。この場合、決定部26は、第1記憶部14Aよりアクセス速度の遅い第2記憶部14Bを、該データの転送先として決定する。該データを第2記憶部14Bへ転送した場合、処理回路12は、第1記憶部14Aに比べてよりアクセス速度の遅い第2記憶部14Bへアクセスすることで、該データへアクセスすることが可能となる。
For example, it is assumed that data in the first area where the number of pieces of access information indicating “1” being accessed is less than the second threshold is stored in the
なお、決定部26によるデータの転送先の決定方法は、上記に限定されない。 Note that the method of determining the data transfer destination by the determination unit 26 is not limited to the above.
例えば、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報が第3閾値以上連続するアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14よりアクセス速度の速い他の種類の記憶部14に決定してもよい。なお、上記と同様に、現在データの記憶されている記憶部14が最もアクセス速度の速い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報が第3閾値以上連続するアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第1記憶部14Aに決定する。
For example, the determination unit 26 transfers the data in the first area identified by the page number corresponding to the access management information in which the access information indicating “1” that has been accessed continues for the third threshold or more in the management table 30A May be determined as another type of
アクセス済“1”を示すアクセス情報が第3閾値以上連続する、とは、アクセス済“1”を示すアクセス情報を規定された第2領域が、第1領域内のアドレス順に第3閾値以上隣接且つ連続して配置された状態を示す。 Access information indicating “1” that has been accessed continues for the third threshold or more. The second area in which the access information that indicates “1” that has been accessed is specified is adjacent to the third threshold or more in the order of addresses in the first area. And the state arrange | positioned continuously is shown.
第3閾値は、予め定めればよい。第3閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/4以上の値であることが好ましい。 The third threshold may be determined in advance. The third threshold value is preferably a value equal to or greater than ¼ of the number of second regions included in one page (first region), for example.
一方、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の連続数が第4閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14または現在記憶されている記憶部14よりアクセス速度の遅い他の種類の記憶部14に決定してもよい。なお、上記と同様に、現在データの記憶されている記憶部14が最もアクセス速度の遅い記憶部である場合がある。この場合、決定部26は、データの記憶されている現在の記憶部14を、データの転送先として決定すればよい。本実施の形態では、具体的には、決定部26は、管理テーブル30Aにおける、アクセス済“1”を示すアクセス情報の連続数が第4閾値未満のアクセス管理情報に対応する、ページ番号によって識別される第1領域内のデータの転送先を、第2記憶部14Bに決定する。
On the other hand, the determination unit 26 stores the data in the first area identified by the page number corresponding to the access management information in which the number of consecutive access information indicating “1” being accessed is less than the fourth threshold in the management table 30A. The transfer destination may be determined as the currently stored
第4閾値は、第3閾値以下の値である。第4閾値は、予め定めればよい。第4閾値は、例えば、1ページ(第1領域)内に含まれる第2領域の数の1/8以下の値であることが好ましい。 The fourth threshold value is a value equal to or smaller than the third threshold value. The fourth threshold may be determined in advance. For example, the fourth threshold value is preferably 1/8 or less of the number of second areas included in one page (first area).
次に、転送部28について説明する。転送部28は、決定部26によって決定された記憶部14へ、決定部26によって該記憶部14を転送先として決定された第1領域内のデータを転送する。
Next, the
転送部28がデータを転送するタイミングは、限定されない。例えば、転送部28は、決定部26によって転送先が決定されるごとに、決定された記憶部14へ、該記憶部14を転送先として決定された第1領域内のデータを転送してもよい。
The timing at which the
また、転送部28は、決定部26による転送先の記憶部14の決定から所定期間経過した後の所定のタイミングで、データを転送してもよい。例えば、転送部28は、処理回路12による記憶部14へのアクセスが少ない期間に、データの転送を行ってもよい。
The
このように、転送部28が、決定部26によって決定された記憶部14へ、決定部26によって該記憶部14を転送先として決定された第1領域内のデータを転送することで、以下の効果が得られる。すなわち、転送部28は、決定部26によって決定された転送先の記憶部14に、ユーザの作業を介することなく、自動的にデータを転送(すなわち、割当てる)ことができる。
As described above, the
そして、転送部28は、ページテーブルにおける、転送した第1領域の論理アドレスに対応する物理アドレスを、転送先の記憶部14の格納先を示す物理アドレスに更新する。このため、処理回路12は、転送先の記憶部14に直接アクセスすることが可能となる。なお、ページテーブルの更新は、決定部26が行ってもよい。
Then, the
次に、本実施の形態の情報処理装置10が実行する情報処理の手順の一例を説明する。図4は、情報処理装置10が実行する情報処理の手順の一例を示すフローチャートである。
Next, an example of an information processing procedure executed by the
まず、更新部24が、処理回路12からアクセス制御部20を介してメモリアクセス要求を受付けたか否かを判断する(ステップS100)。ステップS100で否定判断すると(ステップS100:No)、本ルーチンを終了する。ステップS100で肯定判断すると(ステップS100:Yes)、ステップS102へ進む。
First, the updating
ステップS102では、更新部24が、ステップS100で受付けたメモリアクセス要求に示される第1領域のアドレス情報によって示されるページ番号を含むエントリが、管理テーブル30Aにあるか否かを判断する(ステップS102)。更新部24は、ステップS100で受付けたメモリアクセス要求に含まれる、アクセス対象の第1領域のページ番号が管理テーブル30Aに登録されているか否かを判別することで、ステップS102の判断を行う。
In step S102, the updating
ステップS102で肯定判断すると(ステップS102:Yes)、後述するステップS126へ進む。ステップS102で否定判断すると(ステップS102:No)、ステップS104へ進む。 If a positive determination is made in step S102 (step S102: Yes), the process proceeds to step S126 described later. If a negative determination is made in step S102 (step S102: No), the process proceeds to step S104.
ステップS104では、更新部24が、管理テーブル30Aにおける、解放対象のエントリを特定する(ステップS104)。
In step S104, the
次に、決定部26が、ステップS104で特定したエントリにおけるアクセス管理情報について、アクセス済“1”を示すアクセス情報の数が第1閾値以上であるか否かを判断する(ステップS106)。 Next, the determination unit 26 determines whether or not the number of pieces of access information indicating “1” that has been accessed is greater than or equal to the first threshold for the access management information in the entry identified in step S104 (step S106).
アクセス済“1”を示すアクセス情報の数が第1閾値以上である場合(ステップS106:Yes)、ステップS108へ進む。ステップS108では、決定部26が、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14(例えば、第2記憶部14B)より処理回路12によるアクセス速度の速い他の種類の記憶部14(例えば、第1記憶部14A)に決定する(ステップS108)。
If the number of pieces of access information indicating “1” already accessed is equal to or greater than the first threshold (step S106: Yes), the process proceeds to step S108. In step S108, the determination unit 26 stores the transfer destination of the data in the first area identified by the page number included in the entry specified in step S104 as the currently stored storage unit 14 (for example, the second storage unit). 14B) is determined to be another type of storage unit 14 (for example, the
次に、転送部28が、ステップS108で決定された記憶部14(例えば、第1記憶部14A)へ、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータを転送する(ステップS110)。
Next, the
次に、転送部28が、ページテーブルにおける、ステップS110で転送した第1領域の論理アドレスに対応する物理アドレスを、ステップS110で転送した転送先の記憶部14(例えば、第1記憶部14A)の格納先を示す物理アドレスに更新する(ステップS112)。このため、処理回路12は、該データにアクセスする場合には、第1記憶部14Aにアクセスすることで、該データにアクセスすることが可能となる。そして、後述するステップS122へ進む。
Next, the
なお、ステップS112のページテーブルの更新は、決定部26がステップS108の処理の後に実行してもよい。また、ステップS112では、転送部28は、処理回路12が該データにアクセスする場合に第1記憶部14Aに直接アクセスすることが可能となる処理を実行すればよく、ページテーブルを更新する処理に限定されない。
The page table update in step S112 may be executed by the determination unit 26 after the process in step S108. In step S112, the
一方、上記ステップS106の判断により、アクセス済“1”を示すアクセス情報の数が第1閾値未満と判断すると(ステップS106:No)、ステップS114へ進む。そして、決定部26は、ステップS104で特定したエントリにおけるアクセス管理情報について、アクセス済“1”を示すアクセス情報の数が第2閾値未満であるか否かを判断する(ステップS114)。第2閾値以上である場合(ステップS114:No)、後述するステップS122へ進む。第2閾値未満である場合(ステップS114:Yes)、ステップS116へ進む。 On the other hand, if it is determined in step S106 that the number of pieces of access information indicating “1” already accessed is less than the first threshold (step S106: No), the process proceeds to step S114. Then, the determination unit 26 determines whether or not the number of pieces of access information indicating “1” that has been accessed is less than the second threshold for the access management information in the entry identified in step S104 (step S114). When it is equal to or greater than the second threshold (step S114: No), the process proceeds to step S122 described later. When it is less than the second threshold (step S114: Yes), the process proceeds to step S116.
ステップS116では、決定部26が、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータの転送先を、現在記憶されている記憶部14(例えば、第2記憶部14B)に決定する(ステップS116)。なお、上述したように、該ページ番号によって識別される第1領域内のデータが第1記憶部14Aに記憶されている場合には、決定部26は、第2記憶部14Bを転送先に決定すればよい。
In step S116, the determination unit 26 determines the transfer destination of the data in the first area identified by the page number included in the entry specified in step S104 as the currently stored storage unit 14 (for example, the second storage unit). 14B) (step S116). As described above, when the data in the first area identified by the page number is stored in the
そして、転送部28は、ステップS116で決定された記憶部14(例えば、第2記憶部14B)へ、ステップS104で特定したエントリに含まれるページ番号によって識別される第1領域内のデータを転送する(ステップS118)。
Then, the
次に、転送部28が、ページテーブルにおける、ステップS118で転送した第1領域の論理アドレスに対応する物理アドレスを、ステップS118で転送した転送先の記憶部14(例えば、第2記憶部14B)の格納先を示す物理アドレスに更新する(ステップS120)。
Next, the
このため、処理回路12は、該データにアクセスする場合には、第2記憶部14Bにアクセスすることで、該データにアクセスすることが可能となる。そして、ステップS122へ進む。なお、ステップS118の処理前に、既に第2記憶部14Bに該データが記憶されている場合には、ステップS118およびステップS120の処理は省略してよい。
Therefore, when accessing the data, the
なお、ステップS120のページテーブルの更新は、決定部26がステップS116の処理の後に実行してもよい。また、ステップS120では、転送部28は、処理回路12が該データにアクセスする場合に第2記憶部14Bに直接アクセスすることが可能となる処理を実行すればよく、ページテーブルを更新する処理に限定されない。
The page table update in step S120 may be executed by the determination unit 26 after the process in step S116. In step S120, the
ステップS122では、更新部24が、管理テーブル30Aにおける、ステップS104で特定したエントリを解放する(ステップS122)。そして、更新部24は、新エントリを管理テーブル30Aに登録する(ステップS124)。ステップS124では、更新部24は、ステップS100で受付けたメモリアクセス要求に示される第1領域のページ番号と、全ての第2領域のアクセス情報をアクセス未“0”としたアクセス管理情報と、を対応づけた、新エントリを登録する。
In step S122, the
次に、更新部24は、管理テーブル30Aにおける、ステップS100で受付けたメモリアクセス要求に示されるアクセス対象の第1領域を示すページ番号に対応する、該メモリアクセス要求に示されるアクセス対象の第2領域のアクセス情報を、アクセス済“1”に更新する(ステップS126)。そして、本ルーチンを終了する。
Next, the updating
以上説明したように、本実施の形態の管理装置18は、処理回路12による複数種類の記憶部14に対するアクセスを管理する。記憶部14は、複数の第1領域を含み、第1領域は複数の第2領域を含む。管理装置18は、管理部22を備える。管理部22は、管理テーブル30Aを管理する。管理テーブル30Aは、第1領域の識別情報(ページ番号)と、第1領域に含まれる複数の第2領域の各々ごとに、第2領域が処理回路12によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けたテーブルである。
As described above, the management device 18 according to the present embodiment manages access to a plurality of types of
このように、本実施の形態の管理装置18では、複数種類の記憶部14の各々について、第1領域より細かい単位である第2領域ごとに、処理回路12によってアクセス済であるか否かを示すアクセス情報を管理する。このため、複数種類の記憶部14の各々について、ページなどの第1領域内の、何れの第2領域に処理回路12によるアクセスがなされたか、を容易に管理することができる。
As described above, in the management device 18 according to the present embodiment, whether or not each of the plurality of types of
従って、本実施の形態の管理装置18は、複数種類のメモリ(記憶部14)に対するデータの割当てに用いる情報を提供することができる。 Therefore, the management device 18 according to the present embodiment can provide information used for data allocation to a plurality of types of memories (storage unit 14).
ここで、複数種類の記憶部14をメインメモリとして用いる場合、処理回路12によるアクセスのパターンに応じて、複数種類の記憶部14の各々にデータを割当てて用いることが要求される場合があった。
Here, when a plurality of types of
例えば、SCMはDRAMより大容量であるが、アクセス速度が遅い。このため、処理回路12によるアクセスの特性に合わせて、データを複数種類の記憶部14に割当てて格納すれば、処理回路12は、効率よくデータ処理を行うことが可能となる。
For example, although the SCM has a larger capacity than the DRAM, the access speed is slow. For this reason, if data is allocated and stored in a plurality of types of
例えば、処理回路12によるアクセスのローカリティが低くサイズの大きいデータを、SCMに配置し、処理回路12がSCMにダイレクトにアクセスする。すると、処理回路12は、効率よくデータ処理を行うことが可能となる。また、アクセスのローカリティの高いデータを、SCMよりアクセス速度の速いDRAMに配置し、処理回路12がDRAM上のデータにアクセスする。すると、処理回路12は、効率よくデータ処理を行うことが可能となる。
For example, data with low locality of access by the
しかし、従来では、複数種類の記憶部14に対して、どのようにデータを分散させて格納すれば効率が良いかを判断するのは困難な作業であり、複雑なプログラミングが必要であった。
Conventionally, however, it is difficult to determine how efficiently data is distributed and stored in a plurality of types of
また、アクセス済であるか否かを示す情報を、ページ単位でページテーブルに記録する方法では、複数種類のメモリに対するデータの割当てに用いる情報としては不十分であり、処理回路12によるアクセスのパターンを詳細に検出することの可能な情報を提供することは困難であった。
In addition, the method of recording information indicating whether or not access has been performed in the page table in units of pages is insufficient as information used for data allocation to a plurality of types of memories, and an access pattern by the
一方、本実施の形態の管理装置18では、複数種類の記憶部14の各々について、第1領域より細かな粒度(例えば、64バイトのキャッシュラインのサイズなど)である第2領域ごとに、処理回路12によるアクセスのパターンを示すアクセス管理情報を管理する。
On the other hand, in the management apparatus 18 according to the present embodiment, each of the plurality of types of
このため、本実施の形態の管理装置18は、複数種類のメモリに対するデータの割当てに用いる情報を提供することができる。 For this reason, the management apparatus 18 of this Embodiment can provide the information used for allocation of the data with respect to multiple types of memory.
(変形例1)
なお、上記実施の形態では、管理テーブル30Aが、論理アドレスによって表される第1領域の識別情報(ページ番号)と、アクセス管理情報と、を対応づけたものである場合を説明した。
(Modification 1)
In the above embodiment, the case has been described where the management table 30A associates the identification information (page number) of the first area represented by the logical address with the access management information.
しかし、管理テーブル30Aは、更に、物理アドレスを対応づけたものであってもよい。 However, the management table 30A may further be associated with physical addresses.
図5は、本実施の形態の管理テーブル30Bのデータ構成の一例を示す模式図である。管理テーブル30Bは、第1領域の識別情報としての論理アドレスと、記憶部14における該第1領域の物理アドレスと、アクセス管理情報と、を対応づけた構成であってもよい。この場合、管理情報記憶部30は、管理テーブル30Aに代えて管理テーブル30Bを記憶すればよい(図1参照)。
FIG. 5 is a schematic diagram illustrating an example of a data configuration of the management table 30B according to the present embodiment. The management table 30B may have a configuration in which a logical address as identification information of the first area, a physical address of the first area in the
管理テーブル30Bを、図5に示すデータ構成とすることで、管理テーブル30Aに、ページテーブルのキャッシュとして機能するTLB(Translation Lookaside Buffer)を統合して管理することができる。すなわち、論理アドレスを検索キーとして用いることで、TLBの有する物理アドレスと、アクセス管理情報と、の双方を検索することが可能となる。このため、管理テーブル30Bを用いることで、論理アドレスによって表されるページ番号を検索キーとしてエントリを検索する、連想記憶のためのハードウェアを共有することが可能となる。 When the management table 30B has the data configuration shown in FIG. 5, a TLB (Translation Lookaside Buffer) that functions as a page table cache can be integrated and managed in the management table 30A. That is, by using a logical address as a search key, it is possible to search both the physical address of the TLB and the access management information. Therefore, by using the management table 30B, it is possible to share hardware for associative memory that searches for an entry using a page number represented by a logical address as a search key.
(変形例2)
図6は、本変形例の情報処理装置10Aの一例を示す模式図である。図6に示すように、情報処理装置10Aの処理回路12Aが、キャッシュメモリ16および管理装置18を備えた構成であってもよい。処理回路12Aは、内部にキャッシュメモリ16および管理装置18を備えた点以外は、上記実施の形態の処理回路12と同様である。
(Modification 2)
FIG. 6 is a schematic diagram illustrating an example of an
(変形例3)
図7は、本変形例の情報処理装置10Bの一例を示す模式図である。図7に示すように、管理装置18Aが、キャッシュメモリ16、アクセス制御部20、管理部22、および記憶部14を備えた構成であってもよい。
(Modification 3)
FIG. 7 is a schematic diagram illustrating an example of the
以上、本発明の実施の形態および変形例を説明したが、これらの実施の形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形例は、発明の範囲や要旨に含まれるとともに、請求の範囲に記載された発明とその均等の範囲に含まれる。 As mentioned above, although embodiment and the modification of this invention were demonstrated, these embodiment and the modification are shown as an example, and are not intending limiting the range of invention. These novel embodiments and modifications can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the spirit of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.
10、10A、10B 情報処理装置
12、12A 処理回路
14 記憶部
18,18A 管理装置
22 管理部
24 更新部
26 決定部
28 転送部
10, 10A, 10B
Claims (15)
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部、
を備えた管理装置。 A management device for managing access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. A management unit that manages a management table that associates access management information with each other;
Management device with.
前記処理回路からメモリアクセス要求を受付けたときに、
前記管理テーブルにおける、
前記メモリアクセス要求に示される、アクセス対象の前記第2領域の前記アクセス情報を、アクセス済に更新する更新部を有する、
請求項1に記載の管理装置。 The management unit
When a memory access request is received from the processing circuit,
In the management table,
An update unit configured to update the access information of the second area to be accessed, which is indicated in the memory access request, to be accessed;
The management apparatus according to claim 1.
前記処理回路によるアクセス速度が互いに異なる、
請求項1または請求項2に記載の管理装置。 The plurality of types of storage units are
The access speeds by the processing circuits are different from each other.
The management apparatus according to claim 1 or 2.
前記管理テーブルにおける前記アクセス管理情報に基づいて、前記識別情報によって識別される前記第1領域内のデータの転送先を決定する決定部を有する、
請求項1〜請求項3の何れか1項に記載の管理装置。 The management unit
A determination unit that determines a transfer destination of data in the first area identified by the identification information based on the access management information in the management table;
The management apparatus of any one of Claims 1-3.
請求項4に記載の管理装置。 The plurality of types of storage units include a first storage unit, and a second storage unit having a slower access speed by the processing circuit than the first storage unit,
The management device according to claim 4.
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の数が第1閾値以上の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第1の記憶部に決定する、
請求項5に記載の管理装置。 The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the number of the access information indicating accessed is equal to or greater than a first threshold is set to the first Determine the storage part of
The management device according to claim 5.
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の数が第2閾値未満の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第2の記憶部に決定する、
請求項5または請求項6に記載の管理装置。 The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the number of the access information indicating accessed is less than a second threshold is set to the second Determine the storage part of
The management apparatus according to claim 5 or 6.
前記管理テーブルにおける、アクセス済を示す前記アクセス情報が第3閾値以上連続する前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、前記第1の記憶部に決定する、
請求項5に記載の管理装置。 The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the access information indicating that access has been continued is equal to or greater than a third threshold value, Determine the storage part,
The management device according to claim 5.
前記管理テーブルにおける、アクセス済を示す前記アクセス情報の連続数が第4閾値未満の前記アクセス管理情報に対応する、前記識別情報によって識別される前記第1領域内のデータの転送先を、該データの記憶されている前記記憶部または該データの記憶されている前記記憶部より前記処理回路によるアクセス速度の遅い他の種類の前記記憶部に決定する、
請求項5または請求項8に記載の管理装置。 The determination unit
In the management table, a transfer destination of data in the first area identified by the identification information corresponding to the access management information in which the continuous number of the access information indicating access is less than a fourth threshold is represented by the data The storage unit is stored or the storage unit of the data is determined to be another type of the storage unit whose access speed by the processing circuit is slower than the storage unit.
The management device according to claim 5 or 8.
前記決定部によって決定された前記記憶部へ、該記憶部を転送先として決定された前記第1領域内のデータを転送する転送部を有する、
請求項4〜請求項9の何れか1項に記載の管理装置。 The management unit
A transfer unit that transfers data in the first area determined using the storage unit as a transfer destination to the storage unit determined by the determination unit;
The management apparatus according to any one of claims 4 to 9.
前記第1領域の識別情報としての論理アドレスと、前記記憶部における前記第1領域の物理アドレスと、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応づけてなる、
請求項1〜請求項10の何れか1項に記載の管理装置。 The management table is
For each of the logical address as identification information of the first area, the physical address of the first area in the storage unit, and the plurality of second areas included in the first area, the second area is the Corresponding access management information that defines access information indicating whether or not it has been accessed by the processing circuit,
The management apparatus of any one of Claims 1-10.
前記第2領域は、前記処理回路による前記記憶部に対するデータの書き換え単位である、
請求項1〜請求項11の何れか1項に記載の管理装置。 The first area is a data management unit by the processing circuit;
The second area is a data rewrite unit for the storage unit by the processing circuit.
The management apparatus according to any one of claims 1 to 11.
複数種類の記憶部と、
前記処理回路による前記記憶部に対するアクセスを管理する管理装置と、
を備え、
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記管理装置は、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理部を有する、
情報処理装置。 A processing circuit;
Multiple types of storage units;
A management device for managing access to the storage unit by the processing circuit;
With
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The management device
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. A management unit that manages a management table that associates access management information with
Information processing device.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップを含む、
管理方法。 A management method in a management device for managing access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. Including a management step for managing a management table that associates access management information with
Management method.
前記記憶部は複数の第1領域を含み、前記第1領域は複数の第2領域を含み、
前記第1領域の識別情報と、前記第1領域に含まれる複数の前記第2領域の各々ごとに、前記第2領域が前記処理回路によってアクセス済であるか否かを示すアクセス情報を規定したアクセス管理情報と、を対応付けた管理テーブルを管理する管理ステップを含む、
プログラム。 A program for causing a computer to manage access to a plurality of types of storage units by a processing circuit,
The storage unit includes a plurality of first areas, the first area includes a plurality of second areas,
The identification information of the first area and the access information indicating whether or not the second area has been accessed by the processing circuit are defined for each of the plurality of second areas included in the first area. Including a management step for managing a management table that associates access management information with
program.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018050512A JP2019164411A (en) | 2018-03-19 | 2018-03-19 | Management device, information processing device, management method, and program |
US16/121,337 US10725675B2 (en) | 2018-03-19 | 2018-09-04 | Management apparatus, information processing apparatus, management method, and computer program product |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018050512A JP2019164411A (en) | 2018-03-19 | 2018-03-19 | Management device, information processing device, management method, and program |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2021016614A Division JP7024127B2 (en) | 2021-02-04 | 2021-02-04 | Management equipment, information processing equipment, management methods, and programs |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2019164411A true JP2019164411A (en) | 2019-09-26 |
Family
ID=68066218
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018050512A Pending JP2019164411A (en) | 2018-03-19 | 2018-03-19 | Management device, information processing device, management method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2019164411A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11188238B2 (en) | 2018-09-12 | 2021-11-30 | Kabushiki Kaisha Toshiba | Information processing apparatus, memory control method, and computer program product |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008155815A1 (en) * | 2007-06-19 | 2008-12-24 | Fujitsu Limited | Information processor and cache control method |
US20120166733A1 (en) * | 2010-12-22 | 2012-06-28 | Naveen Cherukuri | Apparatus and method for improving data prefetching efficiency using history based prefetching |
JP2014116031A (en) * | 2008-05-28 | 2014-06-26 | Micron Technology Inc | Electronic system with memory device |
JP2015184794A (en) * | 2014-03-20 | 2015-10-22 | 株式会社東芝 | cache memory system and processor system |
JP2017045153A (en) * | 2015-08-24 | 2017-03-02 | 富士通株式会社 | Arithmetic processing device and method for controlling arithmetic processing device |
JP2017138852A (en) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | Information processing device, storage device and program |
JP2017138853A (en) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | Information processor and program |
-
2018
- 2018-03-19 JP JP2018050512A patent/JP2019164411A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008155815A1 (en) * | 2007-06-19 | 2008-12-24 | Fujitsu Limited | Information processor and cache control method |
JP2014116031A (en) * | 2008-05-28 | 2014-06-26 | Micron Technology Inc | Electronic system with memory device |
US20120166733A1 (en) * | 2010-12-22 | 2012-06-28 | Naveen Cherukuri | Apparatus and method for improving data prefetching efficiency using history based prefetching |
JP2015184794A (en) * | 2014-03-20 | 2015-10-22 | 株式会社東芝 | cache memory system and processor system |
JP2017045153A (en) * | 2015-08-24 | 2017-03-02 | 富士通株式会社 | Arithmetic processing device and method for controlling arithmetic processing device |
JP2017138852A (en) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | Information processing device, storage device and program |
JP2017138853A (en) * | 2016-02-04 | 2017-08-10 | 株式会社東芝 | Information processor and program |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11188238B2 (en) | 2018-09-12 | 2021-11-30 | Kabushiki Kaisha Toshiba | Information processing apparatus, memory control method, and computer program product |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7091203B2 (en) | Memory system and control method | |
CN107636625B (en) | Method and apparatus for virtualization control of shared system cache | |
JP6118285B2 (en) | Cache memory system and processor system | |
US9075730B2 (en) | Mechanisms to bound the presence of cache blocks with specific properties in caches | |
JP5528554B2 (en) | Block-based non-transparent cache | |
KR102423713B1 (en) | Use of multiple memory elements in the input-output memory management unit to perform virtual address to physical address translation | |
TW201917584A (en) | Memory system and method for controlling nonvolatile memory | |
JP6088951B2 (en) | Cache memory system and processor system | |
JP6027562B2 (en) | Cache memory system and processor system | |
US9990283B2 (en) | Memory system | |
US10180796B2 (en) | Memory system | |
US9977604B2 (en) | Memory system | |
US11126573B1 (en) | Systems and methods for managing variable size load units | |
KR102540752B1 (en) | No allocation cache policy | |
JP5976225B2 (en) | System cache with sticky removal engine | |
US20170109070A1 (en) | Memory system | |
US20170109043A1 (en) | Memory system | |
JP2020046761A (en) | Management device, information processing apparatus and memory control method | |
US20170109074A1 (en) | Memory system | |
US20170109061A1 (en) | Memory system | |
JP2019164411A (en) | Management device, information processing device, management method, and program | |
US10725675B2 (en) | Management apparatus, information processing apparatus, management method, and computer program product | |
JP7024127B2 (en) | Management equipment, information processing equipment, management methods, and programs | |
JP6786541B2 (en) | Management equipment, information processing equipment, management methods, and programs | |
US9977605B2 (en) | Memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190808 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200521 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200609 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200805 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200825 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201020 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20201110 |