Programming Paradigms, Tools and Algorithms for Electronic Structure Calculations on Clusters of Non-Uniform Memory Access Parallel Processors. In recent years Australian academia has invested heavily in high performance computing systems. A significant fraction of these resources are devoted to performing computational chemistry studies, such as those used in drug design. This project links Australian researchers with the company responsible for a particularly widely used computational chemistr ....Programming Paradigms, Tools and Algorithms for Electronic Structure Calculations on Clusters of Non-Uniform Memory Access Parallel Processors. In recent years Australian academia has invested heavily in high performance computing systems. A significant fraction of these resources are devoted to performing computational chemistry studies, such as those used in drug design. This project links Australian researchers with the company responsible for a particularly widely used computational chemistry application package, and also with a major international computer company. Our aim is to substantially improve the performance of this code on cluster based compute systems. This, as well as our generic performance evaluation tools, would be of substantial benefit to the Australian research community. The project will forge links with researchers in Singapore, Japan and the USA.Read moreRead less
Programming Paradigms, Tools and Algorithms for the Spectral Solution of the Electronic Schroedinger Equation on Non-Uniform Memory Parallel Processors. We propose to develop software tools and methods that are appropriate for current and future generations of large scale shared memory computer systems. Our purpose is to enable a more productive utilization of these architectures for scientific computation. We will focus on algorithms for solving differential equations appropriate to quantum che ....Programming Paradigms, Tools and Algorithms for the Spectral Solution of the Electronic Schroedinger Equation on Non-Uniform Memory Parallel Processors. We propose to develop software tools and methods that are appropriate for current and future generations of large scale shared memory computer systems. Our purpose is to enable a more productive utilization of these architectures for scientific computation. We will focus on algorithms for solving differential equations appropriate to quantum chemistry. In particular an exciting new class of methods whose computational cost scales linearly with system size. Our goal is to develop scalable parallel implementations of these methods. If realized this will revolutionize computation, enabling first principles calculations on truly nanoscale systems, such as enzymes and molecular electronic devices.Read moreRead less
Implementing Feferman-Landin Logic. The objective of this project is to utilise computer based verification tools (such as PVS and Rewritting Logic) to develop a software engineering environment for specifying and verifying systems written in high-level programming languages such as Java, Scheme, and ML. The project will thus subtantially advance the use of formal computer based tools to develop reliable programs and specifications for life-critical systems. The project will also develop form ....Implementing Feferman-Landin Logic. The objective of this project is to utilise computer based verification tools (such as PVS and Rewritting Logic) to develop a software engineering environment for specifying and verifying systems written in high-level programming languages such as Java, Scheme, and ML. The project will thus subtantially advance the use of formal computer based tools to develop reliable programs and specifications for life-critical systems. The project will also develop formally
based interoperability between the PVS and Maude systems, two widely
used computer tools for reasoning about complex systems.Read moreRead less
A Unified Grid Programming Methodology for Global e-Science. This project will contribute to the national benefit in three important ways. First, we will build a set of novel e-Science applications as demonstrator projects in areas of national priority. These will have enormous economic impact in areas ranging from environmental management to health. Second, we will build software infrastructure that will have both commercial and strategic value in its own right. Third, we shall build a critical ....A Unified Grid Programming Methodology for Global e-Science. This project will contribute to the national benefit in three important ways. First, we will build a set of novel e-Science applications as demonstrator projects in areas of national priority. These will have enormous economic impact in areas ranging from environmental management to health. Second, we will build software infrastructure that will have both commercial and strategic value in its own right. Third, we shall build a critical mass of expertise that bridges the physical sciences and computer science. The support provided to this proposal will allow multi-disciplinary teams to address scientific problems of significant scale.Read moreRead less
A scalable debugging framework for petascale computers. Supercomputing underpins a wide range of areas of importance to the Australian economy; mining, agriculture, engineering, medical research and pharmaceutical development to name a few. It is of critical importance that software solutions in these areas behave correctly and do not generate erroneous results. This project will develop software tools and techniques that make it possible to detect and locate errors as software is converted to r ....A scalable debugging framework for petascale computers. Supercomputing underpins a wide range of areas of importance to the Australian economy; mining, agriculture, engineering, medical research and pharmaceutical development to name a few. It is of critical importance that software solutions in these areas behave correctly and do not generate erroneous results. This project will develop software tools and techniques that make it possible to detect and locate errors as software is converted to run on the next generation of 'petascale' supercomputers. We will deploy the tools both commercially through our industry partner, and also on national high performance computing facilities.Read moreRead less
A Programming Model of Object Validity for Secure and Efficient Concurrency. To provide improved performance and security for software applications, Australia's ICT industry must adapt to the complex programming demands of modern multicore processors. The programming model developed in the project represents a breakthrough solution. A seamless integration of concurrency and object orientation leads to a simple yet powerful programming style that is compatible with today's premier approach to bui ....A Programming Model of Object Validity for Secure and Efficient Concurrency. To provide improved performance and security for software applications, Australia's ICT industry must adapt to the complex programming demands of modern multicore processors. The programming model developed in the project represents a breakthrough solution. A seamless integration of concurrency and object orientation leads to a simple yet powerful programming style that is compatible with today's premier approach to building large-scale software systems with significantly improved performance and security. The product will reduce development time for compute-intensive applications in many industry sectors, including health care (e.g. patient monitoring), finance, defence, environment, mining, manufacturing and computer games.Read moreRead less
Analysis and Optimisation of Incomplete Object-Oriented Programs. This project will push Australia to the forefront of OO technologies and will increase the profile of advanced programming language design and implementation research in Australia. The completed framework will
likely be commercially viable as Australia industries such as banks and
insurance companies and government organisations hosting large
OO software systems may benefit (in terms of performance and
code security) from the ....Analysis and Optimisation of Incomplete Object-Oriented Programs. This project will push Australia to the forefront of OO technologies and will increase the profile of advanced programming language design and implementation research in Australia. The completed framework will
likely be commercially viable as Australia industries such as banks and
insurance companies and government organisations hosting large
OO software systems may benefit (in terms of performance and
code security) from the technology developed as a result of this research. The completed framework will also provide an excellent platform for researchers in Australia and elsewhere to do research in OO technologies, helping in producing quality students for the Australian IT industry.Read moreRead less
Scratchpad-based Memory Allocation Techniques for Embedded Software. This research aims at developing automatic memory allocation algorithms to maximise the effective utilisation of scratchpad memories, which will lead to significantly improved performance and energy usage in embedded applications. The outcomes of this project will provide generic solutions to many Australia-based industries, including telecommunication, network management, sensor networks, automotive and instrumentation/measure ....Scratchpad-based Memory Allocation Techniques for Embedded Software. This research aims at developing automatic memory allocation algorithms to maximise the effective utilisation of scratchpad memories, which will lead to significantly improved performance and energy usage in embedded applications. The outcomes of this project will provide generic solutions to many Australia-based industries, including telecommunication, network management, sensor networks, automotive and instrumentation/measurement, where embedded systems are ubiquitously used. Therefore, this project will significantly contribute to the Priority Area (Frontier Technologies for Building and Transforming Australian Industries), hence fits into its Priority Goal: Frontier Technologies.Read moreRead less
Compiler-Directed Code Tiling for Higher Program Performance and Predictability on Multi-Level Memory Hierarchies. Programming languages invariably induce a perception of memory as being flat, whereas actual computers are being equipped increasingly with deep memory hierarchies to overcome the ever-widening performance gap between processors and memories. This mismatch can result in low locality of reference and poor performance. This project will develop a new array layout transformation, calle ....Compiler-Directed Code Tiling for Higher Program Performance and Predictability on Multi-Level Memory Hierarchies. Programming languages invariably induce a perception of memory as being flat, whereas actual computers are being equipped increasingly with deep memory hierarchies to overcome the ever-widening performance gap between processors and memories. This mismatch can result in low locality of reference and poor performance. This project will develop a new array layout transformation, called data tiling, used in tandem with loop tiling to achieve significantly improved performance gains (and predictability) for array-dominated applications on multi-level memory hierarchies. We will explore this joint restructuring to obtain higher performance and predictability for whole programs, kernel libraries, iterative stencil codes and embedded applications.
Read moreRead less
A safe and efficient multi-language component framework based on dynamic compilation. Components are a versatile mechanism for the construction of extendible systems and for improved code reusability. Emerging environments like Microsoft's .NET support the interaction of components written in different programming languages. To date, such systems do not adequately isolate components which therefore must trust each other. This is unacceptable for components loaded across the Internet. We will dev ....A safe and efficient multi-language component framework based on dynamic compilation. Components are a versatile mechanism for the construction of extendible systems and for improved code reusability. Emerging environments like Microsoft's .NET support the interaction of components written in different programming languages. To date, such systems do not adequately isolate components which therefore must trust each other. This is unacceptable for components loaded across the Internet. We will develop a framework for secure execution of component software, based on hardware-enforced protection domains. To minimize the resulting runtime overheads we will provide a component model with lightweight context switching. A novel typed intermediate language and dynamic compilation techniques will offer complementary optimisations.
Read moreRead less