textabstractPerformance of modern hardware increasingly depends on proper utilization of both the memory cache hierarchy and parallel execution possibilities in todays super-scalar CPUs. Recent database research has demonstrated that database system performance severely suffers from poor utilization of these resources. In previous work, we presented join algorithms that strongly accelerate large equi-join by tuning the memory access pattern to match the characteristics of the memory cache subsystem in the benchmark hardware.
In order to make such algorithms applicable in database systems that run on a wide variety of platforms, we now present a calibration tool that automatically extracts the relevant parameters about the memory subsystem from any hardware. Exhaustive experiments with join-queries demonstrate how a database system equipped with this calibrator can automatically tune memory-conscious database algorithms to their optimal settings.
Once memory access is optimized, CPU resource usage becomes crucial for database performance. We demonstrate how CPU resource usage can be improved by using appropriate implementation techniques. Join experiments with the Monet database system on various hardware platforms confirm that combining memory and CPU optimization can lead to almost an order of magnitude of performance improvement on modern processors.
[1]
Martin L. Kersten,et al.
MIL primitives for querying a fragmented world
,
1999,
The VLDB Journal.
[2]
Jeffrey F. Naughton,et al.
Cache Conscious Algorithms for Relational Query Processing
,
1994,
VLDB.
[3]
David J. DeWitt,et al.
DBMSs on a Modern Processor: Where Does Time Go?
,
1999,
VLDB.
[4]
Peter A. Boncz,et al.
The Drill Down Benchmark
,
1998,
VLDB.
[5]
Josep Torrellas,et al.
The memory performance of DSS commercial workloads in shared-memory multiprocessors
,
1997,
Proceedings Third International Symposium on High-Performance Computer Architecture.
[6]
Luiz André Barroso,et al.
Memory system characterization of commercial workloads
,
1998,
ISCA.
[7]
Setrag Khoshafian,et al.
A decomposition storage model
,
1985,
SIGMOD Conference.
[8]
Martin L. Kersten,et al.
Database Architecture Optimized for the New Bottleneck: Memory Access
,
1999,
VLDB.
[9]
David A. Patterson,et al.
Performance characterization of a Quad Pentium Pro SMP using OLTP workloads
,
1998,
ISCA.
[10]
Patrick Valduriez,et al.
Join indices
,
1987,
TODS.