Explain ngModelOptions and how it offers control over AngularJS model bindings.

ngModelOptions provides advanced control over model updates, including debounce for delayed updates, getterSetter for custom get/set functions, and allowInvalid for validation handling. This fine-grained control improves form performance, especially with high-frequency data changes.

<input type="text" ng-model="name" ng-model-options="{ debounce: 500 }">