JP7128822B2 - メモリシステムリソースの分割または性能監視 - Google Patents
メモリシステムリソースの分割または性能監視 Download PDFInfo
- Publication number
- JP7128822B2 JP7128822B2 JP2019536947A JP2019536947A JP7128822B2 JP 7128822 B2 JP7128822 B2 JP 7128822B2 JP 2019536947 A JP2019536947 A JP 2019536947A JP 2019536947 A JP2019536947 A JP 2019536947A JP 7128822 B2 JP7128822 B2 JP 7128822B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- partition
- partition identifier
- transaction
- data
- 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.)
- Active
Links
- 238000012544 monitoring process Methods 0.000 title claims description 70
- 238000000638 solvent extraction Methods 0.000 title claims description 43
- 238000005192 partition Methods 0.000 claims description 480
- 238000012545 processing Methods 0.000 claims description 89
- 230000004044 response Effects 0.000 claims description 34
- 238000013507 mapping Methods 0.000 claims description 26
- 239000000872 buffer Substances 0.000 claims description 21
- 238000013519 translation Methods 0.000 claims description 14
- 230000001419 dependent effect Effects 0.000 claims description 9
- 238000003672 processing method Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 description 60
- 230000008569 process Effects 0.000 description 46
- 238000013459 approach Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 9
- 238000013468 resource allocation Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 6
- 230000001960 triggered effect Effects 0.000 description 6
- 230000000903 blocking effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 230000006399 behavior Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 238000007667 floating Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000005259 measurement Methods 0.000 description 4
- 238000011144 upstream manufacturing Methods 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 238000002372 labelling Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012913 prioritisation Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- WBMKMLWMIQUJDP-STHHAXOLSA-N (4R,4aS,7aR,12bS)-4a,9-dihydroxy-3-prop-2-ynyl-2,4,5,6,7a,13-hexahydro-1H-4,12-methanobenzofuro[3,2-e]isoquinolin-7-one hydrochloride Chemical compound Cl.Oc1ccc2C[C@H]3N(CC#C)CC[C@@]45[C@@H](Oc1c24)C(=O)CC[C@@]35O WBMKMLWMIQUJDP-STHHAXOLSA-N 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
- G06F12/1045—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/466—Transaction processing
- G06F9/467—Transactional memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
- G06F9/526—Mutual exclusion algorithms
- G06F9/528—Mutual exclusion algorithms by using speculative mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1021—Hit rate improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/68—Details of translation look-aside buffer [TLB]
- G06F2212/684—TLB miss handling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Storage Device Security (AREA)
- Memory System (AREA)
Description
命令を処理するための処理回路と、
データにアクセスするためのメモリトランザクションを処理するための少なくとも1つのメモリシステム構成要素と、
命令パーティション識別子とデータパーティション識別子とを格納するパーティション識別子ストレージと、
を備える装置が提供され、
データにアクセスするためのメモリトランザクションを発行するとき、処理回路は、パーティション識別子ストレージに格納されたデータパーティション識別子に依存してパーティション識別子を指定するメモリトランザクションを発行するように構成され、
命令にアクセスするためのメモリトランザクションを発行するとき、処理回路は、パーティション識別子ストレージに格納された命令パーティション識別子に依存してパーティション識別子を指定するメモリトランザクションを発行するように構成され、
処理されるメモリトランザクションに応答して、前記少なくとも1つのメモリシステム構成要素は、メモリトランザクションによって指定されたパーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じてメモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データがメモリトランザクションに応答して更新されるかどうかを制御するように構成される。
命令を処理するための手段と、
データにアクセスするためのメモリトランザクションを処理するための手段と、
命令パーティション識別子とデータパーティション識別子とを格納するための手段と、
を備える装置が提供され、
データにアクセスするためのメモリトランザクションを発行するとき、処理手段は、格納手段に格納されたデータパーティション識別子に依存してパーティション識別子を指定するメモリトランザクションを発行するように構成され、
命令にアクセスするためのメモリトランザクションを発行するとき、処理回路のための手段は、格納手段に格納された命令パーティション識別子に依存してパーティション識別子を指定するメモリトランザクションを発行するように構成され、
処理されるメモリトランザクションに応答して、前記メモリトランザクションを処理するための手段は、メモリトランザクションによって指定されたパーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じてメモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データがメモリトランザクションに応答して更新されるかどうかを制御するように構成される。
命令を処理するステップと、
命令パーティション識別子およびデータパーティション識別子をパーティション識別子ストレージに格納するステップと、
少なくとも1つのメモリシステム構成要素にメモリトランザクションを発行するステップであって、メモリトランザクションは、メモリトランザクションが命令にアクセスするためのものである場合には命令パーティション識別子に依存し、メモリトランザクションがデータにアクセスするためのものである場合にはデータパーティション識別子に依存してパーティション識別子を指定する、ステップと、
を含むデータ処理方法が提供され、
処理されるメモリトランザクションに応答して、前記少なくとも1つのメモリシステム構成要素は、メモリトランザクションによって指定されたパーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じてメモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データがメモリトランザクションに応答して更新されるかどうかを制御する。
・MPAM2_EL2のEL1_WRINH=0のときはNS_EL1からMPAM1_EL1を書き込むことができるが、EL1_WRINH=1のときはNS_EL1からMPAM1_EL1への書き込みがEL2にトラップする;
・MPAM3_EL3のEL2_WRINH=0の場合、EL2からMPAM2_EL2を書き込むことができるが、EL2_WRINH=0の場合、EL2からMPAM2_EL2への書き込みがEL3にトラップする;
・MPAM3_EL3のEL1_S_WRINH=0の場合、S_EL1からMPAM1_EL1_Sを書き込むことができるが、EL1_S_WRINH=1の場合、S_EL1からMPAM1_EL1_Sへの書き込みがEL3にトラップする。
したがって、より高い例外状態によって許可されていないときに同じ例外状態内からパーティションIDレジスタ100を設定しようとすると、そのより高い例外状態への切り替えをトリガする例外イベントが引き起こされる。より高い例外状態にある例外ハンドラは、パーティションIDの設定方法を決定できる。
・現在の例外レベルがEL0で、PLK_EL0=0の場合、MPAM0_EL1が選択されたレジスタである;
・(i)現在の例外レベルがEL1であるか、(ii)現在の例外レベルがEL0で、PLK_EL0=1の場合、MPAM1_EL1が選択されたレジスタである;
・現在の例外状態がEL2の場合、選択されたレジスタはMPAM2_EL2である;
・現在の例外状態がEL3の場合、選択されたレジスタはMPAM3_EL3である。
・EL0_PARTID_RMEN:MPAM0_EL1のPARTIDの再マッピングを有効にする
・EL1_PARTID_RMEN:MPAM1_EL1のPARTIDの再マッピングを有効にする。
・PARTID_MAX:PEのハードウェア実装でサポートされている最大パーティションID;
・HAS_VCR:仮想化機能が提供されるかどうか(したがって、仮想化制御レジスタ116、再マッピング有効レジスタ124、再マッピングレジスタ126,128、および再マッピング回路130が提供されるかどうか);
・PARTID_REMAP_MAX:PEのハードウェア実装でサポートされている最大仮想パーティションID;
・PMG_MAX:PEのハードウェア実装でサポートされている最大PMG値;
・PMG_REMAP_MAX :(オプション)-PMGフィールドの再マッピングをサポートする実施形態では、PEのハードウェア実装によってサポートされている最大仮想性能監視パーティションID;
・HAS_MPAMF:PE内にMPAM分割制御機能が存在することを示す。例えば、PEに、内部キャッシュ、TLB、またはMPAM分割制御機能を有するその他の内部メモリシステム構成要素がある場合、これを設定できる。他のメモリシステム構成要素によって使用するためにパーティションIDをメモリトランザクションに付加することができるが、それ自体がメモリリソースまたは性能監視リソースを分割するためにパーティションIDを使用する分割制御機能を有していないPEは、HAS_MPAMFをクリアする。
・HAS_S:セキュア状態がサポートされているかどうかを指定する。
・S_PARTID_MAX:セキュア状態のPARTIDの最大値
・S_PMG_MAX:セキュア状態のPMGの最大値。
・キャッシュされたデータ306(これは、任意のキャッシュされた情報であり得る-データ値だけでなく、キャッシュのタイプに応じた命令またはアドレス変換データも包含する);
・エントリ内の対応するデータが有効かどうかを指定する有効ビット308;
・キャッシュされたデータに関連するアドレスの一部を示すタグフィールド310;
・データをキャッシュに割り当てたメモリトランザクションのパーティションID314;
・割り当てメモリトランザクションの性能監視グループID316;
・割り当てメモリトランザクションのセキュリティ状態表示318(そのメモリトランザクションがどのセキュリティ状態から発行されたかを示す);
・システム設計がキャッシュラインごとに保持する必要がある可能性があるその他の情報、例えば、コヒーレンス状態やアドレス空間インジケータ(ASI)。
メインメモリチャネルの帯域幅は分割されてもよい。2つの帯域幅制御方式が提供されてもよい。メモリチャネルは、以下のうちの一方または両方をオプションで実装できる。
・競合がある場合でも、パーティションが要求する最小帯域幅
・競合がある場合にパーティションに使用可能な最大帯域幅制限
最小帯域幅制御方式は、現在の帯域幅が最小値を下回るとパーティション優先度からの要求を出し、最小帯域幅を超えるとその要求が他の通常の要求と競合できるようする。パーティションの最小帯域幅を下回る要求は、チャネルでスケジュールされる可能性が最も高い。最小帯域幅制御方式は、アカウンティング期間中にメモリ帯域幅を追跡する。
・アカウンティング期間中に追跡されたパーティションの帯域幅使用量が現在パーティションの最小値を下回っている場合、その要求はチャネル帯域幅を使用するように優先的に選択される。
・アカウンティング期間中に追跡されたパーティションの帯域幅使用量が現在パーティションの最小値を超えている場合、その要求は他の通常の優先度要求と競合してチャネルの帯域幅を使用する。
最大帯域幅制限制御方式は、アカウンティング期間中にその最大帯域幅制限までパーティションの通常の優先度を与える。アカウンティング期間中に追跡されたパーティションの帯域幅使用量が現在パーティションの最大値を下回っている場合、その要求は通常の優先度でメモリチャネルでのスケジューリングを求めて競合する。アカウンティング期間中に追跡されたパーティションの帯域幅使用量が現在パーティションの最大帯域幅制限を超えている場合、その要求は他の優先度の低い要求と競合してチャネルで帯域幅を使用する。
このドキュメントに記載されている他のメモリシステムリソースとは異なり、プライオリティはメモリシステムリソースの割り当てに直接影響するのではなく、リソースへのアクセスに関して発生する競合に影響する。適切に設定されたシステムがプライオリティを付けるために性能に大きな影響を与えることはめったにないが、プライオリティは、即時または持続を問わず、オーバーサブスクライブの状況で重要な役割を果たす。したがって、「プライオリティ分割」は、パーティション間のメモリシステムの影響を分離するのに役立つツールとして使用できる。
・内部プライオリティは、このメモリシステム構成要素の内部動作で使用されるプライオリティを制御する。それらを、内部動作を優先するためにメモリシステム構成要素内で使用することができる。例えば、メモリコントローラは、帯域幅の割り当てが明確な勝者を選ばない場合、内部のプライオリティを使用して待機中の要求を選択できる。
・下流プライオリティは、他のメモリシステム構成要素(例えば、相互接続またはメモリコントローラ)に下流で伝達されるプライオリティを制御する。「下流」とは、要求に対する通信方向を指す。「上流」応答は通常、それを生成した要求と同じ転送プライオリティを使用する。メモリシステム構成要素は、プライオリティ分割を有していない下流構成要素にプライオリティを示すために、下流プライオリティを使用する。これは、下流にある相互接続構成要素に転送プライオリティを設定するために使用できる。
Claims (13)
- 複数の異なるソフトウェア実行環境を有し、命令を処理するための処理回路と、
データにアクセスするためのメモリトランザクションを処理するための少なくとも1つのメモリシステム構成要素と、
現在のソフトウェア実行環境に対応する命令パーティション識別子とデータパーティション識別子とを格納するパーティション識別子ストレージと、
を備える装置であって、
データにアクセスするためのメモリトランザクションを発行するとき、前記処理回路は、前記パーティション識別子ストレージに格納された前記データパーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成され、
命令にアクセスするためのメモリトランザクションを発行するとき、前記処理回路は、前記パーティション識別子ストレージに格納された前記命令パーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成され、
処理されるメモリトランザクションに応答して、前記少なくとも1つのメモリシステム構成要素は、前記メモリトランザクションによって指定された前記パーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じて前記メモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データが前記メモリトランザクションに応答して更新されるかどうかを制御するように構成される、
装置。 - 前記パーティション識別子の所与の値を指定するメモリトランザクションに応答して、前記少なくとも1つのメモリシステム構成要素は、前記メモリトランザクションが命令にアクセスするためのものであるかデータにアクセスするためのものであるかにかかわらず、前記パーティション識別子の前記所与の値に対応する前記選択されたセットのメモリシステム構成要素パラメータを選択するように構成される、請求項1に記載の装置。
- 前記装置が、メモリトランザクションによって指定されたアドレスを変換するためのアドレスマッピング情報を格納する変換ルックアサイドバッファを含むメモリ管理ユニットを備え、
アドレス変換キャッシュでミスが検出されたメモリトランザクションに応答して、前記メモリ管理ユニットは、ウォークトランザクションを発行して、メモリシステムから前記変換ルックアサイドバッファへのアドレスマッピング情報の割り当てをトリガするように構成され、前記ウォークトランザクションはミスが検出された前記メモリトランザクションと同じパーティション識別子を指定する、
請求項1または2に記載の装置。 - 前記パーティション識別子ストレージが、性能監視パーティション識別子を格納するように構成され、
前記処理回路は、前記メモリトランザクションがデータにアクセスするためのものであるときに前記データパーティション識別子に依存し、前記メモリトランザクションが命令にアクセスするためのものにあるときに前記命令パーティション識別子に依存する第1のパーティション識別子、および前記性能監視パーティション識別子に依存する第2のパーティション識別子を指定する前記メモリトランザクションを発行するように構成される、
請求項1から3のいずれか一項に記載の装置。 - 前記少なくとも1つのメモリシステム構成要素が、メモリシステムリソース分割および性能監視分割のうちの少なくとも1つをサポートするように構成され、
前記少なくとも1つのメモリシステム構成要素がメモリシステムリソース分割をサポートするとき、前記メモリシステム構成要素は、前記第1のパーティション識別子に応じて選択された前記メモリシステム構成要素パラメータの選択されたセットに応じて、前記メモリトランザクションを処理するためのリソースの割り当てを制御するか、または前記リソースの競合を管理するように構成され、
前記少なくとも1つのメモリシステム構成要素が性能監視分割をサポートするとき、前記メモリシステム構成要素は、少なくとも前記第2のパーティション識別子に応じて、性能監視データが前記メモリトランザクションに応答して更新されるかどうかを制御するように構成される、
請求項4に記載の装置。 - 前記少なくとも1つのメモリシステム構成要素が性能監視分割をサポートするとき、前記メモリシステム構成要素は、前記第1のパーティション識別子と前記第2のパーティション識別子の両方に応じて、性能監視データが前記メモリトランザクションに応答して更新されるかどうかを制御するように構成される、請求項5に記載の装置。
- 前記パーティション識別子ストレージが、前記処理回路のそれぞれの動作状態に対応する複数のデータパーティション識別子および複数の命令パーティション識別子を格納するように構成される、請求項1から6のいずれか一項に記載の装置。
- データにアクセスするためのメモリトランザクションを発行するとき、前記処理回路は、前記処理回路の現在の動作状態に応じて選択された、選択されたデータパーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成され、
命令にアクセスするためのメモリトランザクションを発行するとき、前記処理回路は、前記現在の動作状態に応じて選択された、選択された命令パーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成される、
請求項7に記載の装置。 - 前記少なくとも1つのメモリシステム構成要素が、
キャッシュ、
メモリ管理ユニット、
相互接続、および
メモリコントローラ
のうちの少なくとも1つを備える、請求項1から8のいずれか一項に記載の装置。 - 前記少なくとも1つのメモリシステム構成要素が、前記メモリシステム構成要素パラメータの選択されたセットに応じて、前記メモリトランザクションに応答してキャッシュへのデータの割り当てを制御するように構成される前記キャッシュを備える、請求項1から9のいずれか一項に記載の装置。
- 前記少なくとも1つのメモリシステム構成要素が、前記メモリシステム構成要素パラメータの選択されたセットに応じて、前記メモリトランザクションを処理するための帯域幅の割り当てを制御するように構成される相互接続またはメモリコントローラを備える、請求項1から9のいずれか一項に記載の装置。
- 複数の異なるソフトウェア実行環境を有し、命令を処理するための手段と、
データにアクセスするためのメモリトランザクションを処理するための手段と、
現在のソフトウェア実行環境に対応する命令パーティション識別子とデータパーティション識別子とを格納するための手段と、
を備える装置であって、
データにアクセスするためのメモリトランザクションを発行するとき、前記命令を処理するための手段は、前記格納するための手段に格納された前記データパーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成され、
命令にアクセスするためのメモリトランザクションを発行するとき、前記命令を処理するための手段は、前記格納するための手段に格納された前記命令パーティション識別子に依存してパーティション識別子を指定する前記メモリトランザクションを発行するように構成され、
処理されるメモリトランザクションに応答して、前記メモリトランザクションを処理するための手段は、前記メモリトランザクションによって指定された前記パーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じて前記メモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データが前記メモリトランザクションに応答して更新されるかどうかを制御するように構成される、
装置。 - 複数の異なるソフトウェア実行環境において命令を処理するステップと、
現在のソフトウェア実行環境に対応する命令パーティション識別子およびデータパーティション識別子をパーティション識別子ストレージに格納するステップと、
少なくとも1つのメモリシステム構成要素にメモリトランザクションを発行するステップであって、前記メモリトランザクションは、前記メモリトランザクションが命令にアクセスするためのものである場合には前記命令パーティション識別子に依存し、前記メモリトランザクションがデータにアクセスするためのものである場合には前記データパーティション識別子に依存してパーティション識別子を指定する、ステップと、
を含むデータ処理方法であって、
処理されるメモリトランザクションに応答して、前記少なくとも1つのメモリシステム構成要素は、前記メモリトランザクションによって指定された前記パーティション識別子に応じて選択されたメモリシステム構成要素パラメータの選択されたセットに応じて前記メモリトランザクションを処理するためのリソースの割り当てを制御するかもしくは前記リソースの競合を管理するか、または前記パーティション識別子に応じて、性能監視データが前記メモリトランザクションに応答して更新されるかどうかを制御する、
装置によって実行されるデータ処理方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/405,572 | 2017-01-13 | ||
US15/405,572 US10649678B2 (en) | 2017-01-13 | 2017-01-13 | Partitioning of memory system resources or performance monitoring |
PCT/GB2017/053664 WO2018130803A1 (en) | 2017-01-13 | 2017-12-05 | Partitioning of memory system resources or performance monitoring |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020514871A JP2020514871A (ja) | 2020-05-21 |
JP7128822B2 true JP7128822B2 (ja) | 2022-08-31 |
Family
ID=60765994
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019536947A Active JP7128822B2 (ja) | 2017-01-13 | 2017-12-05 | メモリシステムリソースの分割または性能監視 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10649678B2 (ja) |
EP (1) | EP3568761A1 (ja) |
JP (1) | JP7128822B2 (ja) |
KR (1) | KR102471304B1 (ja) |
CN (1) | CN110168500B (ja) |
IL (1) | IL267233B (ja) |
WO (1) | WO2018130803A1 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10585793B2 (en) * | 2018-03-05 | 2020-03-10 | Intel Corporation | Allocating shared memory blocks to table entries to store in a memory device |
JP7081321B2 (ja) * | 2018-06-13 | 2022-06-07 | 富士通株式会社 | 演算処理装置、情報処理装置及び演算処理装置の制御方法 |
CN109445684B (zh) * | 2018-09-20 | 2021-11-26 | 华为技术有限公司 | 一种分布式存储系统中硬盘的资源分配方法及设备 |
US11886349B2 (en) * | 2020-04-23 | 2024-01-30 | Nxp Usa, Inc | Remap address space controller |
US11740929B2 (en) | 2020-10-20 | 2023-08-29 | Micron Technology, Inc. | Registering a custom atomic operation with the operating system |
US11436187B2 (en) | 2020-10-20 | 2022-09-06 | Micron Technology, Inc. | Method of notifying a process or programmable atomic operation traps |
US11693690B2 (en) | 2020-10-20 | 2023-07-04 | Micron Technology, Inc. | Method of completing a programmable atomic transaction by ensuring memory locks are cleared |
US11586439B2 (en) | 2020-10-20 | 2023-02-21 | Micron Technology, Inc. | Detecting infinite loops in a programmable atomic transaction |
US12020062B2 (en) | 2020-10-20 | 2024-06-25 | Micron Technology, Inc. | Method of executing programmable atomic unit resources within a multi-process system |
US11403023B2 (en) * | 2020-10-20 | 2022-08-02 | Micron Technology, Inc. | Method of organizing a programmable atomic unit instruction memory |
CN116028164B (zh) * | 2023-03-29 | 2023-06-20 | 阿里云计算有限公司 | 设备虚拟化方法以及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007241922A (ja) | 2006-03-13 | 2007-09-20 | Nec Corp | 共有資源利用のための調停方法及びその調停装置 |
US20080189522A1 (en) | 2007-02-06 | 2008-08-07 | Ibm Corporation | Method and Apparatus for Enabling Resource Allocation Identification at the Instruction Level in a Processor System |
WO2010095416A1 (ja) | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | マルチスレッドプロセッサ及びデジタルテレビシステム |
WO2016203188A1 (en) | 2015-06-16 | 2016-12-22 | Arm Limited | Protected exception handling |
Family Cites Families (53)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4376297A (en) | 1978-04-10 | 1983-03-08 | Signetics Corporation | Virtual memory addressing device |
US5404476A (en) | 1989-02-10 | 1995-04-04 | Nec Corporation | Multiprocessing system having a single translation lookaside buffer with reduced processor overhead |
US5790979A (en) | 1993-05-10 | 1998-08-04 | Liedtke; Jochen | Translation method in which page-table progression is dynamically determined by guard-bit sequences |
JP3740195B2 (ja) | 1994-09-09 | 2006-02-01 | 株式会社ルネサステクノロジ | データ処理装置 |
JPH0981459A (ja) | 1995-09-19 | 1997-03-28 | Hitachi Ltd | アドレス変換バッファ装置 |
US6629220B1 (en) | 1999-08-20 | 2003-09-30 | Intel Corporation | Method and apparatus for dynamic arbitration between a first queue and a second queue based on a high priority transaction type |
US7346757B2 (en) | 2002-10-08 | 2008-03-18 | Rmi Corporation | Advanced processor translation lookaside buffer management in a multithreaded system |
US6851030B2 (en) * | 2002-10-16 | 2005-02-01 | International Business Machines Corporation | System and method for dynamically allocating associative resources |
WO2005036367A2 (en) | 2003-10-08 | 2005-04-21 | Unisys Corporation | Virtual data center that allocates and manages system resources across multiple nodes |
US8006017B2 (en) | 2004-12-21 | 2011-08-23 | Intel Corporation | Stream priority |
US7430643B2 (en) | 2004-12-30 | 2008-09-30 | Sun Microsystems, Inc. | Multiple contexts for efficient use of translation lookaside buffer |
US7930484B2 (en) * | 2005-02-07 | 2011-04-19 | Advanced Micro Devices, Inc. | System for restricted cache access during data transfers and method thereof |
JP4886682B2 (ja) * | 2005-05-26 | 2012-02-29 | パナソニック株式会社 | データ処理装置 |
GB2432234A (en) * | 2005-11-09 | 2007-05-16 | Xynchron Ltd | Networked data storage system |
GB2450906B (en) * | 2007-07-11 | 2012-05-16 | Advanced Risc Mach Ltd | Memory transaction handling in a data processing apparatus |
US7937556B2 (en) | 2008-04-30 | 2011-05-03 | Oracle America, Inc. | Minimizing TLB comparison size |
US9367363B2 (en) | 2008-05-12 | 2016-06-14 | Oracle America, Inc. | System and method for integrating best effort hardware mechanisms for supporting transactional memory |
US8296547B2 (en) | 2008-08-27 | 2012-10-23 | International Business Machines Corporation | Loading entries into a TLB in hardware via indirect TLB entries |
US20100169289A1 (en) * | 2008-12-30 | 2010-07-01 | International Business Machines Corporation | Two Phase Commit With Grid Elements |
US8108650B2 (en) * | 2009-05-29 | 2012-01-31 | Apple Inc. | Translation lookaside buffer (TLB) with reserved areas for specific sources |
US8316194B2 (en) | 2009-12-15 | 2012-11-20 | Intel Corporation | Mechanisms to accelerate transactions using buffered stores |
US11221764B2 (en) * | 2010-01-29 | 2022-01-11 | Mosys, Inc. | Partitioned memory with shared memory resources and configurable functions |
US20130013889A1 (en) | 2011-07-06 | 2013-01-10 | Jaikumar Devaraj | Memory management unit using stream identifiers |
US9886312B2 (en) | 2011-09-28 | 2018-02-06 | Microsoft Technology Licensing, Llc | Dynamic provisioning of virtual video memory based on virtual video controller configuration |
US9923826B2 (en) | 2011-10-14 | 2018-03-20 | Citrix Systems, Inc. | Systems and methods for dynamic adaptation of network accelerators |
US9069598B2 (en) | 2012-01-06 | 2015-06-30 | International Business Machines Corporation | Providing logical partions with hardware-thread specific information reflective of exclusive use of a processor core |
US9229884B2 (en) * | 2012-04-30 | 2016-01-05 | Freescale Semiconductor, Inc. | Virtualized instruction extensions for system partitioning |
US8880745B2 (en) | 2012-10-05 | 2014-11-04 | Analog Devices, Inc. | Efficient scheduling of transactions from multiple masters |
US10169091B2 (en) | 2012-10-25 | 2019-01-01 | Nvidia Corporation | Efficient memory virtualization in multi-threaded processing units |
US9172655B1 (en) | 2012-11-15 | 2015-10-27 | Qlogic, Corporation | Systems and methods for quality of service in networks |
US9445725B2 (en) * | 2012-12-17 | 2016-09-20 | Biosense Webster (Israel) Ltd. | Irrigated catheter tip with temperature sensor array |
WO2014100698A1 (en) | 2012-12-20 | 2014-06-26 | Massachusetts Institute Of Technology | Methods and systems for enhancing hardware transactions using hardware transactions in software slow-path |
US9405711B2 (en) | 2013-01-09 | 2016-08-02 | International Business Machines Corporation | On-chip traffic prioritization in memory |
JP6106765B2 (ja) | 2013-02-05 | 2017-04-05 | エイアールエム リミテッド | メモリ保護ユニットを使用して、仮想化をサポートするゲスト・オペレーティング・システム |
US8822616B1 (en) * | 2013-02-08 | 2014-09-02 | Rohm And Haas Electronic Materials Llc | Block copolymer formulation and methods relating thereto |
US9088501B2 (en) | 2013-07-31 | 2015-07-21 | Citrix Systems, Inc. | Systems and methods for least connection load balancing by multi-core device |
US20150089185A1 (en) | 2013-09-23 | 2015-03-26 | International Business Machines Corporation | Managing Mirror Copies without Blocking Application I/O |
US9298623B2 (en) | 2013-09-26 | 2016-03-29 | Globalfoundries Inc. | Identifying high-conflict cache lines in transactional memory computing environments |
US9465673B2 (en) | 2014-02-27 | 2016-10-11 | International Business Machines Corporation | Deferral instruction for managing transactional aborts in transactional memory computing environments to complete transaction by deferring disruptive events handling |
US9471371B2 (en) | 2014-02-27 | 2016-10-18 | International Business Machines Corporation | Dynamic prediction of concurrent hardware transactions resource requirements and allocation |
US9424072B2 (en) | 2014-02-27 | 2016-08-23 | International Business Machines Corporation | Alerting hardware transactions that are about to run out of space |
US9489413B2 (en) * | 2014-03-31 | 2016-11-08 | Oracle International Corporation | Asynchronous global index maintenance during partition maintenance |
FR3019921B1 (fr) | 2014-04-10 | 2017-08-11 | Commissariat Energie Atomique | Systeme de calcul distribue mettant en œuvre une memoire transactionnelle materielle de type non-speculatif et son procede d'utilisation pour le calcul distribue |
US9317443B2 (en) | 2014-04-17 | 2016-04-19 | International Business Machines Corporation | Managing translations across multiple contexts using a TLB with entries directed to multiple privilege levels and to multiple types of address spaces |
US9323692B2 (en) | 2014-04-17 | 2016-04-26 | International Business Machines Corporation | Managing translation of a same address across multiple contexts using a same entry in a translation lookaside buffer |
US9477469B2 (en) | 2014-06-02 | 2016-10-25 | International Business Machines Corporation | Branch predictor suppressing branch prediction of previously executed branch instructions in a transactional execution environment |
US10067960B2 (en) | 2015-06-04 | 2018-09-04 | Microsoft Technology Licensing, Llc | Controlling atomic updates of indexes using hardware transactional memory |
GB2539436B (en) | 2015-06-16 | 2019-02-06 | Advanced Risc Mach Ltd | Secure initialisation |
GB2539429B (en) | 2015-06-16 | 2017-09-06 | Advanced Risc Mach Ltd | Address translation |
GB2539435B8 (en) | 2015-06-16 | 2018-02-21 | Advanced Risc Mach Ltd | Data processing memory access control, in which an owning process for a region of memory is specified independently of privilege level |
US9875186B2 (en) | 2015-07-08 | 2018-01-23 | Futurewei Technologies, Inc. | System and method for data caching in processing nodes of a massively parallel processing (MPP) database system |
KR101713744B1 (ko) * | 2015-07-20 | 2017-03-23 | 현대자동차 주식회사 | 차량의 배터리 충전 시간 계산 방법 |
US10083126B2 (en) | 2016-12-06 | 2018-09-25 | Arm Limited | Apparatus and method for avoiding conflicting entries in a storage structure |
-
2017
- 2017-01-13 US US15/405,572 patent/US10649678B2/en active Active
- 2017-12-05 EP EP17817828.1A patent/EP3568761A1/en active Pending
- 2017-12-05 JP JP2019536947A patent/JP7128822B2/ja active Active
- 2017-12-05 WO PCT/GB2017/053664 patent/WO2018130803A1/en unknown
- 2017-12-05 CN CN201780082488.9A patent/CN110168500B/zh active Active
- 2017-12-05 KR KR1020197022058A patent/KR102471304B1/ko active IP Right Grant
-
2019
- 2019-06-11 IL IL267233A patent/IL267233B/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007241922A (ja) | 2006-03-13 | 2007-09-20 | Nec Corp | 共有資源利用のための調停方法及びその調停装置 |
US20080189522A1 (en) | 2007-02-06 | 2008-08-07 | Ibm Corporation | Method and Apparatus for Enabling Resource Allocation Identification at the Instruction Level in a Processor System |
JP2010518472A (ja) | 2007-02-06 | 2010-05-27 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プロセッサ・システムにおいて命令レベルでのリソース割り当ての識別を可能にする方法および装置 |
WO2010095416A1 (ja) | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | マルチスレッドプロセッサ及びデジタルテレビシステム |
WO2016203188A1 (en) | 2015-06-16 | 2016-12-22 | Arm Limited | Protected exception handling |
Also Published As
Publication number | Publication date |
---|---|
IL267233B (en) | 2021-04-29 |
KR20190105229A (ko) | 2019-09-16 |
IL267233A (en) | 2019-08-29 |
US10649678B2 (en) | 2020-05-12 |
WO2018130803A1 (en) | 2018-07-19 |
CN110168500B (zh) | 2023-09-08 |
EP3568761A1 (en) | 2019-11-20 |
KR102471304B1 (ko) | 2022-11-30 |
US20180203638A1 (en) | 2018-07-19 |
JP2020514871A (ja) | 2020-05-21 |
CN110168500A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7245779B2 (ja) | Tlbまたはキャッシュ割り当ての分割 | |
JP7265478B2 (ja) | メモリ分割 | |
JP7065099B2 (ja) | メモリシステムリソースの分割または性能監視 | |
JP7128822B2 (ja) | メモリシステムリソースの分割または性能監視 | |
JP7065098B2 (ja) | メモリシステムリソースの分割または性能監視 | |
JP2022547545A (ja) | ページテーブルウォークメモリトランザクションのためのパーティション識別子 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20201127 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211130 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211210 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220309 |
|
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: 20220727 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220819 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7128822 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |