Skip to content
Snippets Groups Projects
  1. May 19, 2021
  2. May 18, 2021
  3. May 17, 2021
  4. May 14, 2021
  5. May 11, 2021
  6. May 10, 2021
  7. May 08, 2021
  8. May 05, 2021
  9. May 04, 2021
    • Florian Schmaus's avatar
      Merge branch 'io-use-affinity' into 'master' · 3c984ad7
      Florian Schmaus authored
      [IO] set the affinity of Fibers created by the completer thread
      
      See merge request i4/manycore/emper!188
      3c984ad7
    • Florian Fischer's avatar
    • Florian Fischer's avatar
      [IO] use our affinity capabilities in the io subsystem · 388bd882
      Florian Fischer authored
      Set the affinity for Fibers created from the completer thread
      to the workerId where the completion originated from.
      
      First, we split up the Callback type in a user facing and an internal one.
      The internal one has a new affinity member which provides the memory for
      the new Fibers affinity buffer. This is memory safe because the Callback
      object is always heap allocated and freed when the CallbackFiber terminates.
      
      Second, each Future has an affinity member as well which will be passed
      to the BinaryPrivateSemaphore when calling signalFromAnywhere to
      again hint the originating worker.
      
      Both affinity values are set during the preparation of the Future in
      IoContext::prepareFutureChain because then we are sure in which worker's
      IoContext the completion will be generated.
      388bd882
Loading