In general, the projects undertaken investigate and employ various techniques that can take full advantage of the CMT and multi-core systems. This may include following techniques: pipelines and pipeline matrices (for increased performance and throughput), hardware partitioning (for better hardware utilisation), adaptive switching CPU resources on and off (for better energy consumption), virtualisation and offloading support.

Software routers


Parallel Regex

This project aims to investigate increasing the performance of pattern matching algorithms for intrusion detection systems used in high speed networks. We will investigate existing algorithms and the possible pathways at parallisation. We will use the Intrusion Detection System as the experimental testbed, for testing out the relative performance on massively parallel architectures advanced graphics processing units (GPUs), and multicore systems, such as Sun UltraSPARC CMT T1 and T2).

Contact:  Dr Mariusz Nowostawski

Virtual aggregate processor

The goal of the VAP project is to increase the performance of applications with multiple idle cores. With multicore technology, future computers will have more and more cores. Currently Dell multicore machines can have up to 16 cores with AMD64 chips. Sun T2 can support up to 64 hardware threads and its to-be-released Rainbow Fall will have 16 cores supporting 128 hardware threads. Intel will soon release 8-core chips that can support up to 16 hardware threads wiith hyperthreading. With 8 sockets, an Intel machine can have up to 64 cores and support 128 hardware threads. However, with existing multithreading technology, most applications can only use up to 32 cores before their speedup curves drop. Therefore, many cores are idle but cannot be used to increase the performance of applications. The VAP project aims to investigate ways to further improve performance with the idle cores.

Contact:  Dr Zhiyi Huang

Open Data Plane Subsystem

The Otago Open Data Plane Subsystem (OpenDPS) project aims at consolidating various initiatives in the area of high-performance offloading. The main goal of the project is to provide an open-source, lightweight runtime environment designed to run on a bare metal multicore host environment. There have been a number of technologies that enable easier and more streamlined toolchain, together with embedded glibc-like library support.

Contact:  Dr Mariusz Nowostawski