---
layout: docs
page_title: 'Autoscaling Plugins: Dynamic Application Sizing Percentile'
description: The "app-sizing-percentile" strategy plugin uses percentile value of the historical usage to set resource recommendations.
---

# Dynamic Application Sizing Percentile Strategy Plugin

<EnterpriseAlert>
  This functionality only exists in Nomad Autoscaler Enterprise. This is not
  present in the open source version of Nomad Autoscaler.
</EnterpriseAlert>

The `app-sizing-percentile` plugin calculates its result based on a desired
percentile value from the dataset.

The plugin applies an exponential weight decay to data, in order to give
more significance to recent data over older data. It also adjusts its calculation
based on the amount of resources used per unit of time. This load-adjusted
calculation results in values that are more likely to actually meet the usage
needs of the workload when compared to the traditional time-based percentile
calculation.

This Dynamic Application Sizing plugin is the most versatile, since the percentile
level can be fine-tuned as needed. If your workload can withstand occasional OOM
errors gracefully, using a 98th percentile for memory instead of app-sizing-max
could result in smaller recommendations and subsequently more resource availability
for other tasks. A 95th to 90th percentile for CPU could have the same effect.

## Agent Configuration Options

The `app-sizing-percentile` plugin is automatically launched by Nomad Autoscaler
Enterprise and so the following setup is optional.

```hcl
strategy "target-value" {
  driver = "target-value"
}
```

## Policy Configuration Options

```hcl
check "p95" {
  strategy "app-sizing-percentile" {
    percentile = "95"
  }
}
```

- `percentile` `(int: 99)` - Specifies the percentile value to use when performing
  the strategy calculation.
