Reflections on science, technology, and computing — leavened by personal experience


Multicore designs are forcing us to face an ugly truth, namely that we cannot continue to hide parallelism from the software designer.

The lack of robust, turnkey tools from independent software vendors (ISVs) is a consequence of the HPC transition from supercomputers based on custom vector processors to large-scale parallelism based on commodity microprocessors. One can trace the rapid technology shift in the demographics of the Top 500 list. Why is this a problem? I’m glad you…

Achieving high performance for complex applications requires a judicious match of computer architecture, system software and software development tools.