1 / 23

Java Performance on Large-Scale Servers

Java Performance on Large-Scale Servers. Allen Brown, Perry Mason, Taire Avbovbo, Oliver Fasterling. Java Performance on Large-Scale Servers. Project Outline Introduction Servers Java Benchmarks Server Performance Analysis: SPECjAppServer2004. Servers. The Basics of Servers

Download Presentation

Java Performance on Large-Scale Servers

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Java Performance on Large-Scale Servers Allen Brown, Perry Mason, Taire Avbovbo, Oliver Fasterling ECE 5367 – Computer Architecture

  2. Java Performance on Large-Scale Servers Project Outline • Introduction • Servers • Java • Benchmarks • Server Performance Analysis: SPECjAppServer2004 ECE 5367 – Computer Architecture

  3. Servers The Basics of Servers • A server computer shares its resources with the users’ computers on a network. • It is possible for a computer to be a client and a server simultaneously. • There are several different types of servers such as: • Application • Chat • FTP • Mail • Web, etc… ECE 5367 – Computer Architecture

  4. Servers • Different Types of Servers • FTPA computer responsible for serving any kind of files. • Web A computer responsible for serving web pages via the HTTP protocol to clients. • File A computer and storage device dedicated to storing files. • Print A computer that controls the print functions of other client computers. ECE 5367 – Computer Architecture

  5. Servers • Servers in the Business World • Many large enterprises employ numerous servers to support their needs. • Due to the continual demand for ever more powerful servers in ever decreasing spaces, companies must continue to develop more efficient servers. • All types of companies use servers as the backbone for the company’s technological makeup. ECE 5367 – Computer Architecture

  6. Java • What is Java? • History of Java • Improving on C++ • Pros and Cons • Pluses and minuses of moving away from C++ • Current Usage • Real world day-to-day application of Java ECE 5367 – Computer Architecture

  7. Java: History • History of Java • Beginnings • The need for a better tool! • Breakthrough • World Wide Web ECE 5367 – Computer Architecture

  8. Java: Pros & Cons • Pros of Java • Platform Independent • Secure • Reliable • Cons of Java • Slightly lower Performance ECE 5367 – Computer Architecture

  9. Java: Usage • Current usage of Java • Just about everywhere! • Java technology components don't care what kind of computer, phone, TV, or operating system they run on ECE 5367 – Computer Architecture

  10. What is a Benchmark? • Performance Measurement • A benchmark is a program specifically chosen to measure the performance of a target system • Workload simulation • Designed to mimic a particular type of workload on a single component or entire system. ECE 5367 – Computer Architecture

  11. Benchmark Categories Small Benchmarks • Used by designers in early stages of development • Consists of Small programs or code fragments • Easy to fool by optimizing compilers Large Benchmarks • Consists of actual programs and applications • Can lead to real life improvement in performance ECE 5367 – Computer Architecture

  12. Types of Benchmarks Synthetic Benchmarks • Specially created programs that impose a workload on a specific component • Used for testing out individual components such as graphic and network cards Application Benchmarks • Real world applications • Used to testing of a full system ECE 5367 – Computer Architecture

  13. INDUSTRY STANDARD BENCHMARKS SPEC Whetstone Dhrystone HINT 3DMark Quake How do Benchmark results influence Buyers ? Compile lists Of all alternatives Determine the need For a new system Or component View Benchmark Results for all Choices Make final decision Based on results Determine configuration That yields best Performance / Price Ratio ECE 5367 – Computer Architecture

  14. Server Performance Analysis: SPECjAppServer2004 Background • Server Performance Analysis (SPA) Team • Project: Server performance of robust Java applications. • The benchmark kits are provided by SPEC Standard Performance Evaluation Corporation. www.spec.org ECE 5367 – Computer Architecture

  15. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? • It is a system benchmark for measuring the performance of Java Enterprise Application Servers. • Performance is measured in TOPS (Total Operations Per Second) • Once the TOPS is known for a particular system, it is then calculated the Price/TOPS ECE 5367 – Computer Architecture

  16. Server Performance Analysis: SPECjAppServer2004 ECE 5367 – Computer Architecture

  17. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? • Overview • The jAppServer2004 workload emulates a common Fortune 500 company with the following characteristics: • a heavyweight manufacturing system, • supply-chain management system, and • order/inventory system ECE 5367 – Computer Architecture

  18. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? Business environment model ECE 5367 – Computer Architecture

  19. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? • Hardware Environment (minimal configuration) • Application server • Database server • One or more clients to run the driver and supplier emulator outside the SUT. System Under Test (SUT) ECE 5367 – Computer Architecture

  20. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? Hardware environment ECE 5367 – Computer Architecture

  21. Server Performance Analysis: SPECjAppServer2004 What is jAppServer2004? • Software environment • Server OS : Windows Server 2003 • J2EE 1.3 compatible application server: Sun Java System Application Server • Database environment: Microsoft SQL Server 2000 • Java Runtime Environment (JRE) 1.3 or later for the driver and supplier emulator: Sun Java 2 Platform, Enterprise Ed. (J2EE 1.3) ECE 5367 – Computer Architecture

  22. Java Performance on Large-Scale Servers Conclusions • Benchmarks scores are available to the public • Benchmarks are compiled by a third-party and arbitrary corporation • Java is an important environment for servers • Large businesses and corporations need benchmarking results for them to decide on mass-purchasing of systems ECE 5367 – Computer Architecture

  23. Java Performance on Large-Scale Servers References • Serverswww.howstuffworks.com • Sun Microsystemswww.sun.com/software/learnabout/java • Benchmark Resourceswww.benchmarkresources.com • Dell Inc.Server Performance Analysis Laboratory • Standard Performance Evaluation Corporationwww.spec.org/jAppServer2004 ECE 5367 – Computer Architecture

More Related