KR20170031708A - 트랜잭션 데이터 처리 실행 모드에 대한 호출 스택 유지 - Google Patents
트랜잭션 데이터 처리 실행 모드에 대한 호출 스택 유지 Download PDFInfo
- Publication number
- KR20170031708A KR20170031708A KR1020177003061A KR20177003061A KR20170031708A KR 20170031708 A KR20170031708 A KR 20170031708A KR 1020177003061 A KR1020177003061 A KR 1020177003061A KR 20177003061 A KR20177003061 A KR 20177003061A KR 20170031708 A KR20170031708 A KR 20170031708A
- Authority
- KR
- South Korea
- Prior art keywords
- stack
- execution mode
- data processing
- processor
- modification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operations
- G06F11/1474—Error detection or correction of the data by redundancy in operations in transactions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0875—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/128—Replacement control using replacement algorithms adapted to multidimensional cache systems, e.g. set-associative, multicache, multiset or multilevel
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/45—Caching of specific data in cache memory
- G06F2212/451—Stack data
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/621—Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
도 2a는 C와 같은 코드의 예시적인 시퀀스를 나타낸 것이다.
도 2b는 일 실시 예에서 호출 스택에 푸시하고 그 호출 스택으로부터 팝하는 것에 대응하는 도 2a의 코드에서의 함수 호출 및 리턴을 개략적으로 나타낸 것이다.
도 2c는 일 실시 예에서 도 2a의 코드에 대한 호출 스택의 콘텐트 및 성장을 개략적으로 나타낸 것이다..
도 3은 도 2a에 나타낸 코드의 실행에 대응하는 일 실시 예에서 호출 스택의 콘텐트의 전개를 보다 상세하게 개략적으로 나타낸 것이다.
도 4a는 일 실시 예에서 저장 유닛을 개략적으로 나타낸 것이다.
도 4b 및 도 4c는 도 4a의 저장 유닛의 사용 예를 개략적으로 나타낸 것이다.
도 5는 일 실시 예에서의 프로세서 코어 및 관련 LI 캐시를 개략적으로 나타낸 것이다.
도 6은 일 실시 예의 방법에 따라 취해진 일련의 단계들을 개략적으로 나타낸 것이다.
도 7은 트랜잭션 중단을 모니터링하고 트랜잭션 중단에 반응하기 위해 일 실시 예에서 취해진 일련의 단계들을 개략적으로 나타낸 것이다.
Claims (13)
- 데이터 처리 명령들을 실행하도록 구성되며, 실행하는 데이터 처리 명령들에 의존하여 호출 스택 데이터 구조를 유지하도록 구성되고, 데이터 처리 명령들이 실행될 때 트랜잭션 실행 모드에서 동작하여 추가 프로세서 회로와 공유되는 저장된 데이터 항목들에 액세스하도록 구성된 프로세서 회로와,
호출 스택 데이터 구조에 대한 스택 심도 표시(stack depth indication)를 저장하도록 구성된 사전 트랜잭션 스택 포인터 저장회로를 구비하고, 상기 프로세서 회로는 트랜잭션 실행 모드에 진입하기 전에 상기 스택 심도 표시를 저장하도록 구성되며,
상기 프로세서 회로는, 트랜잭션 실행 모드에서 동작할 때, 상기 스택 심도 표시에 대하여 호출 스택 데이터 구조에 대한 수정을 위한 상대적 스태킹 위치를 결정하고,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향인 경우, 수정과 관련하여 수정이 비추론적이라는 표시를 저장하며,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향이 아닌 경우, 수정과 관련하여 수정이 추론적이라는 표시를 저장하도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항에 있어서,
상기 사전 트랜잭션 스택 포인터 저장회로는 호출 스택 데이터 구조에 대한 처리회로에 의해 사용되는 스택 포인터의 복사본을 저장하도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항 또는 제 2 항에 있어서,
상기 사전 트랜잭션 스택 포인터 저장회로는 처리회로에 액세스 가능한 레지스터를 구비하는 것을 특징으로 하는 장치.
- 제 3 항에 있어서,
상기 레지스터는 처리회로에 의해 실행되는 데이터 처리 명령들에 액세스할 수 없도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향이 아니고, 수정이 호출 스택 데이터 구조에의 푸시(push)인 경우, 푸시에 의해 호출 스택 데이터 구조에 푸시된 데이터 항목이 추론적으로 기록되는 것으로 표시되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향이 아니고, 수정이 호출 스택 데이터 구조로부터의 팝(pop)인 경우, 팝에 의해 호출 스택 데이터 구조로부터 팝핑된(popped) 데이터 항목이 추론적으로 판독되는 것으로 표시되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
데이터 처리 명령들을 실행할 때 상기 프로세서 회로에 의해 액세스된 데이터 항목들의 로컬 복사본을 메모리에 저장하도록 구성된 저장회로를 더 구비하고, 상기 프로세서 회로는 상기 저장회로에서 호출 스택 데이터 구조를 유지하도록 구성되는 것을 특징으로 하는 장치.
- 제 7 항에 있어서,
상기 저장회로는, 코히어런시 제어유닛을 구비하고, 상기 코히어런시 제어유닛은 비추론적이라고 표시된 저장회로의 콘텐트가 메모리에 축출되도록 허용하고, 저장회로의 콘텐트가 축출을 위해 선택되며 추론적이라고 표시되면 에러 조건을 생성하도록 구성되는 것을 특징으로 하는 장치.
- 제 8 항에 있어서,
상기 코히어런시 제어유닛은, 처리회로가 트랜잭션 실행 모드를 종료하고 트랜잭션 실행 모드에서 실행된 데이터 처리 명령들이 성공적으로 데이터 처리 동작들을 완료했을 때, 추론적이라고 표시된 저장회로의 콘텐트를 비추론적이라고 표시된 저장회로의 콘텐트로 변경하도록 구성되는 것을 특징으로 하는 장치.
- 제 7 항 내지 제 9 항 중 어느 한 항에 있어서,
상기 코히어런시 제어유닛은 상기 추가 프로세서 회로로부터 추론적이라고 표시된 저장회로의 콘텐트를 숨기도록 구성되는 것을 특징으로 하는 장치.
- 제 1 항 내지 제 10 항 중 어느 한 항에 있어서,
중단 처리회로를 더 구비하고, 상기 중단 처리회로는 처리회로가 트랜잭션 실행 모드에서 동작하고 있을 때, 계류 중인 트랜잭션이 실패했다는 표시에 응답하여 롤백 절차를 수행하도록 구성되고,
상기 롤백 절차는 추론적이라고 표시된 수정들을 폐기하고 저장된 스택 심도 표시를 이용하여 현재 스택 포인터를 리셋하는 것을 포함하는 것을 특징으로 하는 장치.
- 데이터 처리 명령들을 실행하는 수단과,
데이터 처리 명령들에 의존해서 호출 스택 데이터 구조를 유지하는 수단과, 상기 데이터 처리 명령들을 실행하는 수단은 데이터 처리 명령들이 실행될 때 트랜잭션 실행 모드에서 동작하여 데이터 처리 명령들을 실행하는 추가 수단과 공유되는 저장된 데이터 항목들에 액세스하도록 구성되고,
호출 스택 데이터 구조에 대한 스택 심도 표시를 저장하는 수단과, 상기 스택 심도 표시는 상기 데이터 처리 명령들을 실행하는 수단이 트랜잭션 실행 모드에 진입하기 전에 저장되며,
트랜잭션 실행 모드에서 동작하고 있을 때, 상기 스택 심도 표시에 대하여 호출 스택 데이터 구조에 대한 수정을 위한 상대적 스태킹 위치를 결정하는 수단과,
수정과 관련된 표시를 저장하는 수단을 구비하고, 상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향인 경우, 상기 표시는 수정이 비추론적이라고 나타내고,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향이 아닌 경우, 상기 표시는 수정이 추론적이라고 나타내는 것을 특징으로 하는 장치.
- 프로세서 장치에서의 데이터 처리 방법으로서,
데이터 처리 명령들을 실행하는 단계와,
실행된 데이터 처리 명령들에 의존해서 호출 스택 데이터 구조를 유지하는 단계와,
실행된 데이터 처리 명령들이 추가 프로세서 장치와 공유되는 저장된 데이터 항목들에 대한 액세스를 탐색할 때 트랜잭션 실행 모드에 진입하는 단계와,
트랜잭션 실행 모드에 진입하기 전에 저장되는 스택 심도 표시를 저장하는 단계와,
트랜잭션 실행 모드에서 동작할 때, 상기 스택 심도 표시에 대하여 호출 스택 데이터 구조에 대한 수정을 위한 상대적 스태킹 위치를 결정하는 단계와,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향인 경우, 수정과 관련하여 수정이 비추론적이라는 표시를 저장하고,
상기 상대적 스태킹 위치가 상기 스택 심도 표시에 의해 표시된 위치에 대하여 양의 스택 성장 방향이 아닌 경우, 수정과 관련하여 수정이 추론적이라는 표시를 저장하는 단계를 포함하는 것을 특징으로 하는 데이터 처리 방법.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB1412534.8 | 2014-07-15 | ||
| GB1412534.8A GB2528270A (en) | 2014-07-15 | 2014-07-15 | Call stack maintenance for a transactional data processing execution mode |
| PCT/GB2015/051675 WO2016009168A1 (en) | 2014-07-15 | 2015-06-09 | Call stack maintenance for a transactional data processing execution mode |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20170031708A true KR20170031708A (ko) | 2017-03-21 |
| KR102284957B1 KR102284957B1 (ko) | 2021-08-04 |
Family
ID=51454144
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020177003061A Active KR102284957B1 (ko) | 2014-07-15 | 2015-06-09 | 트랜잭션 데이터 처리 실행 모드에 대한 호출 스택 유지 |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US10002020B2 (ko) |
| EP (1) | EP3170075B1 (ko) |
| JP (1) | JP6568575B2 (ko) |
| KR (1) | KR102284957B1 (ko) |
| CN (1) | CN106663026B (ko) |
| GB (1) | GB2528270A (ko) |
| IL (1) | IL249697B (ko) |
| WO (1) | WO2016009168A1 (ko) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| GB2554096B (en) * | 2016-09-20 | 2019-03-20 | Advanced Risc Mach Ltd | Handling of inter-element address hazards for vector instructions |
| CN107291480B (zh) * | 2017-08-15 | 2020-12-15 | 中国农业银行股份有限公司 | 一种函数调用方法及装置 |
| US10572259B2 (en) * | 2018-01-22 | 2020-02-25 | Arm Limited | Hints in a data processing apparatus |
| US10698724B2 (en) * | 2018-04-10 | 2020-06-30 | Osisoft, Llc | Managing shared resources in a distributed computing system |
| US11231932B2 (en) * | 2019-03-05 | 2022-01-25 | Arm Limited | Transactional recovery storage for branch history and return addresses to partially or fully restore the return stack and branch history register on transaction aborts |
| US11334495B2 (en) * | 2019-08-23 | 2022-05-17 | Arm Limited | Cache eviction |
| US11687519B2 (en) | 2021-08-11 | 2023-06-27 | T-Mobile Usa, Inc. | Ensuring availability and integrity of a database across geographical regions |
| FR3147397A1 (fr) * | 2023-03-28 | 2024-10-04 | Stmicroelectronics International N.V. | Système informatique configuré pour exécuter un programme d’ordinateur |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080288819A1 (en) * | 2007-05-14 | 2008-11-20 | International Business Machines Corporation | Computing System with Transactional Memory Using Millicode Assists |
| US20100023703A1 (en) * | 2008-07-28 | 2010-01-28 | Christie David S | Hardware transactional memory support for protected and unprotected shared-memory accesses in a speculative section |
| US20110307689A1 (en) * | 2010-06-11 | 2011-12-15 | Jaewoong Chung | Processor support for hardware transactional memory |
| US20120304172A1 (en) * | 2011-04-29 | 2012-11-29 | Bernd Greifeneder | Method and System for Transaction Controlled Sampling of Distributed Hetereogeneous Transactions without Source Code Modifications |
| US20130151791A1 (en) * | 2011-12-13 | 2013-06-13 | Advanced Micro Devices, Inc. | Transactional memory conflict management |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8544020B1 (en) * | 2004-09-14 | 2013-09-24 | Azul Systems, Inc. | Cooperative preemption |
| US7472261B2 (en) * | 2005-11-08 | 2008-12-30 | International Business Machines Corporation | Method for performing externally assisted calls in a heterogeneous processing complex |
| US20080016325A1 (en) * | 2006-07-12 | 2008-01-17 | Laudon James P | Using windowed register file to checkpoint register state |
| US7860930B2 (en) * | 2006-12-19 | 2010-12-28 | International Business Machines Corporation | Communication between host systems using a transaction protocol and shared memories |
| US8739164B2 (en) * | 2010-02-24 | 2014-05-27 | Advanced Micro Devices, Inc. | Automatic suspend atomic hardware transactional memory in response to detecting an implicit suspend condition and resume thereof |
-
2014
- 2014-07-15 GB GB1412534.8A patent/GB2528270A/en not_active Withdrawn
-
2015
- 2015-06-09 WO PCT/GB2015/051675 patent/WO2016009168A1/en not_active Ceased
- 2015-06-09 KR KR1020177003061A patent/KR102284957B1/ko active Active
- 2015-06-09 EP EP15729887.8A patent/EP3170075B1/en active Active
- 2015-06-09 CN CN201580037126.9A patent/CN106663026B/zh active Active
- 2015-06-09 JP JP2017500877A patent/JP6568575B2/ja active Active
- 2015-06-09 US US15/325,301 patent/US10002020B2/en active Active
-
2016
- 2016-12-21 IL IL249697A patent/IL249697B/en active IP Right Grant
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080288819A1 (en) * | 2007-05-14 | 2008-11-20 | International Business Machines Corporation | Computing System with Transactional Memory Using Millicode Assists |
| US20100023703A1 (en) * | 2008-07-28 | 2010-01-28 | Christie David S | Hardware transactional memory support for protected and unprotected shared-memory accesses in a speculative section |
| US20110307689A1 (en) * | 2010-06-11 | 2011-12-15 | Jaewoong Chung | Processor support for hardware transactional memory |
| US20120304172A1 (en) * | 2011-04-29 | 2012-11-29 | Bernd Greifeneder | Method and System for Transaction Controlled Sampling of Distributed Hetereogeneous Transactions without Source Code Modifications |
| US20130151791A1 (en) * | 2011-12-13 | 2013-06-13 | Advanced Micro Devices, Inc. | Transactional memory conflict management |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3170075A1 (en) | 2017-05-24 |
| IL249697A0 (en) | 2017-02-28 |
| EP3170075B1 (en) | 2021-01-13 |
| JP6568575B2 (ja) | 2019-08-28 |
| KR102284957B1 (ko) | 2021-08-04 |
| US10002020B2 (en) | 2018-06-19 |
| WO2016009168A1 (en) | 2016-01-21 |
| CN106663026B (zh) | 2021-01-12 |
| CN106663026A (zh) | 2017-05-10 |
| GB201412534D0 (en) | 2014-08-27 |
| JP2017520857A (ja) | 2017-07-27 |
| GB2528270A (en) | 2016-01-20 |
| US20170161095A1 (en) | 2017-06-08 |
| IL249697B (en) | 2020-01-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102284957B1 (ko) | 트랜잭션 데이터 처리 실행 모드에 대한 호출 스택 유지 | |
| US11106795B2 (en) | Method and apparatus for updating shared data in a multi-core processor environment | |
| US20180011748A1 (en) | Post-retire scheme for tracking tentative accesses during transactional execution | |
| US11614959B2 (en) | Coherence protocol for hardware transactional memory in shared memory using non volatile memory with log and no lock | |
| EP3516502B1 (en) | Handling of inter-element address hazards for vector instructions | |
| KR102699710B1 (ko) | 데이터 처리장치, 데이터 처리방법 및 컴퓨터 프로그램 | |
| JP2017520857A5 (ko) | ||
| US10719441B1 (en) | Using predictions of outcomes of cache memory access requests for controlling whether a request generator sends memory access requests to a memory in parallel with cache memory access requests | |
| TWI801603B (zh) | 處理獨佔式載入指令的資料處理設備、方法及電腦程式 | |
| US11119925B2 (en) | Apparatus and method for managing capability metadata | |
| US20100205609A1 (en) | Using time stamps to facilitate load reordering | |
| US9207967B2 (en) | Using nonspeculative operations for lock elision | |
| JP2008503821A (ja) | 小容量キャッシュシステムにおけるアトミック予約ライン上のライトバックを無効化する方法およびシステム | |
| US20150205721A1 (en) | Handling Reads Following Transactional Writes during Transactions in a Computing Device | |
| US10169234B2 (en) | Translation lookaside buffer purging with concurrent cache updates | |
| KR20240067941A (ko) | 예비 디렉토리 항목에 특정 데이터 패턴의 표시 저장 | |
| WO2024217677A1 (en) | Crash-consistent persistent memory devices and methods |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0105 | International application |
Patent event date: 20170203 Patent event code: PA01051R01D Comment text: International Patent Application |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20200227 Comment text: Request for Examination of Application |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20210504 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20210728 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20210729 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration | ||
| PR1001 | Payment of annual fee |
Payment date: 20240625 Start annual number: 4 End annual number: 4 |
|
| PR1001 | Payment of annual fee |
Payment date: 20250630 Start annual number: 5 End annual number: 5 |