A Profile of Performance Profiling With pprof

*
Accepted Session
Short Form
Intermediate
Scheduled: Tuesday, June 23, 2015 from 4:45 – 5:30pm in B301

Excerpt

When our code is slow, performance gains can often difficult to obtain. Our ideas of where to focus our attention are often wrong. pprof has become my go to tool, and it's easy to see why. Together we'll learn how to understand pprof's output to help us zero in on the parts of our code that need the most love.

Description

Sometimes our code takes longer than we want it to. When this happens we are tasked with making our code faster. Many times we’ll have an idea, or a couple of ideas how to speed things up. We spend hours working on it, anticipating the performance improvement and then!… Nothing.

Our ideas of what could be improved are rarely what actually needs to be addressed. To avoid wasted effort it is best to actually use a tool that can tell us exactly where to focus our attention. Enter cpu profiling with pprof.

pprof’s output can be overwhelming, but once you learn to read the output, it is an invaluable and incredibly powerful tool. Together we’ll learn how to generate profile information and interpret the profile to zero in on the code we have control over to see the quickest, and largest returns possible.

Tags

pprof, performance, profiling

Speaking experience

I've spoken at numerous conferences, including Open Source Bridge last year (My talk was Advanced Javascript Basics for Web Developers). I've also spoken at RubyConf AU this past February (https://rubyconf.eventer.com/rubyconf-australia-2015-1223/nitty-gritty-service-building-by-lauren-voswinkel-1719), Madison Ruby, GoRuCo, and others.

This is the first time giving this talk at a conference, though I will have given this talk internally at LivingSocial, where I've used pprof to gain enormous performance boosts in our services.

Speaker

  • Photo on 4 2 14 at 10.08 am  2

    Lauren Voswinkel

    LivingSocial

    Biography

    Lauren has been professionally programming since 2006. She started doing front-end work primarily, and transitioned to back end development using primarily Ruby and Rails.
    Currently, she works for LivingSocial, and has been throughly enjoying that endeavor. In her spare time, she likes to do fire breathing, fire spinning, and trick shots with a whip.
    She’s also been more than a little obsessed about Netrunner, and is working on a JS HTTP client/server to play with her friends who live across the country.

    Sessions