Skip navigation
The Australian National University

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 include: 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.

Current members

Academics: (collective contact systems[at]cs.anu.edu.au) Postdoctoral Fellows: Affiliated staff:

Research students: Mohsin Ali, Steven Ellis, Ivan Jibaja, Brian Lee, Josh Milthorpe, Vivek Kumar, Tiejun Gao, Yi Lin, Ben Coughlan, Xi Yang, Ting Cao, Gaurav Mitra, and Nima Nandapalan

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 Research School 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 rPeANUt 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 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 Advanced Computing has both a Computer Engineering Major and a Computer Systems Specialisation. Also the other degree programs within the Research School of Computer Science provide the opportunity for students to undertake computer systems courses.

The 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.

Presentations

Links

Projects within the Group: CC-NUMA, HPNumSOA

Current industrial partners: Gaussian Inc, IBM Research, Intel, Platform (TM) Computing, Sun Microsystems

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

Updated:  23 October 2012 / Responsible Officer:  JavaScript must be enabled to display this email address. / Page Contact:  JavaScript must be enabled to display this email address.