Skip to content

Multiprocess Affinity Mask for Multithreaded Workers

Compare
Choose a tag to compare
@luav luav released this 10 Jul 13:39
· 175 commits to master since this release

Features & Optimizations

  • Multiprocess Affinity Mask for multithreaded workers with possibility to mask multiple cores / hardware threads or reserve them masking only the first logical CPU (physical hardware thread) to maximize CPU cache L1/2/3
  • ExecPool initialization interface updated (afnstep replaced with AffinityMask)
  • Available RSS/RAM in the OS is considered in memory constrains besides the nominal RAM
  • Scheduling refined to reduce the number of rescheduling and execute huge jobs with minimal swapping

Fixes

  • Fixed and optimized affinity masking to maximize the dedicate cache (logical cores enumeration fixed)
  • Termination refined to not leave spawning non-registered workers on termination