Configurable properties for a BatchService.
More...
#include <BatchServiceProperty.h>
|
static const std::string | BATCH_QUEUE_ORDERING_ALGORITHM |
| The batch queue ordering algorithm. Can be: More...
|
|
static const std::string | BATCH_RJMS_DELAY |
| Number of seconds that the Batch Scheduler adds to the runtime of each incoming job. This is something production batch systems do to avoid too aggressive job terminations. For instance, if a job says it wants to run for (at most) 60 seconds, the system will actually assume the job wants to run for (at most) 60 + 5 seconds.
|
|
static const std::string | BATCH_SCHEDULING_ALGORITHM |
| The batch scheduling algorithm. Can be: More...
|
|
static const std::string | BATSCHED_CONTIGUOUS_ALLOCATION |
| Controls Batsched node allocation policy. More...
|
|
static const std::string | BATSCHED_LOGGING_MUTED |
| Controls Batsched logging. More...
|
|
static const std::string | HOST_SELECTION_ALGORITHM |
| The host selection algorithm. Can be: More...
|
|
static const std::string | OUTPUT_CSV_JOB_LOG |
| Path to a to-be-generated Batsim-style CSV trace file (e.g. for b3atch schedule visualization purposes). More...
|
|
static const std::string | SIMULATE_COMPUTATION_AS_SLEEP |
| Simulate computation as just a sleep instead of an actual comput thread. This is for scalability reason, and only simulation-valid if one is sure that cores are space shared (i.e., only a single compute thread can ever run on a core at once). Since space-sharing at the core level is typically the case in batch-scheduled clusters, this is likely fine. Possible values are "false" (the default) or "true".
|
|
static const std::string | SIMULATED_WORKLOAD_TRACE_FILE |
| Path to a workload trace file to be replayed. The trace file can be be in the SWF format (see http://www.cs.huji.ac.il/labs/parallel/workload/swf.html), in which case it must have extension ".swf", or in the JSON format as used in the BATSIM project (see https://github.com/oar-team/batsim), in which case is must have the ".json" extension). The jobs in the trace whose node/host/processor/core requirements exceed the capacity of the batch service will simply be capped at that capacity. Job submission times in the trace files are relative to the BatchService's start time (i.e., all jobs in the trace files will be replayed no matter when the BatchService starts). Note that in the BATSIM JSON format, the trace does not contains requested vs. actual trace runtimes, and to all requested runtimes are 100% accurate.
|
|
static const std::string | TASK_SELECTION_ALGORITHM |
| The algorithm to pick which ready computational task (within a standard job executed by the batch service), in case multiple tasks are ready, should run first. This is typically not managed by a batch scheduler, but by some application-level script that executes a set of tasks within compute resources allocated by the batch scheduler. Possible values are: More...
|
|
static const std::string | THREAD_STARTUP_OVERHEAD |
| The overhead to start a thread execution, in seconds.
|
|
static const std::string | USE_REAL_RUNTIMES_AS_REQUESTED_RUNTIMES |
| Whether, when simulating a workload trace file, to use the actual runtimes as requested runtimes (i.e., simulating users who request exactly what they need) or not (i.e., simulating users who always overestimate what they need, which is typical in the real world): More...
|
|
static const std::string | SUPPORTS_PILOT_JOBS |
| Whether the compute service supports pilot jobs (true or false)
|
|
static const std::string | SUPPORTS_STANDARD_JOBS |
| Whether the compute service supports standard jobs (true or false)
|
|
Configurable properties for a BatchService.
◆ BATCH_QUEUE_ORDERING_ALGORITHM
const std::string wrench::BatchServiceProperty::BATCH_QUEUE_ORDERING_ALGORITHM |
|
static |
The batch queue ordering algorithm. Can be:
- If ENABLE_BATSCHED is set to off / not set: ignored
- If ENABLE_BATSCHED is set to on:
- whatever queue ordering algorithm is supported by Batsched (by default: "fcfs")
◆ BATCH_SCHEDULING_ALGORITHM
const std::string wrench::BatchServiceProperty::BATCH_SCHEDULING_ALGORITHM |
|
static |
The batch scheduling algorithm. Can be:
- If ENABLE_BATSCHED is set to off / not set:
- "FCFS": First Come First Serve
- If ENABLE_BATSCHED is set to on:
- whatever scheduling algorithm is supported by Batsched (by default: "conservative_bf", other options include "easy_bf" and "easy_bf_fast")
◆ BATSCHED_CONTIGUOUS_ALLOCATION
const std::string wrench::BatchServiceProperty::BATSCHED_CONTIGUOUS_ALLOCATION |
|
static |
Controls Batsched node allocation policy.
- If ENABLE_BATSCHED is set to off or not set: ignored
- If ENABLE_BATSCHED is set to on:
- "false": do not enforce contiguous nodes for allocations (default)
- "true": enforce contiguous nodes for allocations (note that not all algorithms implemented by batsched support contiguous allocations, so this option may have no effect in some cases).
◆ BATSCHED_LOGGING_MUTED
const std::string wrench::BatchServiceProperty::BATSCHED_LOGGING_MUTED |
|
static |
Controls Batsched logging.
- If ENABLE_BATSCHED is set to off or not set: ignored
- If ENABLE_BATSCHED is set to on:
- "true": do not show Batsched logging output on the terminal (default)
- "false": show Batsched logging output on the terminal
◆ HOST_SELECTION_ALGORITHM
const std::string wrench::BatchServiceProperty::HOST_SELECTION_ALGORITHM |
|
static |
The host selection algorithm. Can be:
- If ENABLE_BATSCHED is set to off or not set: ignored
- If ENABLE_BATSCHED is set to on:
- FIRSTFIT (default)
- BESTFIT
- ROUNDROBIN
◆ OUTPUT_CSV_JOB_LOG
const std::string wrench::BatchServiceProperty::OUTPUT_CSV_JOB_LOG |
|
static |
Path to a to-be-generated Batsim-style CSV trace file (e.g. for b3atch schedule visualization purposes).
- If ENABLE_BATSCHED is set to off or not set: ignored
- If ENABLE_BATSCHED is set to on: The trace file is generated in CVS format as follows: allocated_processors,consumed_energy,execution_time,finish_time,job_id,metadata, requested_number_of_processors,requested_time,starting_time,stretch,submission_time,success, turnaround_time,waiting_time,workload_name
◆ TASK_SELECTION_ALGORITHM
const std::string wrench::BatchServiceProperty::TASK_SELECTION_ALGORITHM |
|
static |
The algorithm to pick which ready computational task (within a standard job executed by the batch service), in case multiple tasks are ready, should run first. This is typically not managed by a batch scheduler, but by some application-level script that executes a set of tasks within compute resources allocated by the batch scheduler. Possible values are:
- maximum_flops (default)
- maximum_minimum_cores
- minimum_top_level
◆ USE_REAL_RUNTIMES_AS_REQUESTED_RUNTIMES
const std::string wrench::BatchServiceProperty::USE_REAL_RUNTIMES_AS_REQUESTED_RUNTIMES |
|
static |
Whether, when simulating a workload trace file, to use the actual runtimes as requested runtimes (i.e., simulating users who request exactly what they need) or not (i.e., simulating users who always overestimate what they need, which is typical in the real world):
- "true": use real runtimes as requested runtimes
- "false": use requested times from the trace file
The documentation for this class was generated from the following file:
- /Users/rafsilva/Documents/isi/workspace/wrench/wrench/include/wrench/services/compute/batch/BatchServiceProperty.h