|
|
|
CPU Broker |
|||||||||||||
|
|
The CPU Broker is a reservation-based resource manager for CPU time. The broker mediates between multiple real-time applications and the facilities of an underlying real-time operating system: it implements a configurable CPU management policy, monitors resource use, and adjusts allocations over time. This architecture helps to ensure that the quality of service (QoS) needs of ``important'' applications are satisfied, especially when the relative importance of applications changes dynamically. An additional and important benefit is that the broker can automatically determine many of the scheduling parameters of its client applications. The CPU Broker is implemented as a CORBA server that uses the TimeSys Linux resource kernel APIs to manage CPU reservations. The CPU Broker is being applied to BBN's Unmanned Aerial Vehicle (UAV) Open Experimental Platform (OEP). The broker enables dynamic adaptation and reallocation of CPU resources for UAV deployments: such adaptation is required in response to the changing importance of various information flows (e.g., the identification of time-critical targets), changing battlefield conditions (e.g., assets and asset status), changing mission modes, and/or changing missions. The broker supports feedback and configurable strategy-based policies for adaptation and handling conflicting reservations. These strategies can be driven or implemented by other QoS-enabling middleware, such as QuO, and integrated with other resource management facilities (e.g., network reservations and application-level adaptation strategies) as part of an overall end-to-end QoS management solution.
The CPU Broker is described in our
RTAS 2004 paper. See below
for links to other online documentation.
News
DownloadDownload the distribution of your choice:
Note that in order to build the CPU Broker and make it do anything useful, you will need to acquire and install:
The broker can interface with several other software systems as well, including QuO, for tighter integration with CORBA applications; JacORB, for Java support; omniORB and omniORBpy, for Python support; and gkrellm, for GUI monitoring of the broker in real time. These systems are not required for building the CPU broker, however. Older releases of the CPU Broker are also available for download:
DocumentationFeel free to read the current CPU Broker documents:
All of these documents are included in the CPU Broker distributions. LicenseThe CPU Broker is distributed under the GNU General Public License (GPL). Bug Reports/FeedbackPlease send bug reports and feedback to alchemy-users@flux.cs.utah.edu. This mailing list is open to subscribers only; see the description of the Alchemy mailing lists for more information. |
Problems? Contact the Flux Web Admin.
Last updated January 07, 2005.