Lumiera  0.pre.03
»edit your freedom«
vault::gear::test::anonymous_namespace{test-chain-load.hpp} Namespace Reference

Functions

double _uSec (microseconds ticks)
 
uint defaultConcurrency ()
 
template<class NOD >
auto prepareEvaluations ()
 

Variables

const size_t DEFAULT_CHUNKSIZE = 64
 number of computation jobs to prepare in each planning round
 
const size_t DEFAULT_FAN = 16
 default maximum connectivity per Node
 
const size_t DEFAULT_SIZ = 256
 default node count for the complete load graph
 
const size_t GRAPH_BENCHMARK_RUNS = 5
 repetition count for reference calculation of a complete node graph
 
const size_t LOAD_BENCHMARK_RUNS = 500
 repetition count for calibration benchmark for ComputationalLoad
 
const size_t LOAD_DEFAULT_MEM_SIZE = 1000
 default allocation base size used if ComputationalLoad.useAllocation
 
const microseconds LOAD_DEFAULT_TIME = 100us
 default time delay produced by ComputationalLoad at Node.weight==1
 
const double LOAD_SPEED_BASELINE = 100
 initial assumption for calculation speed (without calibration)
 
const auto SAFETY_TIMEOUT = 5s
 maximum time limit for test run, abort if exceeded
 
const bool SCHED_DEPENDS = false
 explicitly schedule a dependent job (or rely on NOTIFY)
 
const bool SCHED_NOTIFY = true
 explicitly set notify dispatch time to the dependency's start time.
 
const Duration SCHEDULE_LEVEL_STEP {_uTicks(1ms)}
 time budget to plan for the calculation of each »time level« of jobs
 
const Duration SCHEDULE_NODE_STEP {Duration::NIL}
 additional time step to include in the plan for each job (node).
 
const Duration SCHEDULE_PLAN_STEP {_uTicks(100us)}
 time budget to reserve for each node to be planned and scheduled
 
const Offset SCHEDULE_WAKE_UP {_uTicks(10us)}
 tiny offset to place the final wake-up job behind any systematic schedule
 
const auto STANDARD_DEADLINE = 30ms
 deadline to use for each individual computation job
 
const double UPFRONT_PLANNING_BOOST = 2.6
 factor to increase the computed pre-roll to ensure up-front planning