Edmond Begumisa
Experienced enterprise Erlanger building scalable medical messaging systems @ Medical-Objects Pty Ltd.
Edmond is polyglot developer who has been designing and implementing enterprise software in Erlang for a decade, and in other languages for longer.
Edmond has worked on software in such diverse fields as accounting, procurement and banking. He is now focused on the health sector working with a wonderful team at Medical-Objects Australia migrating existing, and building new HL7 messaging products using Erlang.
Over the years, he has developed a special interest in finding ways to make enterprise software easier to develop, monitor and maintain by using Erlang processes to declaratively specify and orchestrate domain business processes.
Past Activities
Code BEAM STO V
14.35 - 15.15
Flamegraph and heatmap profiling.
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.