The temporal cost of data movement
will challenge traditional algorithmic
design approaches and
comparative optimizations, making
redundant computation sometimes
preferable to data sharing and elevating
communication complexity to
parity with computation. It is therefore
important for all of computer
science to design algorithms that
communicate as little as possible,
ideally attaining lower bounds on the
amount of communication required.
It will also require models and methods
to minimize and tolerate (hide)
latency, optimize data motion, and
remove global synchronization.