|
|
Systems and Performance
- NOTE: The Systems and Performance Group has been merged
into the Cambridge Systems Group. Please
visit those pages for the most up-to-date information.
The Systems and Performance Research Group looks at ways to improve performance
by considering the overal arrangement of components that make up the computing
system. Frequently the arrangement and intercommunicaion between these
components can be as important as the performance of the individual components,
to the performance of the whole.
There are currently two main activities. One is the development of analytical
and hybrid performance modeling methodologies and tools, and software
performance engineering. The other is the development of a distributed
technique that permits computers to co-operate to provide networking Quality of
Service guarantees, without any special support from the network.
Primary Contact: Peter Key
| | | | | Affiliate Members
| 
Richard | 
Austin | Photo Not Available Stathis | Photo Not Available Helen | 
Zhang, Ye | | | |
-
Magpie:A technology using Indy (see below) for
monitoring and modelling the workload of a distributed system. It
works by collecting detailed traces of system activity on each machine
in a distributed system and using these to extract the control flow of
each individual request across components, threads, and machines, with
accurate attribution of resource consumption. Subsequently,
probabilistic models of the workload are derived from the per-request
information using data mining techniques such as clustering and
machine learning. See the project pages
for more details
-
Topology Discovery and Network Inference:
Knowing the topology of your network is beneficial both for
fault diagnosis and resource provisioning. While other researchers
have concentrated on mapping networks using SNMP information from
switches and routers, we map networks without this support. This is
useful in home or small office scenarios, where users cannot be
expected to invest in expensive networking equipment. We also use the
topology components to permit inference of network bandwidths and
conditions. See the See the project
pages for more details. This project was done in
collaboration with the Networking Group.
-
Indy Modelling Development Environment: Indy is a modelling
development environment that is based on the concept of
Performance Technology Infrastructures. Indy provides a framework
for a modelling expert to develop custom model applications using pre-existing
core components and services. Users can plug different hardware models,
workload descriptions and external performance components. This lets Indy to
grow and adapt to the needs of its users. Typical Indy applications include
capacity planning tools for e-commerce platforms and architecture models of PC
clusters for optimization studies.
 |
 |
|
A high level view of Indy architecture
|
A typical model debug session with IndyView
|
The two components of Indy that model developers will most
often interact with are the kernel, and IndyView. The kernel is a
linkable library containing all the algorithms needed for evaluation of models,
and for the coordination of the other components in a particular performance
study. It has APIs that can be called to define hardware models and
workloads. IndyView can be thought of as an IDE for performance studies
- it has a "compiler" (combining hardware models and workload descriptions),
capable of making a "debug build" (viewing the behaviour of a hardware model in
a space diagram), or a "release build" (viewing the full system's performance
in a space-time diagram).
-
QoSB Co-operative Network Congestion Avoidance: We have been
taking some of the theoretical results from the congestion pricing and explicit
congestion notification work done in the Networking Group
and applying them to some practical situations for the Internet, and the
Intranet or home area. QoSB operates as a distrubted technique running on
computers in the network to engage in congestion avoidance in a way that
produces lower latency for connections (improving the responsiveness of web
browsing, for example). QoSB also allows for high importantce network
streams to gain the share of the network that they require without being
affected by lower importance activity. For example, playing a multi-user
internet game is unaffected by web browsing, and internet telephony is
unaffected by file copy from one PC to another. Normally this soft of technique
is implemented using network hardware; we research techniques that use only the
computers themselves.
|