erhan erdinç pehlivan computer architecture support for database applications
TRANSCRIPT
![Page 1: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/1.jpg)
Erhan Erdinç Pehlivan
Computer Architecture Support for Database Applications
![Page 2: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/2.jpg)
Outline Introduction Methodology of the Experiment Analysis of OLTP workloads Analysis of DSS workloads Conclusion
![Page 3: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/3.jpg)
Introduction Today Database workloads alone motivate the sale of vast quantities of
symmetric multiprocessor (SMP) machines,
![Page 4: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/4.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/5.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/6.jpg)
SMP ARCHITECTURE
![Page 7: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/7.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/8.jpg)
Database Workloads OLTP(Online transaction
processing) Ex : Airline reservation systems
DSS(Decision Support Systems) Ex: Datawarehouse systems
![Page 9: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/9.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/10.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/11.jpg)
Methodology : Experimental Platform a commodity four-processor Intel-based SMP server running Windows NT is chosen.
![Page 12: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/12.jpg)
![Page 13: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/13.jpg)
IO System Configurations(OLTP)
![Page 14: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/14.jpg)
IO System Configurations(DSS)
![Page 15: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/15.jpg)
Software Architecture(OLTP) Transaction Processing Council’s TPC-C
benchmark
![Page 16: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/16.jpg)
Software Architecture(OLTP)
![Page 17: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/17.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/18.jpg)
Software Architecture(DSS)
![Page 19: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/19.jpg)
Pentium Pro Processor Architecture
![Page 20: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/20.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/21.jpg)
Measurement Methodology NT performance monitor Pentium Pro hardware counters. Intel tool called emon
![Page 22: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/22.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/23.jpg)
Experimental Results: CPI
![Page 24: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/24.jpg)
Experimental Results: Memory System Behavior
How do OLTP cache miss rates vary with L2 cache size?
![Page 25: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/25.jpg)
Experimental Results: Memory System What effects do larger caches have on OLTP
throughput and stall cycles?
![Page 26: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/26.jpg)
How useful is superscalar issue and retire for OLTP?
Experimental Results: Processor Issues
![Page 27: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/27.jpg)
Experimental Results: Processor Issues How effective is branch prediction for OLTP?
![Page 28: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/28.jpg)
Experimental Results: Processor Issues
Is out-of-order execution successful at hiding stalls for OLTP?
![Page 29: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/29.jpg)
Experimental Results: Multiprocessor Scaling Issues How well does OLTP performance scale as the
number of processors increases?
![Page 30: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/30.jpg)
Experimental Results: Multiprocessor Scaling Issues How do OLTP CPI components change
as the number of processors is scaled?
![Page 31: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/31.jpg)
Experimental Results: Multiprocessor Scaling Issues
How prevalent are cache misses to dirty data in other processors’ caches for OLTP?
![Page 32: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/32.jpg)
Experimental Results: Multiprocessor Scaling Issues Is the four-state (MESI) invalidation-based cache
coherence protocol worthwhile for OLTP?
![Page 33: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/33.jpg)
Experimental Results: Multiprocessor Scaling Issues How does OLTP memory system performance scale with
increasing cachesizes and increasing processor count?
![Page 34: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/34.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/35.jpg)
Dss Workload
![Page 36: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/36.jpg)
How do DSS cache miss rates vary with L2 cache size?
Experimental Results:Memory System Behaviour
![Page 37: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/37.jpg)
Experimental Results:Memory System Behaviour What impact do larger L2 caches have on DSS
database performance and stall cycles?
![Page 38: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/38.jpg)
Experimental Results:Memory System Behaviour How prevalent are cache misses to dirty data in other
processors’ caches in DSS?
![Page 39: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/39.jpg)
Experimental Results:Memory System Behaviour Is the four-state (MESI) invalidation-based cache coherence
protocol worthwhile for DSS?
![Page 40: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/40.jpg)
Experimental Results:Memory System Behaviour How does DSS memory system performance scale
with increasing cache sizes?
![Page 41: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/41.jpg)
Experimental Results: Processor Issues
How useful is superscalar issue and retire for DSS?
BEHAVES LIKE OLTP
![Page 42: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/42.jpg)
Experimental Results: Processor Issues How effective is branch prediction for DSS?
![Page 43: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/43.jpg)
Experimental Results: Processor Issues Is out-of-order execution successful at hiding stalls for
DSS?
![Page 44: Erhan Erdinç Pehlivan Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/44.jpg)
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 Computer Architecture Support for Database Applications](https://reader035.vdocuments.us/reader035/viewer/2022062407/56649cb85503460f9497eaf2/html5/thumbnails/45.jpg)
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.