By: Paul A. Clayton (paaronclayton.delete@this.gmail.com), September 3, 2012 4:16 am
Room: Moderated Discussions
anon (anon.delete@this.anon.com) on September 2, 2012 6:23 pm wrote:
> Paul A. Clayton (paaronclayton.delete@this.gmail.com) on
> September 1, 2012 7:29 am wrote:
[snip]
>> (Of course, Alpha did eventually support 64 KiB base
>> pages.)
>
> Didn't Alpha always support 64 KB, in addition to 8 KB, 512
> KB, and 2 MB page sizes?
At least some of the Alpha documentation calls such larger translation units page groups (e.g., the 21264 Microprocessor Hardware Reference Manual: "with each entry able to map a single 8KB page or a group of 8, 64, or 512 8KB pages"--that would be 4 MiB not 2 MiB, by the way). (Note I did use "base pages" to avoid confusion.)
Looking at the 21064A data sheet, such seem to have been called large pages, but less variety was supported in the instruction translation buffer ("The first eight page table entries provide small page (8K byte) translations while the remaining four provide large page (4 MB) translations.") (The HRM also indicates that "superpages" were supported for OS use that directly mapped the entire physical address space [multiple times, presumably using modulo addressing--the 21164PC data sheet seems to confirm this].)
(The 21164PC data sheet seems a bit less consistent in terminology: "The buffer stores recently used instruction stream (Istream) address translations and protection information for pages ranging from 8KB to 512KB" but also "Each entry supports all four granularity hint-bit combinations, so that a single DTB entry can provide translation for up to 512 contiguously mapped, 8-KB pages.")
> Paul A. Clayton (paaronclayton.delete@this.gmail.com) on
> September 1, 2012 7:29 am wrote:
[snip]
>> (Of course, Alpha did eventually support 64 KiB base
>> pages.)
>
> Didn't Alpha always support 64 KB, in addition to 8 KB, 512
> KB, and 2 MB page sizes?
At least some of the Alpha documentation calls such larger translation units page groups (e.g., the 21264 Microprocessor Hardware Reference Manual: "with each entry able to map a single 8KB page or a group of 8, 64, or 512 8KB pages"--that would be 4 MiB not 2 MiB, by the way). (Note I did use "base pages" to avoid confusion.)
Looking at the 21064A data sheet, such seem to have been called large pages, but less variety was supported in the instruction translation buffer ("The first eight page table entries provide small page (8K byte) translations while the remaining four provide large page (4 MB) translations.") (The HRM also indicates that "superpages" were supported for OS use that directly mapped the entire physical address space [multiple times, presumably using modulo addressing--the 21164PC data sheet seems to confirm this].)
(The 21164PC data sheet seems a bit less consistent in terminology: "The buffer stores recently used instruction stream (Istream) address translations and protection information for pages ranging from 8KB to 512KB" but also "Each entry supports all four granularity hint-bit combinations, so that a single DTB entry can provide translation for up to 512 contiguously mapped, 8-KB pages.")
Topic | Posted By | Date |
---|---|---|
Article: Haswell TM Alternatives | David Kanter | 2012/08/21 09:17 PM |
Article: Haswell TM Alternatives | Håkan Winbom | 2012/08/21 11:52 PM |
Article: Haswell TM Alternatives | David Kanter | 2012/08/22 01:06 AM |
Article: Haswell TM Alternatives | anon | 2012/08/22 08:46 AM |
Article: Haswell TM Alternatives | Linus Torvalds | 2012/08/22 09:16 AM |
Article: Haswell TM Alternatives | Doug S | 2012/08/24 08:34 AM |
AMD's ASF even more limited | Paul A. Clayton | 2012/08/22 09:20 AM |
AMD's ASF even more limited | Linus Torvalds | 2012/08/22 09:41 AM |
Compiler use of ll/sc? | Paul A. Clayton | 2012/08/28 09:28 AM |
Compiler use of ll/sc? | Linus Torvalds | 2012/09/08 12:58 PM |
Lock recognition? | Paul A. Clayton | 2012/09/10 01:17 PM |
Sorry, I was confused | Paul A. Clayton | 2012/09/13 10:56 AM |
Filter to detect store conflicts | Paul A. Clayton | 2012/08/22 09:19 AM |
Article: Haswell TM Alternatives | bakaneko | 2012/08/22 02:02 PM |
Article: Haswell TM Alternatives | David Kanter | 2012/08/22 02:45 PM |
Article: Haswell TM Alternatives | bakaneko | 2012/08/22 09:56 PM |
Cache line granularity? | Paul A. Clayton | 2012/08/28 09:28 AM |
Cache line granularity? | David Kanter | 2012/08/31 08:13 AM |
A looser definition might have advantages | Paul A. Clayton | 2012/09/01 06:29 AM |
Cache line granularity? | rwessel | 2012/08/31 07:54 PM |
Alpha load locked granularity | Paul A. Clayton | 2012/09/01 06:29 AM |
Alpha load locked granularity | anon | 2012/09/02 05:23 PM |
Alpha pages groups | Paul A. Clayton | 2012/09/03 04:16 AM |
An alternative implementation | Maynard Handley | 2012/11/20 09:52 PM |
An alternative implementation | bakaneko | 2012/11/21 05:52 AM |
Guarding unread values? | Paul A. Clayton | 2012/11/21 08:39 AM |
Guarding unread values? | bakaneko | 2012/11/21 11:25 AM |
TM granularity and versioning | Paul A. Clayton | 2012/11/21 08:27 AM |
TM granularity and versioning | Maynard Handley | 2012/11/21 10:52 AM |
Indeed, TM (and coherence) has devilish details (NT) | Paul A. Clayton | 2012/11/21 10:56 AM |