Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
RooFit::MultiProcess::Config::Queue Struct Reference

Definition at line 41 of file Config.h.

Public Types

enum class  QueueType { FIFO , Priority }
 

Static Public Member Functions

static QueueType getQueueType ()
 
static bool setQueueType (QueueType queueType)
 
static void setTaskPriorities (std::size_t job_id, const std::vector< std::size_t > &task_priorities)
 Set the priority for Job tasks in Priority queue mode.
 
static void suggestTaskOrder (std::size_t job_id, const std::vector< Task > &task_order)
 Set the desired order for executing tasks of a Job in Priority queue mode.
 

Static Private Attributes

static QueueType queueType_ = Config::Queue::QueueType::FIFO
 

#include <RooFit/MultiProcess/Config.h>

Member Enumeration Documentation

◆ QueueType

Enumerator
FIFO 
Priority 

Definition at line 42 of file Config.h.

Member Function Documentation

◆ getQueueType()

Config::Queue::QueueType RooFit::MultiProcess::Config::Queue::getQueueType ( )
static

Definition at line 107 of file Config.cxx.

◆ setQueueType()

bool RooFit::MultiProcess::Config::Queue::setQueueType ( QueueType  queueType)
static

Definition at line 97 of file Config.cxx.

◆ setTaskPriorities()

void RooFit::MultiProcess::Config::Queue::setTaskPriorities ( std::size_t  job_id,
const std::vector< std::size_t > &  task_priorities 
)
static

Set the priority for Job tasks in Priority queue mode.

Only useful in Priority queue mode, in FIFO mode this doesn't do anything. A higher value means a higher priority.

Parameters
[in]job_idJob ID to set task order for.
[in]task_prioritiesTask priority values, where vector index equals task ID.

Definition at line 119 of file Config.cxx.

◆ suggestTaskOrder()

void RooFit::MultiProcess::Config::Queue::suggestTaskOrder ( std::size_t  job_id,
const std::vector< Task > &  task_order 
)
static

Set the desired order for executing tasks of a Job in Priority queue mode.

Only useful in Priority queue mode, in FIFO mode this doesn't do anything.

Translates the desired order to priorities. Because workers will start stealing work immediately after it has been queued, the desired order cannot be guaranteed – hence "suggest" – because the first queued task will possibly be taken before higher priority tasks have been sent to the queue.

Parameters
[in]job_idJob ID to set task order for.
[in]task_orderTask IDs in the desired order.

Definition at line 138 of file Config.cxx.

Member Data Documentation

◆ queueType_

Config::Queue::QueueType RooFit::MultiProcess::Config::Queue::queueType_ = Config::Queue::QueueType::FIFO
staticprivate

Definition at line 48 of file Config.h.

Collaboration diagram for RooFit::MultiProcess::Config::Queue:
[legend]

The documentation for this struct was generated from the following files: