23.11.1 Enterprise Scheduler Configuration Guide
This chapter describes the extra configuration options for the enterprise scheduler.
Note:
These configuration options are only available if thescheduler
configuration variable is set to enterprise_scheduler
in Configuration Parameters for the Graph Server (PGX) Engine.
The configuration is divided into the following two parts:
enteprise_scheduler_config
: for setting details about how tasks should be scheduledenterprise_scheduler_flags
: where you can configure the enterprise scheduler in more detail
Enterprise Scheduler Fields
Field | Type | Description | Default |
---|---|---|---|
analysis_task_config | object | Configuration for analysis tasks. | |
fast_analysis_task_config | object | Configuration for fast analysis tasks. | |
max_num_concurrent_io_tasks | integer | Maximum number of concurrent io tasks at a time. | 3 |
num_io_threads_per_task | integer | Number of io threads to use per task. | <no-of-cpus> |
Analysis Task Config Fields
Field | Type | Description | Default |
---|---|---|---|
max_threads | integer | A hard limit on the number of threads to use for a task. | required |
priority | enum[high, medium, low] | The priority of the task. Threads are given to the task with the highest priority at the moment of execution. If there are more threads that have the highest priority, threads are given to the tasks according to their weight | required |
weight | integer | The weight of the task. Threads are given to tasks proportionally to their weight. Tasks with higher weight will get more threads than tasks with lower weight. Tasks with the same weight will get the same amount of threads. | required |
Enterprise Scheduler Flags
Field | Type | Description | Default |
---|---|---|---|
show_allocations | boolean | If true show memory allocation information.
|
false |
show_environment | boolean | If true show version numbers and main environment settings at startup.
|
false |
show_logging | boolean | If true enable summary logging. This is available even in non-debug builds and includes information such as the machine hardware information obtained at start-up, and per-job / per-loop information about the workload.
|
false |
show_profiling | boolean | If true show profiling information.
|
false |
show_scheduler_state | boolean | If true dump scheduler state on each update.
|
false |
show_warnings | boolean | If true enable warnings. These are non-fatal errors. For example, if a NUMA-aware allocation cannot be placed on the intended socket.
|
true |
Example 23-4 Custom Enterprise Scheduler Configuration
This configuration sets the number of io threads per task to 16, increases the maximum number of concurrent io tasks to 5. It also sets the configuration for fast analysis tasks to have a weight of 1, priority of "high" and sets a limit to the maximum number of threads used to 1.
{
"enterprise_scheduler_config": {
"num_io_threads_per_task": 16,
"max_num_concurrent_io_tasks": 5,
"fast_analysis_task_config": {
"weight": 1,
"priority": "high",
"max_threads": 1
}
}
}
Example 23-5 Using the Enterprise Scheduler Flags
This configuration enables extra logging output from the enterprise scheduler.
{
"enterprise_scheduler_flags": {
"show_logging": true
}
}
Parent topic: Advanced Task Scheduling Using Execution Environments