Brendan Gregg is all about performance, and his talk on Linux Profiling at Netflix, given on SCALE 13x Saturday at 11:30, touches on this very issue. The SCALE Team caught up with Brendan for this interview.
Q: Could you please introduce yourself and tell us a little about your background?
A: G'Day, I'm Brendan, I'm a senior performance architect at Netflix, where I work on anything computer performance related. I spent a lot of time with Linux, but also some FreeBSD. Performance is an exciting topic, and I've previously developed and published new tools, visualizations, and methodologies in this area.
Q: You're giving a talk on Linux Profiling at Netflix. Without tipping your hand on the actual talk, can you give us an idea of what we might expect?
A: Linux perf_events is a powerful profiler, and can help people fully identify CPU and other resource consumption, in a way no other tool can. That's really useful, especially in cloud environments where high performance equals lower cost. However, previous talks (myself included) often summarize it too much, and have omitted the gotchas that trip people up. The most painful one for Netflix is Java profiling, where you find stacks are missing, or are just hex numbers. In this talk I'll cover the gotchas directly. This includes some work I did on Java last year, where I modified hotspot to return the frame pointer, which allows perf_events to profile stacks.
perf_events is a topic where the documentation online is both overwhelming and incomplete. A time-limited talk, from a serious end-user, can be really helpful for people to get a handle on what's important to focus on.
Q: Is this your first visit to SCALE? If so, what are your expectations? If not, can you give us your impressions of the event?
A: I've spoken at SCALE a few times, and I expect it to be a great and friendly conference, with good talks and attendees.
Q: Is there anything in particular you are looking forward to at SCALE?
A: Apart from the talks, it's useful for me to meet people who are working on performance, or who have tried to and failed. What people are struggling with, especially when learning tools or approaching new problems, is useful to know. I'm always writing tools and documentation for other people to use -- so I like to know what works and what doesn't.
Q: Is there anything else you'd like to add?
[SCALE Team interview by Hannah Anderson]