
This project performed an initial exploration of a new concept for computer system design called Self-Aware Computing. A self-aware computer leverages a variety of hardware and software techniques to automatically adapt and optimize its behavior according to a set of high-level goals and its current environment. The heart of a complete self-aware system is a new “organic” operating system (OOS). The OOS acts as the ringleader, monitoring applications and making adjustments to hardware and software to increase performance, efficiency, and reliability automatically.
A Partner Cores framework provides mechanisms that allow secondary cores to monitor the execution of a primary core and perform on-line analysis and dynamic optimization of its application and hardware resources.
An Organic Template Library provides a set of data structures and algorithms (similar to the C++ Standard Template Library) that dynamically optimize their own implementations and behaviors. Because the OTL uses a standard sequential programming interface, it is a good example of a self-aware technology that can be put to use in today’s existing systems.
An Organic Cache is a new hardware mechanism that allows a shared pool of local memory to be dynamically partitioned between different L1 caches and buffers. It is an example of a self–aware hardware component that would be managed by the OOS.
fos is a new type of operating system designed from the ground up for scalability, reliability, and adaptability in large-scale multicore systems. It implements all system services using sets of servers distributed across multiple cores. fos provides an excellent framework on which to build a compete organic operation system.
KLab is a new, distributed, parallel simulator for large-scale multicore processors. It provides an experimental test bench that can be used to study self-aware hardware and software.
The self-aware design concept permeates all levels of a computing system including processor microarchitecture, operating systems, compilers, runtime systems, programming libraries, and applications. The maximum benefit is achieved when all of these layers are self-aware and can work together.
This work was done by Anant Agarwal, Jason Miller, Jonathan Eastep, David Wentziaff and Harshad Kasture of the Massachusetts Institute of Technology for the Air Force Research Laboratory. For more information, download the Technical Support Package (free white paper) at www.defensetechbriefs.com/tsp under the Electronics/Computers category. AFRL-0138
Self-Aware Computing (reference AFRL-0138) is currently available for download from the TSP library.
Please Login at the top of the page to download.