Mill is single-address-space-oriented

By: dmcq (dmcq.delete@this.fano.co.uk), April 23, 2015 9:17 am
Room: Moderated Discussions
Paul A. Clayton (paaronclayton.delete@this.gmail.com) on April 23, 2015 7:00 am wrote:
> Jouni Osmala (yeah.delete@this.right.com) on April 23, 2015 3:19 am wrote:
> [snip]
> > But almost every TLB works parallel with load instead of front of it and is primary reason why minimum
> > page size affects the cache design so much and why I always claim it would be really nice to have
> > bigger linear translation between physical and virtual addresses than 4k minimum page size.
>
> The Mill uses virtually tagged caches (including for L2). Homonyms (same virtual address, different physical
> address) are easily handled by an address space ID mechanism (as dcmq indicated); the Mill uses this (a
> "turf ID" is used — a "turf" is a permission domain and need not use a separate pseudo-address-space —
> the handling of UNIX fork is briefly described at the Mill Computing site). Writable synonyms (different
> virtual address, same physical address) are more problematic. I don't know how the Mill is intended to handle
> such. (It should also be noted that the Mill does not treat pointers as simply integers.)
>
> As dcmq also noted, there are a number of mechanisms for
> handling aliasing issues in a virtually tagged cache.
>
> > And little reply to this point.
> > http://millcomputing.com/wiki/Protection#Region_Table
> >
> > And they need to be faster than L1 accesses for any modern design.
> > Virtually tagged L1 caches don't work with SMT and is bad for modern requirement of running
> > lots of active processes and threads. I would really like if it would be option for CPU
> > to have virtually tagged L1 cache and TLB would only be needed for L2 cache but it isn't
> > an option, when you need to handle lots of context switches and coherency traffic.
>
> First, the Mill as currently conceived is poorly suited to SMT. (SoEMT is more friendly
> to the current conception. On the other hand, modifying the design to be more friendly
> to multithreading does not seem likely to be prohibitively difficult or expensive.)
>
> Second, virtually tagged L1 caches are not a problem with SMT. ASIDs work fairly well. (Aside from the writable
> synonym problem, there would be wasted cache capacity for commonly used read-only shared memory.)
>
> The overhead of using 64-bit addresses should be compensated for by the use of huge segments (well
> known regions) for permission checking in the common cases and slightly relaxed timing for permission
> checks. (The Mill also uses per-byte valid bits, further increasing cache metadata.)

Ah yes fork, and shared libraries. I'd forgotten about that. I think mostly from an embedded perspective and there the shared code can go in the system space. That does mean that there is a great deal of physical address sharing irrespective of any locks or anything like that. I better have a good look at how the Mill deals with fork.
< Previous Post in Thread 
TopicPosted ByDate
My take on the Mill (hopefully using more conventional terminology)Gabriele Svelto2015/04/18 01:06 AM
  My take on the Mill (hopefully using more conventional terminology)Ronald Maas2015/04/19 09:53 AM
    My take on the Mill (hopefully using more conventional terminology)ex-apple2015/04/19 10:53 AM
    My take on the Mill (hopefully using more conventional terminology)Eric Bron nli2015/04/20 11:43 AM
      My take on the Mill (hopefully using more conventional terminology)Eric Bron2015/04/20 11:46 AM
    My take on the Mill (hopefully using more conventional terminology)Ivan Godard2015/04/20 05:27 PM
      My take on the Mill (hopefully using more conventional terminology)Ronald Maas2015/04/20 10:03 PM
      My take on the Mill (hopefully using more conventional terminology)sylt2015/04/21 09:49 AM
      My take on the Mill (hopefully using more conventional terminology)RichardC2015/04/21 12:57 PM
        My take on the Mill (hopefully using more conventional terminology)Exophase2015/04/21 02:47 PM
          My take on the Mill (hopefully using more conventional terminology)RichardC2015/04/21 03:22 PM
            My take on the Mill (hopefully using more conventional terminology)Peter Lund2015/04/22 01:35 AM
          My take on the Mill (hopefully using more conventional terminology)Gabriele Svelto2015/04/22 02:42 AM
        My take on the Mill (hopefully using more conventional terminology)RichardC2015/04/22 06:23 AM
          My take on the Mill (hopefully using more conventional terminology)EduardoS2015/04/22 06:59 PM
            My take on the Mill (hopefully using more conventional terminology)RichardC2015/04/22 07:53 PM
              My take on the Mill (hopefully using more conventional terminology)dmcq2015/04/23 02:45 AM
    My take on the Mill (hopefully using more conventional terminology)EduardoS2015/04/21 12:40 PM
      how about Freescale LS1022A ?Michael S2015/04/21 03:53 PM
        how about Freescale LS1022A ?EduardoS2015/04/21 04:44 PM
      My take on the Mill (hopefully using more conventional terminology)rwessel2015/04/21 04:40 PM
        My take on the Mill (hopefully using more conventional terminology)EduardoS2015/04/21 04:45 PM
          My take on the Mill (hopefully using more conventional terminology)Exophase2015/04/21 05:03 PM
      My take on the Mill (hopefully using more conventional terminology)Ronald Maas2015/04/21 08:09 PM
  My take on the Mill (hopefully using more conventional terminology)Maynard Handley2015/04/19 11:13 AM
    My take on the Mill (hopefully using more conventional terminology)Ivan Godard2015/04/20 05:34 PM
      My take on the Mill (hopefully using more conventional terminology)Brett2015/04/20 05:43 PM
        My take on the Mill (hopefully using more conventional terminology)Ivan Godard2015/04/20 08:59 PM
      Fixed size registers?David Kanter2015/04/21 08:26 AM
    My take on the Mill (hopefully using more conventional terminology)EduardoS2015/04/21 12:51 PM
      My take on the Mill (hopefully using more conventional terminology)Maynard Handley2015/04/21 02:02 PM
      Large register filejuanrga2015/04/21 05:01 PM
        Large register fileEduardoS2015/04/21 05:53 PM
  My take on the Mill (hopefully using more conventional terminology)Ivan Godard2015/04/20 05:08 PM
    My take on the Mill (hopefully using more conventional terminology)anon2015/04/21 10:27 PM
      My take on the Mill (hopefully using more conventional terminology)Exophase2015/04/21 10:40 PM
        My take on the Mill (hopefully using more conventional terminology)anon2015/04/23 02:59 AM
    My take on the Mill (hopefully using more conventional terminology)Gabriele Svelto2015/04/22 12:47 AM
    PLB description seems to missunderstand how TLB works.Jouni Osmala2015/04/23 03:19 AM
      PLB description seems to missunderstand how TLB works.dmcq2015/04/23 04:54 AM
      Mill is single-address-space-orientedPaul A. Clayton2015/04/23 07:00 AM
        Mill is single-address-space-orienteddmcq2015/04/23 09:17 AM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell tangerine? 🍊