A Case Against (Most) Context Switches

By: rwessel (rwessel.delete@this.yahoo.com), May 17, 2021 6:55 pm
Room: Moderated Discussions
Little Horn (sink.delete@this.example.net) on May 17, 2021 5:03 pm wrote:
> Thoughts?

I've been a proponent of that sort of thing for years. They've missed a couple of items, though. Thread states should probably get their own cache, and probably two or three levels. L1 corresponding to actual hardware states in the core (basically what SMT does now), and then a couple of levels to back those up before spilling to memory. The performance requires are sufficiently different that trying to keep this in the data caches is likely foolish, the data caches are under enough pressure as it is.

Hardware scheduling is a must, as they indicate, but that incudes moving threads between cores, and sockets.

Inter-thread synchronization and signaling need more than x86-like monitor/mwait. Hardware probably needs to support several forms, but probably some form of message queue (those would also fit more naturally with "interrupt" handlers), and some good primitives for implementing the standard synchronization objects, as well as something RPC-like (especially for system calls). These need to be fast in both the single and multiple receiver cases, and needs to happen across sockets.

Microthread support is necessary - single "thread" performance remains a critical item. Either explicit creation, or via messages to pools of pre-created threads (but that has to be fast).
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
A Case Against (Most) Context SwitchesLittle Horn2021/05/17 05:03 PM
  A Case Against (Most) Context Switchesrwessel2021/05/17 06:55 PM
  A Case Against (Most) Context SwitchesFoo_2021/05/18 01:58 AM
    A Case Against (Most) Context SwitchesDoug S2021/05/18 08:45 AM
      A Case Against (Most) Context SwitchesKonrad Schwarz2021/05/19 07:35 AM
  A Case Against (Most) Context SwitchesEtienne Lorrain2021/05/18 03:11 AM
  A Case Against (Most) Context SwitchesAndrey2021/05/18 06:58 AM
  A Case Against (Most) Context Switchesgallier22021/05/18 08:41 AM
  A Case Against (Most) Context Switches---2021/05/18 09:00 AM
  A Case Against That Other PaperBrendan2021/05/18 12:37 PM
    A Case Against That Other PaperMark Roulo2021/05/18 03:32 PM
      A Case Against That Other PaperBrendan2021/05/18 11:05 PM
        A Case Against That Other PaperMark Roulo2021/05/19 01:09 PM
  A Case Against (Most) Context SwitchesRomain Dolbeau2021/05/19 04:05 AM
    A Case Against (Most) Context SwitchesBjörn Ragnar Björnsson2021/05/19 01:13 PM
      A Case Against ... authors show zero awareness of Cray-MTABjörn Ragnar Björnsson2021/05/19 06:18 PM
    Cray MTA avoided cachesPaul A. Clayton2021/05/20 06:36 AM
      Cray MTA avoided cachesdmcq2021/05/20 10:09 AM
        Cray MTA avoided cachesRayla2021/05/20 10:28 AM
      A LONG response to the paperPaul A. Clayton2021/05/22 06:15 AM
        A LONG response to the paperAdrian2021/05/22 09:18 AM
          Thank you for the note of appreciationPaul A. Clayton2021/05/24 05:06 AM
  A Case Against (Most) Context Switchesdmcq2021/05/19 01:47 PM
Reply to this Topic
Body: No Text
How do you spell tangerine? 🍊