VISUALIZATION
European research consortium VELOX supports programming of multi-core systems
A huge challenge facing the computing community today is how to make programming multi-cores easier. With this goal in mind, the VELOX project, titled “An Integrated Approach to Transactional Memory on Multi-Core Computers” and funded by the European Comission with € 4 millions, launched its activities with the objective of delivering seamless transactional memory (TM) systems that integrate well at all levels of the system stack at the beginning of this year. Coordinated by the Barcelona Supercomputing Center, the VELOX consortium gathers nine different partners that include top research and system integration organizations such as the University of Neuchâtel, the Technische Universität Dresden, Ecole Politechnique Fédérale de Lausanne, Tel Aviv University, Chalmers University of Technology as well as leading integrators from the IT industry such as AMD, Red Hat and VirtualLogix SAS. This three-year project will obtain some research results that will enable Europe to become lead in a subset of the TM domain. The adoption of multi-core chips as the architecture-of-choice for mainstream computing will undoubtedly bring about profound changes in the way software is developed. In this brave new era, programs will need to be rewritten in a parallel way for computers that have multiple processing cores. One of the fundamental issues in developing parallel programs is a coordinated and orderly way of accessing shared data. The use of previous techniques such as fine grained locking as the multi-core programmer's coordination methodology is viewed by most experts as a dead-end since locking is too complicated for the average programmer. The TM programming paradigm is a strong contender to become the approach of choice for replacing those coordination techniques and implementing atomic operations in concurrent programming. Combining sequences of concurrent operations into atomic transactions promises a great reduction in the complexity of both programming and verification, by making parts of the code appear to be sequential without the need to program fine-grained locks. Transactions remove from the programmer the burden of figuring out the interaction among concurrent operations that happen to conflict when accessing the same locations in memory. “Thanks to the complementary skills of its partners, it will pave the way for key European researchers to make significant contributions to the ongoing revolution to make parallel programming easier for the masses”, says Osman Unsal, leader of the VELOX project. Mateo Valero, director of BSC, stressed that “the VELOX project is crucial to enable the supercomputing applications of today to run on the laptops of the near future.” To make TM an effective tool, TM systems will need the right hardware and software support to provide scalability not only in terms of number of cores, but also in terms of code size and complexity. The objective of the VELOX project is to understand how to provide such support by developing an integrated TM stack. Such a TM stack would span a system from the underlying hardware to the high end application and would consist of the following components: CPU, operating system, runtime, libraries, compilers, programming languages and application environments. The team includes internationally recognized TM experts in each of those components. These fully integrated TM systems will not only improve the understanding of TM designs but will greatly help in the adoption of the TM paradigm by the European software industry, making it a tool-of-choice for concurrent programming on multi-core platforms.