Scheduling of data migration
First Claim
Patent Images
1. A method of scheduling data migration comprising:
- determining whether the data is likely to be used by an input/output (I/O) device, the data being at a location remote to the I/O device; and
scheduling the data for migration from the remote location to a location local to the I/O device in response to determining that the data is likely to be used by the I/O device, wherein determining that the data is likely to be used by the I/O device comprises monitoring an event associated with translating addresses by a memory management unit local to the I/O device,wherein monitoring the event associated with translating addresses by the memory management unit local to the I/O device includes one or more of;
monitoring data having a memory address in a peripheral page service request event log file, monitoring data having a memory address in an error event log file, and monitoring data having a memory address in a command issued by the I/O device to invalidate the data.
1 Assignment
0 Petitions
Accused Products
Abstract
In one form, scheduling data migration comprises determining whether the data is likely to be used by an input/output (I/O) device, the data being at a location remote to the I/O device; and scheduling the data for migration from the remote location to a location local to the I/O device in response to determining that the data is likely to be used by the I/O device.
61 Citations
14 Claims
-
1. A method of scheduling data migration comprising:
-
determining whether the data is likely to be used by an input/output (I/O) device, the data being at a location remote to the I/O device; and scheduling the data for migration from the remote location to a location local to the I/O device in response to determining that the data is likely to be used by the I/O device, wherein determining that the data is likely to be used by the I/O device comprises monitoring an event associated with translating addresses by a memory management unit local to the I/O device, wherein monitoring the event associated with translating addresses by the memory management unit local to the I/O device includes one or more of;
monitoring data having a memory address in a peripheral page service request event log file, monitoring data having a memory address in an error event log file, and monitoring data having a memory address in a command issued by the I/O device to invalidate the data. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A data processing node comprising:
-
a data processor; and an input/output memory management unit (IOMMU) coupled to the data processor and adapted to associate logical memory pages to corresponding physical pages wherein each physical page may be located in either a local memory device associated with the data processing node or in a remote memory device associated with another processing node, wherein the IOMMU is adapted to determine whether data in a physical page in the remote memory device is likely to be used by an input/output (I/O) device coupled to and associated with the processing node, and in response to determining that the data is likely to be used by the I/O device, to schedule migration of the data in the physical page at the remote memory device to a physical page at the local memory device, wherein the IOMMU determines that data is likely to be used by the I/O device by monitoring the output of at least one address translation circuit associated with the I/O device, and wherein the IOMMU monitors the output of the at least one address translation circuit associated with the I/O device by monitoring a memory address in a log file. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A data processing node comprising:
-
a data processor; and an input/output memory management unit (IOMMU) coupled to the data processor and adapted to associate logical memory pages to corresponding physical pages wherein each physical page may be located in either a local memory device associated with the data processing node or in a remote memory device associated with another processing node, wherein the IOMMU is adapted to determine whether data in a physical page in the remote memory device is likely to be used by an input/output (I/O) device coupled to and associated with the processing node, and in response to determining that the data is likely to be used by the I/O device, to schedule migration of the data in the physical page at the remote memory device to a physical page at the local memory device, wherein the IOMMU determines that data is likely to be used by the I/O device by monitoring the output of at least one address translation circuit associated with the I/O device, and wherein the IOMMU monitors the output of the at least one address translation circuit associated with the I/O device by monitoring a memory address in a command issued by the I/O device to invalidate the data.
-
Specification