The ICE abstraction may take CS from serial
(single-core) computing to effective parallel
(many-core) computing.
BY uzi Vishkin
using simple
abstraction
to Reinvent
computing for
Parallelism
the ReCeNt DRamatIC shift from single-processor
computer systems to many-processor parallel ones
requires reinventing much of computer science to
build and program the new systems. CS urgently
requires convergence to a robust parallel general-purpose platform providing good performance
and programming easy enough for all
CS students and graduates. Unfortunately, ease-of-programming objectives have eluded parallel-computing
research over at least the past four
decades. The idea of starting with
an established easy-to-apply parallel
programming model and building an
architecture for it has been treated as
radical by hardware and software vendors alike. Here, I advocate an even
more radical parallel programming
and architecture idea: Start with a simple abstraction encapsulating the desired interface between programmers
and system builders.
key;insights
computing can be reinvented for
parallelism, from parallel algorithms
through programming to hardware,
preempting the technical barriers
inhibiting use of parallel machines.
moving beyond the serial von neumann
computer (the only successful general-purpose platform to date), computer
science will again be able to augment
mathematical induction with a simple
one-line computing abstraction.
Being able to think algorithmically in
parallel is a significant advantage for
systems developers and programmers
building and programming multi-core
machines.