Rapidly growing main memory sizes eliminate disk I/O as a bottleneck
for many traditionally data-intensive applications. Although the
rise of applications like in-memory databases suggests that I/O - in
the traditional sense of disk storage - is no longer a bottleneck,
this is a fallacy. While the front lines may have shifted from disk
to main memory, the basic problem remains: CPUs are significantly
faster than storage and the performance of many applications is now
limited by memory performance.
Our research shows that - independent of processor architecture -
memory performance varies by up to two orders of magnitude depending
upon access pattern, word size, read/write ratio, and degree of
concurrency. For a growing class of data-intensive (i.e.
memory-bound) applications, where memory performance dominates
application performance, a thorough understanding of memory
performance is required to effectively predict and manage
application performance. Our evaluation of memory performance
resulted in many improvements to memory bound (database) operations,
including "FAST: Fast Architecture Sensitive Tree Search", which was
awarded best paper in SIGMOD 2010.
High-Performance Data Management - Before and Beyond Fast Architecture Sensitive Tree Search