The emergence of multi/many core architectures and the expected rapid growth in number of cores per chip is changing the landscape of computing. Conventional wisdom holds that the number of cores per chip will double with each new generation, per-core performance is leveling off and may in fact decline, and general purpose computing is making the irreversible transition toward parallel architectures. Meanwhile, other processing units such as many core GPU’s are delivering tremendous computing power and present additional opportunities for next-generation systems and applications.
These fundamental shifts require rethinking the abstractions and mechanisms used to build and run systems and applications. It’s not clear that current tools, methods, and infrastructure can support composing and running safe and scalable concurrent software. New concurrent runtimes and operating systems, transactional memory, heterogeneous multiprocessing, parallel programming languages, cooperative resource management, virtualization, and speculative execution are among the many areas deserving attention.
Microsoft, MSDN, Proposal, Request, Safe, Scalable, Multi-core, Computing