IP Library Granted Patent US 10,157,444
Granted Patent B2
US 10,157,444 · App. 15/483,059 · Granted Dec 18, 2018

Dynamic page sizing of page table entries

Inventors: Abhishek R. Appu (El Dorado Hills, CA); Joydeep Ray (Folsom, CA); Altug Koker (El Dorado Hills, CA); Balaji Vembu (Folsom, CA); Prasoonkumar P. Surti (Folsom, CA); Kamal Sinha (Rancho Cordova, CA); Vasanth Ranganathan (El Dorado Hills, CA); Kiran C. Veernapu (Bangalore, IN); Bhushan M. Borole (Rancho Cordova, CA); Wenyin Fu (Folsom, CA)
Assignee: Intel Corporation
G06T1/60G06T1/20G06T15/005
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 10,157,444
App. No.
15/483,059
Granted
Dec 18, 2018
Kind
B2
Abstract

In accordance with one embodiment each page table entry maps a variable page size (per entry), if multiple continuous virtual pages map to contiguous physical pages. This may drastically reduce the number of translation lookaside buffer (TLB) entries needed since each entry can potentially map a larger chunk of memory, in some embodiments.

Claims (36)

1. A method implemented by a driver comprising:

requesting from an operating system, a variable page table entry size based on the size of an allocated memory block; and

receiving an allocated size from the operating system.

2. The method of claim 1 including enabling allocation of a plurality of memory sizes with one step size.

3. The method of claim 2 including enabling a step size of 4 KB.

4. The method of claim 2 including providing a page table entry with a page size field.

5. The method of claim 4 wherein the page size field includes a value, said value defining a page size equal to the value plus one times a step size.

6. The method of claim 5 wherein said step size is an integer from 0 to 16.

7. The method of claim 1 including enabling a graphics driver to submit a page table entry memory request to the operating system including a preferred entry size.

8. The method of claim 7 including enabling the operating system to respond with a list of physical addresses and block sizes.

9. The method of claim 1 including requesting a variable page table entry size in a graphics processing unit using a graphics driver.

10. The method of claim 1 including providing the allocated size from an operating system.

11. One or more non-transitory computer readable media storing instructions to be implemented by a driver comprising:

requesting from an operating system, a variable page table entry size based on the size of an allocated memory block; and

receiving an allocated size from the operating system.

12. The media of claim 11 , further storing instructions to perform a sequence including enabling allocation of a plurality of memory sizes with one step size.

13. The media of claim 12 , further storing instructions to perform a sequence including enabling a step size of 4 KB.

14. The media of claim 12 , further storing instructions to perform a sequence including providing a page table entry with a page size field.

15. The media of claim 14 , further storing instructions to perform a sequence wherein the page size field includes a value, said value defining a page size equal to the value plus one times a step size.

16. The media of claim 15 , further storing instructions to perform a sequence wherein said step size is an integer from 0 to 16.

17. The media of claim 11 , further storing instructions to perform a sequence including enabling a graphics driver to submit a page table entry memory request to the operating system including a preferred entry size.

18. The media of claim 17 , further storing instructions to perform a sequence including enabling the operating system to respond with a list of physical addresses and block sizes.

19. The media of claim 11 , further storing instructions to perform a sequence including requesting a variable page table entry size in a graphics processing unit using a graphics driver.

20. The media of claim 11 , further storing instructions to perform a sequence including providing the allocated size from an operating system.

21. An apparatus comprising:

a processor to request from an operating system, a variable page table entry size based on the size of an allocated memory block, receive an allocated size from the operating system and

a memory coupled to said processor.

22. The apparatus of claim 21 , said processor to enable allocation of a plurality of memory sizes with one step size.

23. The apparatus of claim 22 , said processor to enable a step size of 4 KB.

24. The apparatus of claim 22 , said processor to provide a page table entry with a page size field.

25. The apparatus of claim 24 wherein the page size field includes a value, said value defining a page size equal to the value plus one times a step size.

26. The apparatus of claim 25 wherein said step size is an integer from 0 to 16.

27. The apparatus of claim 21 , said processor to enable a graphics driver to submit a page table entry memory request to the operating system including a preferred entry size.

28. The apparatus of claim 27 , said processor to enable the operating system to respond with a list of physical addresses and block sizes.

29. The apparatus of claim 21 , said processor to request a variable page table entry size in a graphics processing unit using a graphics driver.

30. The apparatus of claim 21 , said processor to provide the allocated size from an operating system.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 17, 2022
From: INTEL CORPORATION
To: UNM RAINFOREST INNOVATIONS
Reel/Frame 060234/0794 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 6, 2017
From: APPU, ABHISHEK R.; RAY, JOYDEEP; KOKER, ALTUG; VEMBU, BALAJI; SURTI, PRASOONKUMAR P.; SINHA, KAMAL; RANGANATHAN, VASANTH; VEERNAPU, KIRAN C.; BOROLE, BHUSHAN M.; FU, WENYIN
To: INTEL CORPORATION
Reel/Frame 042610/0440 →
Continuity (1)
Related Publication 20180293702A1 · Oct 11, 2018