Adaptive Neural Network Architectures
- implementing a distributed, redundant file-system for
bunyip using existing disk storage devices on each node
- implementing a streamlined TCP stack for the special case
network found in bunyip, optimised for speed
- utilising the parallel ports of the bunyip nodes to provide
a low-latency MPI barrier operation (requires h/w skills)
- investigate utilising low-cost fire-wire (IEEE 1394) PCI cards
to implement a fast low-latency interconnect for a COTS cluster.
(More details to appear here soon.)
Contact:
Peter Christen,
Markus Hegland
Data Mining applications have to deal with increasingly large data sets
and complexity. Only algorithms which scale linearly with data size are
feasible for successful data mining applications.
In our group we are developing algorithms for predictive modelling of
high dimensional and very large data sets that are both scalable with the
number of data records as well as number of processors if implemented in
parallel. These algorithms are based on techniques like finite elements,
thin plate splines, wavelets, additive models and clustering. Prototype
implementations have been developed in Matlab, Python, C and MPI, and we
have used them successfully in several real world data mining projects.
This research project will involve the further development of parallel
data mining algorithms based on the available mathematical algorithms
and prototypes. Besides scalability other important aspects are data
distribution, load balancing and integration into a larger data mining
framework currently being developed in our group.
To our disposal we have a 196 processor
Beowulf Linux cluster,
a 12 processor Sun Enterprise 4500 shared memory multiprocessor at the
CSIRO CMIS and a 13 processor
Fujitsu VPP 300 vector-processor at ANUSF. Data mining is one of the core
projects of APAC at the ANU.
This topic was taken by a student.
Contact:
Peter Christen,
Markus Hegland
Clustering large and complex data sets is a core algorithm
used in data mining and machine learning. To be able to handle
very large data sets parallel high-performance computing is needed.
In the past few years several parallel clustering algorithms for
different architectures have been developed and published.
This research project aims in a first phase at comparing various
parallel clustering algorithms. Two topics of interest are scalability
(I/O, data distribution and communication) and load balancing (adapting
the program dynamically to changing load situations). I a second phase
a scalable parallel clustering algorithm should be developed and
evaluated.
To our disposal we have a 196 processor
Beowulf Linux cluster,
a 12 processor Sun Enterprise 4500 shared memory multiprocessor at the
CSIRO CMIS and a 13 processor
Fujitsu VPP 300 vector-processor at ANUSF. Data mining is one of the core
projects of APAC at the ANU.
This topic was taken by a student.
The Internet has forever changed the requirements for enterprise
software systems. The very nature of the Internet brings to bear new
pressures on applications that are not commonly experienced by
traditional networked information systems. The impact of well-known
non-functional requirements such as manageability, scalability,
security, reliability and transactions is dramatically increased when
applications are opened up to potentially limitless numbers of
concurrent users.
These users require efficient service every second of every day in a
year. In Internet and e-business environments, the cost of failures is
magnified, as each minute of downtime equates to a minute when
customers cannot use the business' services. On the Internet, a
competitor's site is just a simple mouse-click or two away.
In response to the demands of the increased scope of enterprise
systems across the Internet, a new genre of software product has
evolved, known as Application Servers. These products provide a
ready-made distributed system infrastructure for building
high-performance, enterprise-scale information systems.
The aims of the proposed project are:
- To find out how EJB and Web technology can be combined and used to
build a typical on-line transaction example application;
- To come up with an architecture that is best suited to the proposed
application;
- To run performance testing using the example application against a
middleware product, to collect and analyse the performance data, to
find out how well the middleware product cope with this kind of
application under heavy load.
Similar work has been carried out using CORBA technology within our
group (Software Architecture and Component Technology) at CSIRO. The
reports can be found at
http://www.cutter.com.
The published work
only concentrated on the CORBA middleware technology and did not
include the web technology.
Some relevant information can be found in the following sites:
http://java.sun.com/products/ejb
http://www.javasoft.com/j2ee.
Contact: Shuping Ran, CSIRO
Shuping.Ran@CMIS.CSIRO.AU
This project is offered for Honours CS students and would be supervised by
Bob Williamson
in the Department of Engineering. All the necessary hardware referred to below
is available in the Department.
The aim of this project is to implement a multi-channel very high performance
low-latency real-time audio signal processing solution on an Intel Pentium III
based PC running Linux. It would suit a student interested in high performance
signal processing coding techniques, linux hacking, and digital audio.
The aim would be to release the final code under GPL.
To the best of my knowledge this sort of thing has not been done before. It
involves some fancy kernel programming (the RTLinux), plus some tricky
programming for the SSE core.
You will need to be able to patch and rebuild linux kernels to do this project.
Background
Multichannel signal processing can be used for
beamforming
microphone arrays and
ambisonics and other surround sound systems.
The computational demands and data communication demands are quite high.
Traditionally reserach into multichannel signal processing has made use of
specialised hardware, such as the
Creamware
Scope system. We have used one of these systems in the Department of
Engineering. It has the considerable disadvantage that it needs to be
programmed in a (rather arcane) assembly language.
Modern commodity CPUs such as an Intel Pentium III have
additional SIMD instructions
specifically designed for multimedia processing. These instructions are
the basis
for the fast code
used on bunyip.
As well as being able to compute the desired functions quickly, one needs to
get the data in and out of the machine. One can now buy for under $1000 a
RME Project Hammerfall DIGI9652
which allows for 24 simultaneous inputs and
outputs at 96kHz/24 bits in real time. (You do need outboard AD/DA converters,
but these are now widely availabe)
An
ALSA driver exists for this card.
The final ingredient is low-latency real-time scheduling. There exists a
clever add-on the the Linux kernel called
Real time linux which allow for very low
latencies and guaranteed real-time scheduling.
Project Specifics
There are a few steps in the project. In essence it is to combine the above
ingredients to demonstrate a high performance low-latency glitch free
multi-channel digital audio processing solution built entirely on GPLable
components.
Build Native ALSA applications for the RME Hammerfall DIGI 9656
Although there is a device driver that would now appear to work for the
Hammerfall card
(version 0.6pre1 of the ALSA drivers), the existing native
ALSA applications (such as ALSAPLAYER do
not work yet). The aim would be to get a simple multichannel recording and
playback system working using the Hammerfall card.
Implement Multichannel filtering exploiting the SSE instruction set
The next step would be to implement some actual signal processing on the
multiple data streams (for example FIR/IIR filtering) using the SSE extensions.
This
Application
Note might be a good starting point.
Ensure Low-Latency By Using a Real-Time Linux Kernel
The next step would be to do all this under a real-time kernel. This would
involve patching the kernel, following
these instructions and making the signal processing tasks run as real-time
priority.
Fancy Interface
In case this was not enough work, one can easily envisgae all sorts of fancy
interfaces and applications built on the above code base.
For instance one could
glue it all together as plugins for
Arts Builder or
Alsaplayer (for example).