A NEW CHALLENGE FOR APPLICATION DEVELOPERS Scientific and engineering applications have driven the development of high-performance computing (HPC) for several decades. Many new techniques have been developed over the years to study increasingly complex phenomena using larger and more demanding jobs with greater throughput, fidelity, and sophistication than ever before. Such techniques are implemented as hardware, as software, and through algorithms, including now familiar concepts such as vectorization, pipelining, parallel processing, locality exploitation with memory hierarchies, cache use, and coherence | 23 Classifying and enabling Grid applications Gabrielle Allen 1 Tom Goodale 1 Michael Russell 1 Edward Seidel 1 and John Shalf2 1 Max-Planck-Institut fur Gravitationsphysik Golm Germany 2Lawrence Berkeley National Laboratory Berkeley California United States A NEW CHALLENGE FOR APPLICATION DEVELOPERS Scientific and engineering applications have driven the development of high-performance computing HPC for several decades. Many new techniques have been developed over the years to study increasingly complex phenomena using larger and more demanding jobs with greater throughput fidelity and sophistication than ever before. Such techniques are implemented as hardware as software and through algorithms including now familiar concepts such as vectorization pipelining parallel processing locality exploitation with memory hierarchies cache use and coherence. As each innovation was introduced at either the hardware operating system or algorithm level new capabilities became available - but often at the price of rewriting applications. This often slowed the acceptance or widespread use of such techniques. Further Grid Computing - Making the Global Infrastructure a Reality. Edited by F. Berman A. Hey and G. Fox 2003 John Wiley Sons Ltd ISBN 0-470-85319-0 602 GABRIELLE ALLEN ETAL. when some novel or especially disruptive technology was introduced . MPPs programmed using message passing or when an important vendor disappeared . Thinking Machines entire codes had to be rewritten often inducing huge overheads and painful disruptions to users. As application developers and users who have witnessed and experienced both the promise and the pain of so many innovations in computer architecture we now face another revolution the Grid offering the possibility of aggregating the capabilities of the multitude of computing resources available to us around the world. However like all revolutions that have preceded it along with the fantastic promise of this new technology we are .