# Parameter template

Parameters are defined using a YAML manifest with the following structure:

```yaml
parameters:
  - name: jvm_heap_size
    description: the size of the heap of the jvm
    unit: megabytes
    restart: false
  - name: jvm_survival_ratio
    description:  the ratio of the two survivor spaces in the JVM GC
```

with the following properties:

| Field         | Type    | Value restrictions                                                                                                                                                 | Is required | Default Value | Description                                                                                                      |
| ------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- | ------------- | ---------------------------------------------------------------------------------------------------------------- |
| `name`        | string  | It should contain only lower/uppercase letters, numbers or underscores. It should start only with a letter. No spaces are allowed.                                 | TRUE        |               | The name of the parameter                                                                                        |
| `description` | string  |                                                                                                                                                                    | TRUE        |               | A description characterizing the parameter                                                                       |
| `unit`        | string  | A supported unit or a custom unit (see [supported units of measure](/akamas-docs/3.6/reference/construct-templates/metric-template.md#supported-units-of-measure)) | FALSE       | *empty unit*  | The unit of measure of the parameter                                                                             |
| `restart`     | boolean |                                                                                                                                                                    | FALSE       | FALSE         | If the use of the parameters for changing the configuration of a system should cause the system to be restarted. |

Notice that parameter definitions are shared across all the workspaces on the same Akamas installation, and require an account with administrative privileges to manage them.

### Example <a href="#manifests-samples" id="manifests-samples"></a>

The following represents a set of parameters for a JVM component

```yaml
parameters:
  - name: jvm_maxHeapSize
    description: Maximum heap size
    unit: megabytes
    restart: true
  - name: jvm_newRatio
    description: Ratio of old/new generation sizes
    restart: true
  - name: jvm_maxTenuringThreshold
    description: Maximum value for tenuring threshold
    restart: true
  - name: jvm_survivorRatio
    description: Ratio of eden/survivor space size
    restart: true
  - name: jvm_concurrentGCThreads
    description: Number of threads concurrent garbage collection will use
    unit: threads
    restart: true
  - name: jvm_gcType
    description: Type of the garbage collection algorithm
    restart: true
```

The following represents a set of CPU-related parameters for the Linux operating system

```yaml
parameters:
  # CPU Related
  - name: os_cpu_sched_min_granularity_ns
    description: Target minimum scheduler period in which a single task will run
    unit: nanoseconds
    restart: false
  - name: os_cpu_sched_wakeup_granularity_ns
    unit: nanoseconds
    description: desc
    restart: false
  - name: os_cpu_sched_migration_cost_ns
    unit: nanoseconds
    description: desc
    restart: false
  - name: os_cpu_sched_child_runs_first
    description: desc
    restart: false
  - name: os_cpu_sched_latency_ns
    unit: nanoseconds
    description: desc
    restart: false
  - name: os_cpu_sched_autogroup_enabled
    description: desc
    restart: false
  - name: os_cpu_sched_nr_migrate
    description: desc
    restart: false
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.akamas.io/akamas-docs/3.6/reference/construct-templates/parameter-template.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
