Goals
As developers use goals as a configuration methodology, goals will be important to use everywhere.
Static Configuration practices need a fresh approach to enable Dynamic Configuration practices to blossom. Config has just that technology developed, understood and applied already.
Developer discussions need to shift from just defining “the best parameter settings” to deal with the dynamics of configuration complexity and workload unpredictability, to “how best to set and manipulate the goals” that should be in place everywhere there is a complex configuration space to manage.
Goals Defined
Goals, in the context of adaptive systems, are high-level objectives or constraints that guide how a system should behave under different conditions. These goals can vary widely depending on the system’s purpose, such as performance, energy efficiency, accuracy, or even security. Goals are often implicit or explicit in design specifications and appear as operational or configuration rules in response to feedback.
To be clear, every system is designed with an overall purpose (goal) in mind. Simulation technologies, digital twins, feedback and optimization techniques and AI training and inference itself all have the appearance of being deployed to make systems dynamically responsive to “goals” in the broadest sense, to achieve the desired system behavior. These systems do change their parameter values, whether by feedback or hard-coded rules that were established when the system was being designed and implemented. Dynamic response yes, but in a “statically configured” overall paradigm.
The fundamental problem is that historically, un-aware, classically developed hardware and software systems are not built to be dynamically goal driven continually. They have no computational ability to reason about how well they are actually performing in attempting to reach their desired goals in environments as workloads and resources vary.
Self-Aware Systems are Goal-Driven
Config’s computational innovations transform un-aware systems, no matter how as-built or complex they are, into Self-Aware systems. Goals and configuration variables are made first-class objects under software control and evaluation and become the essential bridge for extracting performance or establishing constraints between varying workloads and system resources, providing the best solutions available with the resources available at that time.
Goals can be simple or complex, mathematically expressed or in natural language, delivered singularly, serially, temporally or in groups, can manage each other, be spread out in interdependent distributed architectures and can be used in all interface areas of complexity big or small, related to each other or not, in legacy systems or the cutting-edge AI developments.
(Specific goal descriptions and values are part of the evolving goal sciences developments at Config research, where workloads and original design specs are being tested to establish actual distributed goal options. Think “goal sciences” adding new value to “classical configuration practices”.)
Goals as Standard Developer Tools
Goals can be used to analyze the performance of legacy systems, set configuration values for classically built systems and to continually manipulate configuration spaces during run time operations. (In fact, the best first, simple “goal” to use for analysis or initial run-time operation is the original design documentation that was used initially for system development. AI and the Sequitur™ Platform can set up the goal description, suitable for meeting the requirement for use by Config’s computational API.)
Goals are typically applied at the interface of disparate dependencies that need to be managed dynamically to keep values in bounds, extract performance, or balance constrained choices and guide how a system should behave under different conditions.
Here are just a few examples of dynamic configuration at interfaces of complexity using goals to manage the trade-off space to improve performance:
- Managing computational loads in data centers with strict cooling requirements.
- Video Streaming services, balancing bandwidth requirements with capacity constraints.
- Guaranteeing accuracy for scientific workloads being run on advanced AI chips.
- Video frame rate management/power trade offs for critical sensor outputs.
- Node management in chips or clusters of servers or a mesh network of data centers.
- Latency vs accuracy trade-offs in cloud/edge compute.
- Battery management strategies in EV’s.
- Management of the O/S interface between chips and applications to fine tune performance to goals, in diverse applications using the same chips.
- Management of communication busses between high performance components in chips, data centers and other industrial products.
- Goal enabled inference and agents to create unique customer SLA’s, lower costs of compute and manage the accuracy/quality of outputs.
Goal choices are as varied as there are conflicted interfaces to manage. Applied everywhere, in every complex system.
