David Bader Wins Microsoft Research Award
The associate professor and executive director of high-performance computing received $75,000 to investigate the design and optimization of algorithms that fully exploit multi-core processors.
College of Computing Associate Professor and Executive Director of High-Performance Computing David Bader received a $75,000 award from Microsoft Research to investigate the design and optimization of algorithms that fully exploit multi-core processors. The project, “Enabling MS Visual Studio Programmers to Design Efficient Parallel Algorithms for Multi-Core Processors,” is one of approximately six projects selected by Microsoft Research in the 2006-2007 Parallel and Concurrent Programming, a targeted research effort that funds work dedicated to pursuits in concurrency, parallelism and multi-core technology.
Since the inception of the desktop computer, software performance has improved at an exponential rate, primarily driven by the steady technological improvements of microprocessors. Due to fundamental physical limitations and power constraints, there is currently a radical change in commodity microprocessor architecture to multi-core designs. Continued performance now requires the exploitation of concurrency at the algorithmic level. Thus, a crisis is occurring to provide software engineers with productive and easy-to-use programming methodologies that can take full advantage of multi-core processors. This crisis is primarily driven by three causes: the microprocessor industry must shift to multi-core processor architectures; computer science education has focused primarily on teaching sequential algorithms; and automated methods, such as those in compilers, cannot deduce algorithmic concurrency from most sequential codes.
This award supports Bader’s design of a parallel programming methodology for Microsoft client systems with commodity multi-core processors by providing a productive, easy-to-use portable library package called SWARM (SoftWare and Algorithms for Running on Multicore) for Visual Studio. Bader, a pioneer in the area of parallel algorithm engineering techniques, was chosen for the award because he has extensive experience designing the world’s fastest parallel algorithms for shared memory, symmetric multiprocessor and multithreaded architectures.
“There is no more free lunch,” said Bader. “Continued performance improvements of client codes cannot rely solely on the ride we’ve taken with Moore’s Law for the past four decades. Instead, we must take stake out a new path for training programmers to use multicore (parallel) algorithms. We will need to educate programmers and developers on the design, analysis, and implementation, of parallel algorithms by providing a parallel programming methodology and example codes, and also provide libraries and tools that offer a rich foundation of efficient parallel primitives and kernels.”
Bader plans to deliver his methodologies and parallel algorithm libraries as a package for Microsoft Visual Studio 2005 using the SDK v3 extensibility toolkit. Several releases of the SWARM package are planned: an initial release when the build environment is stable and basic primitives are implemented; a second major release with parallel primitives that support two to three higher-level algorithms; and the third release at the end of the project with a complete set of fundamental kernels and additional higher-level algorithms. The source code will be freely-available under the Microsoft Permissive License (Ms-PL) that allows licensees to view, modify, and redistribute the source code for either commercial or non-commercial purposes.