Author Topic: CorePrio - Bitsum's 'Dynamic Local Mode'  (Read 178 times)

Offline Jeremy Collake

  • Administrator
  • Member#
  • *****
  • Posts: 5168
  • Gender: Male
  • The Lasso
    • Bitsum
CorePrio - Bitsum's 'Dynamic Local Mode'
« on: November 08, 2018, 03:16:42 PM »
Download: https://bitsum.com/files/coreprio.exe

This is a prototype implementation of our in-house 'Dynamic Local Mode'.

This prototype is a simple console mode utility. It does not look like much, especially with debug output disabled, but the algorithm works well. A proper package and managing application is being developed.

CorePrio can be run without parameters to auto-optimize for the ThreadRipper 2990wx and 2920wx. Thread management only occurs while the utility is running.

The idea here is to dynamically assign running threads to the more optimal dies of the Threadripper HCC CPUs that have direct memory access. Windows can not adequately prioritize NUMA nodes on these platforms due to the unusual configuration where 2 of 4 of the NUMA nodes (2 of 4 CPU dies) have no node local memory. AMD implemented 'Dynamic Local Mode' in their Ryzen Master software, and it will eventually come to the chipset drivers. Bitsum's implementation is for our own further experimentation and tuning, and of course to be included in our product suite.

It is entirely possible that this algorithm is also useful in other cases where you want to prioritize a set of CPUs, but don't want to restrict the CPU affinity of all threads in a process.

A GUI and proper package is coming. The core implementation will be as a system service.

Code: [Select]
USAGE: CorePrio [-i refresh_rate_ms] [-n sw_thread_count] [-a prioritized_affinity]

 Example: CorePrio -i 2000 -n 32 -a 00000000ffffffff

  Runs CorePrio with at a refresh rate of 1500 ms, managing 32 threads, with prioritized CPU affinity of 0-31.
  Default: i = 2000, n = 1/2 of logical cores, a = first 1/2 of logical cores



« Last Edit: November 13, 2018, 03:07:10 AM by Jeremy Collake »


Software Engineer. Bitsum LLC.

Offline Jeremy Collake

  • Administrator
  • Member#
  • *****
  • Posts: 5168
  • Gender: Male
  • The Lasso
    • Bitsum
Re: CorePrio - Bitsum's 'Dynamic Local Mode'
« Reply #1 on: November 13, 2018, 03:06:05 AM »
Build 3:
- Restructured to prepare for implementation as a service
« Last Edit: November 13, 2018, 03:07:39 AM by Jeremy Collake »
Software Engineer. Bitsum LLC.