IP Library Granted Patent US 9,448,930
Granted Patent B2
US 9,448,930 · App. 14/833,850 · Granted Sep 20, 2016

Memory heaps in a memory model for a unified computing system

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,448,930
App. No.
14/833,850
Granted
Sep 20, 2016
Kind
B2
Abstract

A method and system for allocating memory to a memory operation executed by a processor in a computer arrangement having a first processor configured for unified operation with a second processor. The method includes receiving a memory operation from a processor and mapping the memory operation to one of a plurality of memory heaps. The mapping produces a mapping result. The method also includes providing the mapping result to the processor.

Claims (27)

1. A method of allocating memory in a processing system, the method comprising:

receiving a memory instruction from the processing system, wherein the memory instruction references a memory address shared by at least two processors, and

mapping the memory instruction to one of a plurality of virtual memory pools based on the memory address; and

providing a mapping result to the processing system.

2. The method of claim 1 , wherein at least one virtual memory pool is associated with at least one physical memory resource.

3. The method of claim 2 , wherein the at least one physical memory resource is at least two physical memory resources.

4. The method of claim 1 , wherein at least one of the virtual memory pools is not accessible by one of the at least two processors, and at least one of the virtual memory pools is accessible by all of the at least two processors.

5. The method of claim 4 , wherein at least one virtual memory pool is only accessible by a single group of first processor threads.

6. The method of claim 5 , wherein at least one virtual memory pool is only accessible by a single application.

7. The method of claim 1 , wherein at least one virtual memory pool is only accessible by a specific one of the at least two processors.

8. The method of claim 7 , wherein at least one virtual memory pool is mapped to the physical memory upon initiation of an associated processor thread.

9. The method of claim 1 , wherein at least one virtual memory pool is accessible by all of the at least two processors and the at least one virtual memory pool is mapped to a physical memory resource associated with one processor of the at least two processors using a page table associated with the one processor.

10. The method of claim 1 , wherein at least one virtual memory pool is only accessible by a specific type of processor.

11. The method of claim 1 , wherein a type of processor imparts different attributes on a mapped memory.

12. A system having at least two processors, comprising:

a plurality of virtual memory pools, each being configured to access an associated memory resource;

a mapper configured to receive a memory instruction from the system, the memory instruction including a shared memory address (SMA) reference; and

the mapper further configured to map the memory instruction to one of the plurality of virtual memory pools based on the SMA.

13. The system of claim 12 , wherein different attributes are applied to a mapped virtual memory pool depending upon origination of the memory instruction.

14. The system of claim 12 , further comprising:

a shared memory address space, wherein the memory instruction references the SMA in the shared memory address space.

15. The system of claim 12 , wherein at least one of the plurality of virtual memory pools is mapped to a first processor memory resource using a page table and is accessible by the at least two processors.

16. The system of claim 12 , wherein at least one of the plurality of virtual memory pools is not accessible by a first processor, at least another virtual memory pool is not accessible by a second processor, and at least another virtual memory pool is accessible by the first processor and the second processor.

17. The system of claim 12 , wherein at least one of the plurality of virtual memory pools is accessible by a first processor, is not accessible by a second processor, and is an allocated memory space in a memory resource associated with the first processor.

18. The system of claim 12 , wherein at least one virtual memory pool is only accessible by a specific one of the at least two processors.

19. The system of claim 12 , wherein at least one virtual memory pool is only accessible by a specific type of processor.

20. The system of claim 12 , wherein a type of processor imparts different attributes on a mapped memory.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2025
From: ATI TECHNOLOGIES ULC
To: ONESTA IP, LLC
Reel/Frame 070883/0051 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2024
From: ADVANCED MICRO DEVICES, INC.
To: ONESTA IP, LLC
Reel/Frame 069381/0951 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2015
From: NORMOYLE, KEVIN; HUMMEL, MARK
To: ADVANCED MICRO DEVICES, INC.
Reel/Frame 036404/0730 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 24, 2015
From: ASARO, ANTHONY
To: ATI TECHNOLOGIES ULC
Reel/Frame 036404/0779 →