News:

NOTICE: This forum is mostly an archive, though new posts are allowed. Registration may require manual admin activation. After registering visit https://bitsum.com/contact/ to request account activation.

Main Menu

NumaPref - Launches process with a preferred NUMA node

Started by Jeremy Collake, January 13, 2019, 04:44:46 PM

Previous topic - Next topic

Jeremy Collake

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 (https://bitsum.com/portfolio/coreprio/), 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:

Software Engineer. Bitsum LLC.