Talks
Speakers
Events
Topics
Sign in
Home
Talks
Speakers
Events
Topics
Leaderboard
Use
Analytics
Sign in
Suggest modification to this talk
Title
Description
How to Performance by Eileen Uchitelle Understanding performance output can feel like reading tea leaves. It makes sense to a few people, but many of us are left in the dark; overwhelmed and frustrated by the data. Additionally there are a ton of performance tools to choose from; StackProf, RubyProf, AllocationTracer. Where do you even start? In this talk we will not only look at how to read performance output, but when and how to use the right profilers for the job. We'll discuss a variety of methods and techniques for benchmarking and profiling so you can get the most out of each performance tool. Help us caption & translate this video! http://amara.org/v/H0pg/
Date
Summarized using AI?
If this talk's summary was generated by AI, please check this box. A "Summarized using AI" badge will be displayed in the summary tab to indicate that the summary was generated using AI.
Show "Summarized using AI" badge on summary page
Summary
Markdown supported
In the RubyConf 2015 talk titled 'How to Performance,' Eileen M. Uchitelle discusses methods for understanding and improving the performance of Ruby code, particularly in the context of speeding up integration tests in Rails. The talk emphasizes the use of various tools and techniques to analyze and enhance code performance effectively. Key points include: - **Introduction to Performance Issues**: Eileen shares her experience with Basecamp's integration tests, highlighting the necessity to speed them up to avoid future complaints from users during the transition to Rails 5. - **Benchmarking vs. Profiling**: The distinction between benchmarking (measuring current performance) and profiling (identifying slow parts of the code) is explained, underscoring their complementary roles in the performance improvement process. - **Establishing a Baseline**: She emphasizes the importance of obtaining a solid baseline for performance comparison, recommending tools like Benchmark IPS. - **Profiling Tools**: She discusses various profiling tools, including RubyProf and StackProf, illustrating how they help identify bottlenecks in code performance. - **Optimization Techniques**: Uchitelle shares the step-by-step process she undertook to optimize the code, including moving certain calls to reduce unnecessary allocations and employing strategies to minimize the impact of garbage collection. - **Real-World Case Studies**: The talk includes specific examples of optimizations made, such as fixing issues in Rack’s object allocations and managing URL helpers to improve integration test performance. - **Performance Improvements Achieved**: Ultimately, integration tests improved significantly from being 2.53 times slower than controller tests to just 1.12 times slower, demonstrating the effectiveness of the techniques employed. Eileen concludes by encouraging the continuous use of benchmarking throughout the optimization process and emphasizes the need for understanding the limits of tools while being open to experimenting with various profiling approaches to achieve better performance outcomes. The main takeaway is to always benchmark your code changes to verify improvements effectively.
Suggest modifications
Cancel