# Performance

The BindingSystem offers good performance while maintaining flexibility. Here are some performance benchmarks without additional optimizations:

<figure><img src="/files/CpLsY1dqgeb3kushLdFS" alt=""><figcaption><p>Mono Backend Performance Report</p></figcaption></figure>

* The BindingSystem is approximately **3x slower** than direct value accessors.
* The BindingSystem is more than **10x faster** than reflection with Mono backend.
* With IL2CPP backend, the BindingSystem is **4x slower** than direct value setters and around **7x faster** than reflection accessors. The getters are almost on par with direct getters.

To balance memory usage and performance speedups, the BindingSystem provides optimization options that you can tweak according to your specific requirements. These options are used to determine for which parts to autogenerate optimized accessors after each recompilation or before each build.

<figure><img src="/files/SHGRIwaH1cQIuwg0dIRL" alt=""><figcaption><p>Optimization Settings</p></figcaption></figure>

{% hint style="success" %}
We suggest to leave the slider at half way between no optimization to full optimization because this is the best tradeoff as we found out
{% endhint %}


---

# 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://postica.gitbook.io/binding-system/product/performance.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.
