<
Roshan Giri

Roshan Giri

Experienced parallel and concurrency enthusiast developing secure medical messaging system @ Medical Objects Pty Ltd

Computer Engineer with hands-on experience in Cuda and Erlang. Currently Developing Scalable Messaging System for Medical Objects using Erlang.
 

Upcoming Activities

Edmond Begumisa / Roshan Giri
Code BEAM STO

Development and production profiling made easy with flame_prof: A new flamegraph and heatmap lightweight profiler for Erlang

TALK LEVEL: INTERMEDIATE / ADVANCED

Profiling Erlang systems is tricky due to their concurrent nature - many things going on at the same time.

We introduce a new open-source low-overhead profiler which samples callstacks and graphically categorises them by process status, reductions, memory and message queue length over time making it easy to identify code where time and memory is being spent.

We illustrate how we used this tool to identify both sequential and concurrency bottlenecks in our Erlang Healthcare HL7 message processing system.

THIS TALK IN THREE WORDS

Profiler

Heatmaps

Flamegraphs

OBJECTIVES

  • Show how to effectively use sub-second heatmaps and process status flamegraphs to isolate performance issues during both development and production.
  • Illustrate how focusing on locating and eliminating concurrency bottlenecks tends to reap bigger rewards than optimising sequential code.
  • Impart why it's critical to profile Erlang systems at different levels of load.

TARGET AUDIENCE

This talk is suitable for intermediate and advanced Erlang developers who are responsible for identifying performance issues and locating their causes.