CECS Home | ANU Home | Search ANU
The Australian National University
ANU College of Engineering and Computer Science
School of Computer Science
Printer Friendly Version of this Document

UniSAFE

The Computer Systems Group:
Computer Architecture, Programming Languages and Algorithms

The Computer Systems group within the ANU College of Engineering and Computer Science maintains a diverse and successful program of internationally recognized research Our interests are drawn together from the principal themes of computer architecture, programming languages and algorithms. Our active projects includes: robotics, novel computer architectures, bio-engineering, next-generation programming languages, high performance computing, parallel programming models, linear algebra, programming language transformation and AI techniques for run-time optimization. The group also supports a teaching program beginning with the computer systems fundamentals and progressing to specialized topics in the above research areas.

Previous Events

Current Members

Academics: (collective contact systems[at]cs.anu.edu.au) Affiliated Staff: Bob Edwards

Postdoctoral Fellows: Dr Ganesh Venkateshwara, Dr Rui Yang

Research Students: Joseph Antony, Warren Armstrong, Muhammad Atif, Pat Bernardi, Jie Cai, Arrin Daley, Ahmed El-zein, Robin Garner, Daniel Frampton, Pete Janes, Josh Milthorpe, Jaison Mulerikkal, Danny Robson, Jin Wong.

Undergraduate/Project Students: Ben Murphy, James Barker, Michael Chapman, Travis Stenborg

The Computer Systems Group
Computers can fly!

Teaching Program

Software engineers who do not understand parallel [multicore] processing will become obsolete! -- Professor Rudolph Eigenmann, keynote address at the ISPA'06 conference

The Department of Computer Science offers an exciting and contemporary teaching program in Computer Systems, integrated into its computer science and software engineering curricula. The program develops fundamental concepts from second year, to state-of-the-art advanced topics in honors and postgraduate years. Courses include:
  • COMP2300 Introduction to Computer Systems first provides an introduction to the programming language of computer systems, C. It uses the PeANUt illustrative computer to shows how C program are compiled and executed, and the basic concepts of computer architecture. This is followed up with an overview of contemporary computer, operating systems and networks.
  • COMP2310 Concurrent and Distributed Systems provides an in-depth study of the fundamental issues of concurrency, which are crucial in operating systems and networks. These are also foundational to high performance and multicore programming.
  • COMP3300 Operating Systems looks in detail at the services provided by, and the internals of, an existing operating system to see how each part is constructed and integrated into the whole.
  • COMP3310 Computer Networks provides an in-depth study of the issues in reliable computer network design, including layering and protocols, and programming.
  • COMP3320 High Performance Scientific Computation covers data modelling, programming (including shared memory models) and program performance issues for high performance scientific applications.
  • COMP4330 Real-Time and Embedded Systems provides foundations of real-time analysis and implementation of the (highly concurrent) systems which are interconnected with the physical world (embedded systems).
  • COMP4300 Parallel Systems provides a practically oriented introduction to the special case of concurrency of shared and distributed memory parallel computers.
  • COMP8320 Multicore Computing (new! to be first offered in 2009!) provides an in-depth study of the principles, the architecture and programming paradigms of contemporary and emerging multicore (parallel) processors.
PeANUt Visible Machine
Cloth Simulation
The T2 Multicore processor
The Bachelor of Information Technology and the Master of Computing have Computer Systems specializations.

Project courses with topics in our leading edge research programs are available to all computing students. These provide a `capstone' to their respective degrees:

Research Program

The group has a number of active research projects, associated around the following themes:
  • Bio-Engineering: Alistair Rendell, Steve Blackburn and other researchers at ANU are working on a multidisciplinary collaborative project with IBM Research. The aim is to develop new tools for bio-engineering and apply them to the study of ion channel systems (entities that regulate the flow of ions across a cell membrane). Our approach spans computer architecture, language implementation, and computational algorithms.
  • Performance Analysis: Performance analysis is a major theme within the Computer Systems group. As part of this effort, Peter Strazdins has led the development of a number of architectural simulators and associated tools. Steve Blackburn leads the development effort for the de facto standard Java performance analysis benchmarking suite (DaCapo). A paper from the group on performance analysis and the methodology recently featured in the prestigious Communications of the Association for Computing Machinery (Aug 2008).
  • Advanced Runtime Systems: Steve Blackburn leads an active research program addressing the efficient implementation of managed runtimes. This work involves active collaboration with IBM, Intel, U. Texas and Purdue U. The work targets both emerging languages (such as X10) and the implementation of existing languages on emerging hardware. In addition to regular publications, the projects output includes the development and maintenance of widely used research software.
  • Robotics: Uwe Zimmer leads research on autonomous vehicles, including submersibles and aircraft. Autonomous flight of small helicopters in real world, outdoor scenarios is a challenge for all areas of robotics. This project focuses on the development of new sensor combinations for robustness at small sizes.
  • Parallel Processing: Parallel programming is a theme which encompasses all of the Computer System group, in various ways. Alistair Rendell leads a long-running research project with Sun Microsystems and Gaussian Inc, developing computational chemistry applications on parallel computers. Alistair Rendell and Peter Strazdins work with researchers at Intel and Tsukuba University to make cluster computers more easily programmable. Alistair Rendell and Eric McCreath are working on harnessing the enormous computational power of graphics processors (GPUs and the IBM Cell processor) collaborating with NICTA researchers on statistical machine learning applications. Uwe Zimmer is investigating the use of these devices for robotics. Peter Strazdins, in collabroation with Platform CDomputing, is investigating the applicability of the service-oriented paradigm for numerical HPC applications.
  • Operating Systems: Peter Strazdins leads research on the application of virtualization technology to high performance computing. This project offers the potential for far more efficient use of energy and hardware, with also improved usability. Eric McCreath works with the Linux kernel, and has been involved in improving its performance.
Click on this link for our research portrait.

Links

Projects within the Group: CC-NUMA, HPNumSOA, Jabberwocky projects

PhD Student Posters from the 2009 CECS Poster day.

Current Industrial Partners: Gaussian Inc, IBM Research, Intel, Platform (TM) Computing, Sun Microsystems

Collaborating Institutions: University of Adelaide (DHPC Group), APTSC, Purdue University, University of Texas (Austin), University of Tsukuba (HPCS Lab)