Mind: Distribute and pin Mind threads to CPUs

At startup, Marionette will distribute and pin the Mind
threads across the available CPUs, warning if it couldn't
do so.
This commit is contained in:
2025-08-03 09:18:45 -04:00
parent 1deb92a416
commit 285b63b618
4 changed files with 97 additions and 0 deletions
+12
View File
@@ -6,6 +6,18 @@ namespace smo {
void Mind::initialize()
{
/* Distribute threads across available CPUs */
try
{
ComponentThread::distributeAndPinThreadsAcrossCpus();
}
catch (const std::exception& e)
{
std::cerr << "Salmanoff couldn't distribute the mind threads across "
"the CPUs, so performance may be suboptimal.\n"
"Error: " << e.what() << "\n";
}
/* Jolt the threads, then start them */
ComponentThread::joltAllMindThreadsReq(
[]()