Shared memory space in a unified memory model

US9009419B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9009419-B2
Application numberUS-201213562985-A
CountryUS
Kind codeB2
Filing dateJul 31, 2012
Priority dateJul 31, 2012
Publication dateApr 14, 2015
Grant dateApr 14, 2015

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Methods and systems are provided for mapping a memory instruction to a shared memory address space in a computer arrangement having a CPU and an APD. A method includes receiving a memory instruction that refers to an address in the shared memory address space, mapping the memory instruction based on the address to a memory resource associated with either the CPU or the APD, and performing the memory instruction based on the mapping.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of mapping a memory instruction to a shared memory address space in a computer arrangement configured for unified operation between a central processing unit (CPU) and an accelerated processing device (APD), comprising: receiving the memory instruction, wherein the memory instruction refers to an address in the shared memory address space; mapping the memory instruction to a memory resource based on the address, wherein the memory resource is associated with at least one of the CPU and the APD; and sending information corresponding to the mapping to the CPU or APD. 2. The method of claim 1 , wherein the memory instruction is received from the APD. 3. The method of claim 2 , wherein when the mapping maps to a private memory resource associated with the APD, the mapping comprises, using a video memory manager to map the memory instruction to the private memory resource. 4. The method of claim 2 , wherein when the mapping maps to a shared memory resource associated with the APD, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by both the CPU and the APD. 5. The method of claim 2 , wherein when the mapping maps to a shared memory resource associated with the CPU, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by both the CPU and the APD. 6. The method of claim 1 , wherein the memory instruction is received from a CPU. 7. The method of claim 6 , wherein when the mapping maps to a shared memory resource associated with the APD, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by both the CPU and APD. 8. The method of claim 6 , wherein when the mapping maps to a private memory resource associated with the CPU, the mapping comprises using a CPU memory manager to map the memory instruction to the private memory resource, wherein the private memory resource is not accessible by the APD. 9. The method of claim 1 , wherein the CPU and APD both perform instructions in an application. 10. The method of claim 5 , wherein an operating system memory manager manages the CPU memory manager and the system memory manager. 11. A system for mapping a memory instruction to a shared memory address space in a computer arrangement configured for unified operation between a central processing unit (CPU) or an accelerated processing device (APD), comprising: a memory instruction receiver, configured to receive the memory instruction, the memory instruction referring to an address in the shared memory address space; a memory selector configured to select a memory resource based on the address, wherein the memory resource is associated with the CPU or the APD; and a memory instruction mapper configured to map the memory instruction to the selected memory resource based on the memory instruction, wherein the memory instruction is performed based on the mapping. 12. The system of claim 11 , wherein the memory instruction is received from the APD. 13. The system of claim 12 , wherein when the selected memory resource is a private memory resource associated with the APD, the mapping comprises, using a video memory manager to map the memory instruction to the private memory resource. 14. The system of claim 12 , wherein when the selected memory resource is a shared memory resource associated with the APD, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by both the CPU and the APD. 15. The system of claim 12 , wherein when the selected memory resource is a shared memory resource associated with the CPU, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by both the CPU and the APD. 16. The system of claim 11 , wherein the memory instruction is received from the CPU. 17. The system of claim 16 , wherein when the selected memory resource is a shared memory resource associated with the APD, the mapping comprises using a system memory manager to map the memory instruction to the shared memory resource, wherein the shared memory resource is accessible by the CPU and the APD. 18. The system of claim 16 , wherein when the selected memory resource is a private memory resource associated with the CPU, the mapping comprises using a CPU memory manager to map the memory instruction to the private memory resource, wherein the private memory resource is not accessible by the APD. 19. The system of claim 11 , wherein the CPU and APD both perform instructions in an application. 20. The method of claim 14 , wherein an operating system memory manager manages the CPU memory manager and the system memory manager. 21. A central processing unit (CPU) configured to map a memory instruction to a shared memory address space, comprising: a memory instruction receiver, configured to receive the memory instruction, the memory instruction referring to an address in the shared memory address space; a memory selector configured to select a memory resource based on the address, wherein the memory resource is associated with the CPU or an accelerated processing device (APD); and a memory instruction mapper configured to map the memory instruction to the selected memory resource based on the memory instruction, wherein the memory instruction is performed based on the mapping. 22. The CPU of claim 21 , wherein the memory instruction is received from the APD. 23. The CPU of claim 21 , wherein the memory instruction is received from the CPU. 24. An accelerated processing device (APD) configured to map a memory instruction to a shared memory address space, comprising: a memory instruction receiver, configured to receive the memory instruction, the memory instruction referring to an address in the shared memory address space; a memory selector configured to select a memory resource based on the address, wherein the memory resource is associated with a central processing unit (CPU) or the APD; and a memory instruction mapper configured to map the memory instruction to the selected memory resource based on the memory instruction, wherein the memory instruction is performed based on the mapping. 25. The APD of claim 24 , wherein the memory instruction is received from the APD. 26. The APD of claim 24 , wherein the memory instruction is received from the CPU.

Assignees

Inventors

Classifications

  • using tables or multilevel address translation means (G06F12/023 takes precedence; address translation in virtual memory systems G06F12/10) · CPC title

  • Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication (G06F12/08 takes precedence) · CPC title

  • G06F12/063Primary

    for I/O modules, e.g. memory mapped I/O (I/O protocol G06F13/42) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9009419B2 cover?
Methods and systems are provided for mapping a memory instruction to a shared memory address space in a computer arrangement having a CPU and an APD. A method includes receiving a memory instruction that refers to an address in the shared memory address space, mapping the memory instruction based on the address to a memory resource associated with either the CPU or the APD, and performing the m…
Who is the assignee on this patent?
Asaro Anthony, Normoyle Kevin, Hummel Mark D, and 3 more
What technology area does this patent fall under?
Primary CPC classification G06F12/0292. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 14 2015 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).