Speculative execution tag for asynchronous DRAM refresh
View Patent ↗An embodiment of a semiconductor package apparatus may include technology to track a modification to a processor cache line, and set an indicator to indicate if the modification relates to a transaction. Other embodiments are disclosed and claimed.
1. An electronic processing system, comprising:
a processor;
persistent memory communicatively coupled to the processor; and
logic communicatively coupled to the processor to:
track a modification to a cache line of the processor;
set an indicator to indicate if the modification relates to a transaction, and set the indicator to indicate if the modification relates to a speculative execution corresponding to the transaction;
detect a power transition;
determine if an address of the processor cache line corresponds to an application direct address range, in response to the detected power transition; and
flush the processor cache line to the persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition.
2. The system of claim 1 , wherein the logic is further to:
flush the processor cache line to the persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition, if the processor cache line address is determined to correspond to the application direct address range.
3. The system of claim 1 , wherein the indicator comprises a bit of the processor cache line.
4. The system of claim 1 , wherein the transaction corresponds to a transactional memory transaction.
5. A semiconductor package apparatus, comprising:
one or more substrates; and
logic coupled to the one or more substrates, wherein the logic is at least partly implemented in one or more of configurable logic and fixed-functionality hardware logic, the logic coupled to the one or more substrates to:
track a modification to a processor cache line;
set an indicator to indicate if the modification relates to a transaction, and set the indicator to indicate if the modification relates to a speculative execution corresponding to the transaction;
detect a power transition;
determine if an address of the processor cache line corresponds to an application direct address range, in response to the detected power transition; and
flush the processor cache line to the persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition.
6. The apparatus of claim 5 , wherein the logic is further to:
flush the processor cache line to persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition, if the processor cache line address is determined to correspond to the application direct address range.
7. The apparatus of claim 5 , wherein the indicator comprises a bit of the processor cache line.
8. The apparatus of claim 5 , wherein the transaction corresponds to a transactional memory transaction.
9. A method of tracking a cache line modification, comprising:
tracking a modification to a processor cache line;
setting an indicator to indicate if the modification relates to a transaction, and setting the indicator to indicate if the modification relates to a speculative execution corresponding to the transaction;
detecting a power transition;
determining if an address of the processor cache line corresponds to an application direct address range, in response to the detected power transition; and
flushing the processor cache line to the persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition.
10. The method of claim 9 , further comprising:
flushing the processor cache line to persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition, if the processor cache line address is determined to correspond to the application direct address range.
11. The method of claim 9 , wherein the indicator comprises a bit of the processor cache line.
12. The method of claim 9 , wherein the transaction corresponds to a transactional memory transaction.
13. At least one non-transitory computer readable medium, comprising a set of instructions, which when executed by a computing device, cause the computing device to:
track a modification to a processor cache line; and
set an indicator to indicate if the modification relates to a transaction, and set the indicator to indicate if the modification relates to a speculative execution corresponding to the transaction;
detect a power transition;
determine if an address of the processor cache line corresponds to an application direct address range, in response to the detected power transition; and
flush the processor cache line to the persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition.
14. The at least one non-transitory computer readable medium of claim 13 , comprising a further set of instructions, which when executed by the computing device, cause the computing device to:
flush the processor cache line to persistent memory based on a state of the indicator indicating whether the modification relates to a speculative execution and in response to the detected power transition, if the processor cache line address is determined to correspond to the application direct address range.
15. The at least one non-transitory computer readable medium of claim 13 , wherein the indicator comprises a bit of the processor cache line.
16. The at least one non-transitory computer readable medium of claim 13 , wherein the transaction corresponds to a transactional memory transaction.