Linux MIPS Architecture development
 help / color / mirror / Atom feed
From: Ralf Baechle <ralf@linux-mips.org>
To: Paul Burton <paul.burton@imgtec.com>
Cc: Ed Swierk <eswierk@skyportsystems.com>,
	linux-mips@linux-mips.org, ddaney.cavm@gmail.com
Subject: Re: [PATCH v2 5/6] mips: use per-mm page to execute FP branch delay slots
Date: Fri, 4 Jul 2014 10:52:46 +0200	[thread overview]
Message-ID: <20140704085246.GH13532@linux-mips.org> (raw)
In-Reply-To: <20140704080641.GY804@pburton-laptop>

On Fri, Jul 04, 2014 at 09:06:41AM +0100, Paul Burton wrote:

> Yes, I think it would. The reason I went with the per-mm approach though
> was to try to avoid so much overhead. I suppose we could possibly
> allocate the page on demand so that threads which don't use FP don't pay
> for it, and maybe use the shrinker interface to free the page if we run
> low on memory and aren't currently executing from it. Though it would
> mean that the FP branch delay "emulation" could fail if memory is tight,
> but I suppose that's no worse than now where it could blow the (user)
> stack.
> 
> I'll try to get a v3 out at some point soon.

The actual piece of code that needs to be installed is tiny.  So the page
could be shared between many threads.  In fact a single page would
suffice for most processes and only threads would require more slots
than provided by a single page so more pags could be allocated or the
process could sleep until a slot becomes available.

Assuming the smallest supported page size of 4k and slots of 128 bytes
(that is the largest S-cache line size in common use) that's 32 slots.

I'm also wondering how insane emulation would be.  We already have the
capability to emulate a fair fraction of the instruction set.

  Ralf

  parent reply	other threads:[~2014-07-04  8:52 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-03 22:31 [PATCH v2 5/6] mips: use per-mm page to execute FP branch delay slots Ed Swierk
2014-07-04  8:06 ` Paul Burton
2014-07-04  8:06   ` Paul Burton
2014-07-04  8:52   ` Ralf Baechle [this message]
2014-07-04  9:06     ` Paul Burton
2014-07-04  9:06       ` Paul Burton
2014-07-04  9:38       ` Ralf Baechle
2014-07-04 11:30         ` Paul Burton
2014-07-04 11:30           ` Paul Burton
2014-07-04 15:42           ` Ralf Baechle
2014-09-13 23:06           ` Maciej W. Rozycki
2014-09-18  8:57             ` Paul Burton
2014-09-18  8:57               ` Paul Burton
  -- strict thread matches above, loose matches on Subject: below --
2014-07-03 17:56 Ed Swierk
2014-07-03 20:12 ` Paul Burton
2014-07-03 20:12   ` Paul Burton
2013-11-08 12:07 [PATCH " Paul Burton
2013-11-08 14:50 ` [PATCH v2 " Paul Burton
2013-11-08 14:50   ` Paul Burton
2013-11-21 16:48   ` Paul Burton
2013-11-21 16:48     ` Paul Burton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140704085246.GH13532@linux-mips.org \
    --to=ralf@linux-mips.org \
    --cc=ddaney.cavm@gmail.com \
    --cc=eswierk@skyportsystems.com \
    --cc=linux-mips@linux-mips.org \
    --cc=paul.burton@imgtec.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox