Erhan Erdinç Pehlivan

45
Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications

description

Computer Architecture Support for Database Applications. Erhan Erdinç Pehlivan. Outline. Introduction Methodology of the Experiment Analysis of OLTP workloads Analysis of DSS workloads Conclusion. Introduction. - PowerPoint PPT Presentation

Transcript of Erhan Erdinç Pehlivan

Page 1: Erhan Erdinç Pehlivan

Erhan Erdinç Pehlivan

Computer Architecture Support for Database Applications

Page 2: Erhan Erdinç Pehlivan

Outline Introduction Methodology of the Experiment Analysis of OLTP workloads Analysis of DSS workloads Conclusion

Page 3: Erhan Erdinç Pehlivan

Introduction Today Database workloads alone motivate the sale of vast quantities of

symmetric multiprocessor (SMP) machines,

Page 4: Erhan Erdinç Pehlivan

Introduction Unfortunately, due to some challenges, commercial

applications are often ignored in preference to technical benchmarks, such as SPEC(Standard Performance Evaluation Corporation)

Reasons Complex standardized benchmarks. Large hardware requirements for full scale. Numerous configuration parameters. Lack of useful proprietary information.

Page 5: Erhan Erdinç Pehlivan

What is SMP method of work management that treats all

processors equally threads that can run concurrently on any

available processor improves the total throughput of the system requires applications that can take

advantage of multi-threaded parallelism

Page 6: Erhan Erdinç Pehlivan

SMP ARCHITECTURE

Page 7: Erhan Erdinç Pehlivan

SMP(Continued) Advantages of SMP

High performance Simplicity to program Easier load balancing

Disadvantages of SMP Low availability Low scalability

Page 8: Erhan Erdinç Pehlivan

Database Workloads OLTP(Online transaction

processing) Ex : Airline reservation systems

DSS(Decision Support Systems) Ex: Datawarehouse systems

Page 9: Erhan Erdinç Pehlivan

Characteristics of OLTP and DSS OLTP

uses short, moderately complex queries that read and/or modify a relatively small portion of the overall database.

have a high degree of multiprogramming,

DSS typically long-running, moderately to very complex queries,

that scan large portions of the database in a read-mostly fashion. The multiprogramming level in DSS systems is typically

much lower than that of OLTP systems.

Page 10: Erhan Erdinç Pehlivan

Motivation

Since SPEC evaluations don’t hold for DBMS, architectural behavior of two standard database workloads will be investigated in terms of

cycles per instruction (CPI) decomposition, cache miss rates, branch behavior. superscalarness, out-of-order execution

Page 11: Erhan Erdinç Pehlivan

Methodology : Experimental Platform a commodity four-processor Intel-based SMP server running Windows NT is chosen.

Page 12: Erhan Erdinç Pehlivan
Page 13: Erhan Erdinç Pehlivan

IO System Configurations(OLTP)

Page 14: Erhan Erdinç Pehlivan

IO System Configurations(DSS)

Page 15: Erhan Erdinç Pehlivan

Software Architecture(OLTP) Transaction Processing Council’s TPC-C

benchmark

Page 16: Erhan Erdinç Pehlivan

Software Architecture(OLTP)

Page 17: Erhan Erdinç Pehlivan

Software Architecture(DSS) Transaction Processing Council’s TPC-D

benchmark the activity of a wholesale supplier in doing complex

business analysis. analysis: pricing and promotions, market share

study,shipping management, supply and Demand management, profit and revenue management and customer satisfaction study.

17 read-only queries and 2 update queries,

Page 18: Erhan Erdinç Pehlivan

Software Architecture(DSS)

Page 19: Erhan Erdinç Pehlivan

Pentium Pro Processor Architecture

Page 20: Erhan Erdinç Pehlivan

Potential sources of stalls misses to the L1 instruction cache a branch misprediction the instruction mix of the workload the out-of-order execution engine

Page 21: Erhan Erdinç Pehlivan

Measurement Methodology NT performance monitor Pentium Pro hardware counters. Intel tool called emon

Page 22: Erhan Erdinç Pehlivan

Analysis of OLTP Workloads OLTP does short, moderately complex transactions small, random I/O operations large number of concurrent users, a high degree of

multiprogramming. database implements locking,logging The combination of these tasks :

Large instruction working set Larger data footprint

Page 23: Erhan Erdinç Pehlivan

Experimental Results: CPI

Page 24: Erhan Erdinç Pehlivan

Experimental Results: Memory System Behavior

How do OLTP cache miss rates vary with L2 cache size?

Page 25: Erhan Erdinç Pehlivan

Experimental Results: Memory System What effects do larger caches have on OLTP

throughput and stall cycles?

Page 26: Erhan Erdinç Pehlivan

How useful is superscalar issue and retire for OLTP?

Experimental Results: Processor Issues

Page 27: Erhan Erdinç Pehlivan

Experimental Results: Processor Issues How effective is branch prediction for OLTP?

Page 28: Erhan Erdinç Pehlivan

Experimental Results: Processor Issues

Is out-of-order execution successful at hiding stalls for OLTP?

Page 29: Erhan Erdinç Pehlivan

Experimental Results: Multiprocessor Scaling Issues How well does OLTP performance scale as the

number of processors increases?

Page 30: Erhan Erdinç Pehlivan

Experimental Results: Multiprocessor Scaling Issues How do OLTP CPI components change

as the number of processors is scaled?

Page 31: Erhan Erdinç Pehlivan

Experimental Results: Multiprocessor Scaling Issues

How prevalent are cache misses to dirty data in other processors’ caches for OLTP?

Page 32: Erhan Erdinç Pehlivan

Experimental Results: Multiprocessor Scaling Issues Is the four-state (MESI) invalidation-based cache

coherence protocol worthwhile for OLTP?

Page 33: Erhan Erdinç Pehlivan

Experimental Results: Multiprocessor Scaling Issues How does OLTP memory system performance scale with

increasing cachesizes and increasing processor count?

Page 34: Erhan Erdinç Pehlivan

Analysis of Decision SupportWorkloads DSS queries are typically long-running, moderately to

very complex queries, Scan large portions of the database in a read-mostly

fashion. Large sequential disk I/O read operations. The multiprogramming level in DSS systems is typically

lower than that of OLTP systems.

Page 35: Erhan Erdinç Pehlivan

Dss Workload

Page 36: Erhan Erdinç Pehlivan

How do DSS cache miss rates vary with L2 cache size?

Experimental Results:Memory System Behaviour

Page 37: Erhan Erdinç Pehlivan

Experimental Results:Memory System Behaviour What impact do larger L2 caches have on DSS

database performance and stall cycles?

Page 38: Erhan Erdinç Pehlivan

Experimental Results:Memory System Behaviour How prevalent are cache misses to dirty data in other

processors’ caches in DSS?

Page 39: Erhan Erdinç Pehlivan

Experimental Results:Memory System Behaviour Is the four-state (MESI) invalidation-based cache coherence

protocol worthwhile for DSS?

Page 40: Erhan Erdinç Pehlivan

Experimental Results:Memory System Behaviour How does DSS memory system performance scale

with increasing cache sizes?

Page 41: Erhan Erdinç Pehlivan

Experimental Results: Processor Issues

How useful is superscalar issue and retire for DSS?

BEHAVES LIKE OLTP

Page 42: Erhan Erdinç Pehlivan

Experimental Results: Processor Issues How effective is branch prediction for DSS?

Page 43: Erhan Erdinç Pehlivan

Experimental Results: Processor Issues Is out-of-order execution successful at hiding stalls for

DSS?

Page 44: Erhan Erdinç Pehlivan

Conclusions for OLTP out-of-order execution is only somewhat effective for this database

workload. increased superscalar width for the out-of-order engine may be

helpful. Innovation needed in branch prediction algorithms and hardware

structures to better support database workloads. caches are effective at reducing the processor traffic to memory Three-state (MSI) cache coherence protocol would be better the amount of time when the memory system is unavailable decreases

with larger caches, increases with # of processors

Page 45: Erhan Erdinç Pehlivan

Conclusions for DSS out-of-order execution provides potentially more benefit

for DSS than OLTP DSS performance is less sensitive to L2 cache size than

OLTP performance. Existing branch prediction schemes are more effective for

this workload. Increasing the micro-operation retire width in the Pentium

Pro’s out-of-order RISC core may provide performance improvements

Dirty misses are less prevalent for DSS than OLTP.