investigating the effects of using different nursery sizing policies on performance l.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Investigating the Effects of Using Different Nursery Sizing Policies on Performance PowerPoint Presentation
Download Presentation
Investigating the Effects of Using Different Nursery Sizing Policies on Performance

Loading in 2 Seconds...

play fullscreen
1 / 32

Investigating the Effects of Using Different Nursery Sizing Policies on Performance - PowerPoint PPT Presentation


  • 99 Views
  • Uploaded on

Investigating the Effects of Using Different Nursery Sizing Policies on Performance . Tony Guan, Witty Srisa-an , and Neo Jia Department of Computer Science & Engineering University of Nebraska-Lincoln { xguan,witty,cjia}@cse.unl.edu. Setting the Stage …. JBoss application server

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Investigating the Effects of Using Different Nursery Sizing Policies on Performance' - Mia_John


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
investigating the effects of using different nursery sizing policies on performance

Investigating the Effects of Using Different Nursery Sizing Policies on Performance

Tony Guan, Witty Srisa-an, and Neo Jia

Department of Computer Science & Engineering

University of Nebraska-Lincoln

{xguan,witty,cjia}@cse.unl.edu

setting the stage
Setting the Stage …

JBossapplication server

HotSpot VM released as part of OpenJDK1.7

Parallel generational collector with 8 minor and 8 major collection threads

256 MB heap for this example (very little paging)

Nursery and mature spaces are set to 1:2 and periodically resized to maximize throughput

Throughput performance of SPECjAppServer2004

setting the stage3
Setting the Stage
  • Performance of the generational collectorhas something to do with such throughput behavior
    • Higher workload often results in higher GC overhead
    • More GC work means less useful work done by an application
motivation
Motivation
  • One factor that differs among different generational collector implementations is nursery sizing policy
    • There are multiple waysto size the nursery and mature space
    • Performance ramifications of using each policy have not been widely investigated
research goals
Research Goals
  • Can performance be affected by using different sizing policies?
    • Modify a VM to support multiple sizing policies
  • If so, how can it be affected?
    • Perform analysis by observing various metrics including execution time, throughput, GC behavior, and minimum mutator utilization
agenda
Agenda
  • Overview of investigated sizing policies
  • Experimental methodology
  • Results of our evaluation
  • Introducing a hybrid policy
  • Conclusions
sizing policy fixed ratio
Sizing Policy: Fixed Ratio

Nursery

(33%)

Nursery

(33%)

Mature

(66%)

Mature

(66%)

Size enlarged

by 20%

Nursery

sizing policy heap availability
Sizing Policy: Heap Availability

Nursery

Nursery

Nursery

Nursery

Used

Mature

Used

Mature

Used Mature

After

Minor_GC1

After

Minor_GC2

After

Minor_GCn

Initial

sizing policy gc ergonomics
Sizing Policy: GC Ergonomics

Nursery

(33%)

Nursery

(40%)

Nursery

(48%)

Mature

(66%)

Mature

(60%)

Mature

(52%)

Size and ratio are adjusted to meet performance goal(s)

terminology copy reserve
Terminology: Copy-Reserve*

Nursery

Copy-

Reserve

Used

Mature

Used

Mature

Mature

After a

Minor GC

After a few

Minor GC

Initial

Copy-Reserve = 100% of nursery

*Sizing policy = FR

experimental setting
Experimental Setting
  • Three nursery sizing policies
    • GC Ergonomics Policy (Default)
    • Fixed Ratio Policy (FR)
    • Heap Availability Policy (HA)
  • Multithreaded benchmarks
    • SPECjvm2008 (17)
    • Multithreaded benchmarks from DaCapo (eclipse,hsqldb,lusearch,xalan)
    • SPECjbb2005 & SPECjAppServer2004
experimental setting13
Experimental Setting
  • JVM (Hotspot) settings:
    • Memory: Old:Young=2:1
      • 2 times minimum heap for each application
      • 256MB for jAppServer2004 and 1GB for jbb2005
    • GC : 8 threads for both minor & full GC, policy modification based on parallel collector
  • Platform: Intel Xeon 8 cores, 16GB, running Linux
  • Methodology: 5 runs, report best, worst, and average
result jvm2008 dacapo
Result: jvm2008 & DaCapo

The remaining thirteen benchmarks show little sensitivity to different policies

analysis jvm2008 dacapo
Analysis: jvm2008 & DaCapo

Using different sizing policies can affect the

garbage collection performance

analysis jappserver200418
Analysis: jAppServer2004

Nursery

Nursery

Nursery

Copy-

Reserve

Copy-

Reserve

Copy-

Reserve

Full

Collection

Full

Collection

Used

Mature

Used

Mature

Used

Mature

Current

heap usage

Mature heap

usage after full

collection

Mature heap

usage after full

collection

Copy-Reserve = 100% of nursery

Sizing policy = FR or Default

analysis jappserver200419
Analysis: jAppServer2004

Nursery

Nursery

Nursery

Copy-

Reserve

Minor

Collection

Minor

Collection

Copy-

Reserve

Used

Mature

Copy-

Reserve

Used

Mature

Initial

After a

Minor GC

After a few

Minor GC

Copy-Reserve = 100% of nursery

Sizing policy = HA

summary
Summary
  • HA does not do as well as the other two policies when the workload is light
  • HA allows the server to respond to requests significantly longer under heavyworkload
a hybrid policy
A Hybrid Policy
  • Use default policy for the peak performance during light workload
  • Use HA as soon as the GC behavior has reached a critical point
    • number of consecutive FullGC >= consecFailure (e.g., 2)
conclusions
Conclusions
  • Threenursery sizing policies are investigated using 23 benchmarks
    • Sizing policy does matter!
      • Itcan impact performance and serviceability of large servers
    • Up to 36% performance differences have been observed in some benchmarks
  • The hybrid policy can be useful in large servers to better handle heavy workload
investigating the effects of using different nursery sizing policies on performance32

Investigating the Effects of Using Different Nursery Sizing Policies on Performance

For source of modified hotspot & modified jbb2005 see:

http://cse.unl.edu/~xguan

Thanks!