Autonomic Computing at the IBM Haifa Lab
IBM Haifa Labs News Center
Why? Because we have hit rock bottom. We have pushed computer systems to become so advanced and so complex that we can no longer keep up with their maintenance or provide the human talent necessary to handle the system's operations. In order to continue, the wave of the future calls for simplifying computer system maintenance.
IBM Research has looked deep within for answers to this issue of complexity and has come up with autonomic computing. Autonomic computing is based on the human autonomic nervous system, a system that controls key bodily functions without our conscious awareness or effort. Autonomic computing means that computers will be capable of running themselves, adjusting to different circumstances, and preparing their resources to most efficiently handle the workloads we put upon them. So, just as your body sweats to cool off, in the case of autonomic computing, the computer system will be able to self-monitor its temperature and self-correct the overheating.
This innovative autonomic computing concept, also known as the Grand Challenge to the IT industry, calls for many areas of knowledge reaching far past IBM or the IT industry itself. It will need the collaborative efforts of academia, national labs, and many others. The Haifa Research Lab (HRL) is already at the starting gates in their efforts to make computing simpler for the user. The following are some of HRLs current autonomic computing projects:
Oceano/Reef – provides a scaleable, manageable hosting infrastructure for e-business utilities. It introduces high levels of automation to dynamically adjust Web sites to actual traffic demands. For example, if MTV is featuring a live concert by Madonna, Oceano will move resources from a not so busy recipe site over to the MTV site for as long as it needs the additional resources to handle the additional traffic the concert attracts.
Easy – is a programming model, a set of tools, and a runtime system that allows for the easy customization of quality of service. The programming model provides for the separation of concerns, or letting the "right expert do the job." For example, say an accounting expert wants to develop a program and run it on the Internet. With Easy, the developer can concentrate on the functionality of the program without having to deal with other items, such as the operating system or number of computers used to handle the information. In addition, the service provider who uses Easy can deploy the same application with different service level agreements (SLA). Easy uses the developer's directives, the SLA, and the environment data to automatically deploy the application wrapped with code that guarantees the SLA.
Runtime Subsytems, Garbage Collection – finds out what memory objects are no longer in use, collects the memory, and recycles it for future programming needs. This is automatic in Java as opposed to in the C language where programmers have to manually perform these actions, which often leads to mistakes. Garbage Collection's automatic handling eliminates these common, hard to find mistakes.
Amit – is a generic application development tool that enables fast development of active applications. It enables the application to detect customized situations without having to be aware of the occurrence of the basic events. For example with suspected fraud, the system will identify that a credit card number has been used within 1 hour at two different locations at a distance over 150 KM.
The IBM Research and Development Labs in Israel have been active for almost 30 years in areas such as: VLSI design, verification technologies, distributed computing, system availability, operating systems, storage subsystems, computer communication, programming languages, multimedia, mathematical models and applications, active management technologies, optimization techniques, and e-business and security.
Visit our web site at http://www.haifa.il.ibm.com
For further details on IBM's autonomic computing activities, see http://www.research.ibm.com/autonomic/.