WOPR22 Brainstorm: Optimizations

During WOPR22, we spend a few minutes before lunch collecting systems-based (as opposed to code) optimizations that the group had used in the past. This was time- and hunger-bound.

This is not an exhaustive or ranked list, and does not include enough information to use these as heuristics. It might be a source of ideas.

This work is the product of all of the Workshop on Performance and Reliability (WOPR22) attendees. WOPR22 was held May 21-23, 2014, in Malmö, Sweden, on the topic of “Early Performance Testing”. Participants in the workshop included Fredrik Fristedt, Andy Hohenner, Paul Holland, Martin Hynie, Emil Johansson, Maria Kedemo, John Meza, Eric Proegler, Bob Sklar, Paul Stapleton, Andy Still, Neil Taitt, and Mais Tawfik Ashkar.

OptimizationBenefit
Faster CPU ClockMore iterations of tasks
Turn of Parallelism on SQL ServerPrevents other users from getting blocked by a single bad or slow query
More CPU CoresDo more things simultaneously
Domain ShardingAllows more connections
Using SSDFaster disk I/O
Use of I/O Accelerator cards (e.g. Fusion-IO)Faster I/O due to being right on bus - lower power consumption
More MemoryReduce need for disk access (Fastest I/O)
Reduce DB Memory UsageLeave room for OS to avoid paging
Enable Jumbo Frames at network levelReduce packet overheard
Use WAN Accelerator Appliances (Riverbed)Eliminate/Optimize retransmission of repetitive traffic
Oracle: Pinning Execution PlanKeep good plans in memory, prevent Recalculation. Use with caution!
Oracle: Index Cost AdjustmentManually tweaking query optimization. Use with caution!
Tune # of processes and threads on web serverPotential performance improvements
Automatically set max HTTP connections to > 2Speed up clients
Turn off Hyperthreading on a physical SQL ServerReduce switching overhead, process fewer concurrent queries more efficiently
Reduce # of cores on VM from 4 to 2More frequent scheduling; not waiting for 4 cores to become available
JMeter - increase heap size if near maxIncreases efficiency
JMeter - at throughput > 900 trans/sec, do no use agents. Use multiple mastersIncreases throughput
Tweak garbage collection frequency or try different GCsReduces badness
Turn on HTTP compressionReduce bandwidth utilization
Go to lunchFix hunger
Updated: June 5, 2014 — 12:38 am

Leave a Reply

Your email address will not be published. Required fields are marked *

© 2014 WOPR Frontier Theme