Author Topic: NumaPref - Launches process with a preferred NUMA node  (Read 1084 times)

Offline Jeremy Collake

  • Administrator
  • Member#
  • *****
  • Posts: 5228
  • Gender: Male
  • The Lasso
    • Bitsum
NumaPref - Launches process with a preferred NUMA node
« on: January 13, 2019, 04:44:46 PM »
NumaPref launches a child process with a preferred NUMA node extended attribute (PROC_THREAD_ATTRIBUTE_PREFERRED_NODE).

Note that this same functionality is provided in cmd.exe's Start /NODE. It is exposed here as part of additional experimentation so that we have further control.

When combined with Corepios's NUMA Dissociater, this operation is able to achieve better consistency in the massive (2X) improvements in 7-zip and Indigo Benchmarks on the AMD Threadripper 2990wx, 2970wx, and EPYC 7551.

Consistency is still not 100% though, at least for the 2990wx (EPYC has more consistency with the NUMA Dissociater fix) There is, however, consistency per NUMA node. A fast node will stay fast, it seems. Fast nodes are not dependent on the DMA nodes of the 2990wx. Bizarre.

This is still being digested. Experimental and results are tentative. I encourage user results.

Download: https://bitsum.com/files/numapref.exe

Usage:

 USAGE: numapref.exe NUMA_NODE_NUM target.exe [target_params, ...]
 EXAMPLES:
 fixedlaunch.exe 1 7zg.exe b
 fixedlaunch.exe 1 "indigo bnechmark.exe"


7z before:


7z after:

« Last Edit: January 20, 2019, 01:12:26 PM by Jeremy Collake »


Software Engineer. Bitsum LLC.