Rosetta  2020.46
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Namespaces | Macros | Variables
RosettaThreadManager.cc File Reference

A manager that maintains a threadpool and handles requests for threads for multithreaded execution of functions. This allows multithreading at many different levels in the Rosetta library hierarchy, from job-level parallel execution down to parallel computation of a score, gradient vector, or interaction graph. More...

#include <basic/thread_manager/RosettaThreadManager.hh>
#include <basic/thread_manager/RosettaThreadPool.hh>
#include <basic/thread_manager/RosettaThreadAssignmentInfo.hh>
#include <utility/pointer/memory.hh>
#include <basic/Tracer.hh>
#include <basic/options/option.hh>
#include <basic/options/keys/multithreading.OptionKeys.gen.hh>
#include <string>
#include <cmath>

Namespaces

 basic
 Tags used to tag messeges sent by MPI functions used to decide whether a slave is requesting a new job id or flagging as job as being a bad input.
 
 basic::thread_manager
 

Macros

#define MAX_THREAD_INDEX_WARNINGS   8
 

Variables

static basic::Tracer TR ("basic.thread_manager.RosettaThreadManager")
 

Detailed Description

A manager that maintains a threadpool and handles requests for threads for multithreaded execution of functions. This allows multithreading at many different levels in the Rosetta library hierarchy, from job-level parallel execution down to parallel computation of a score, gradient vector, or interaction graph.

Note
In single-threaded builds, this object still exists. It accepts vectors of work and executes them directly, in this case.
Author
Vikram K. Mulligan (vmull.nosp@m.igan.nosp@m.@flat.nosp@m.iron.nosp@m.insti.nosp@m.tute.nosp@m..org)

Macro Definition Documentation

#define MAX_THREAD_INDEX_WARNINGS   8

Variable Documentation

basic::Tracer TR("basic.thread_manager.RosettaThreadManager")
static