August 24, 2018 · by Björn Gustavsson .
Back after the summer holidays, this blog will now change tracks and
start a series of blog posts about Static Single Assignment (SSA).
This first installment will set the scene for the posts that follow by
looking at the traps and pitfalls one can fall into when trying to
optimize BEAM assembly code.
Read More
June 18, 2018 · by Björn Gustavsson .
This blog post is a brief history lesson about the Erlang compiler for
the BEAM machine. To provide some context, there will first be a quick
look at the abstract machines for Erlang.
Read More
June 11, 2018 · by Lukas Larsson .
The BEAM interpreter in erts has been completely re-written in OTP 21.
Most of the instructions have remained the same, but the perl scripts used
to generate the C code have a new implementation. This blog post will look at
some of the optimizations that were possible because of those changes.
Read More
May 30, 2018 · by Björn Gustavsson .
This blog post wraps up the exploration of Core Erlang started in the
previous two blog posts. The remaining default Core Erlang
passes are described, followed by a look at how Core Erlang is
represented internally in the compiler.
Read More
May 18, 2018 · by Björn Gustavsson .
This blog post continues the exploration of Core Erlang by
looking at some optimizations done by the sys_core_fold
compiler pass. The Core Erlang language was introduced in
the previous blog post.
Read More
May 07, 2018 · by Björn Gustavsson .
This blog post is the first about the Core Erlang format. In this
blog post, we introduce the Core Erlang format through examples
that compare Erlang code to the corresponding Core Erlang
code.
Read More
May 02, 2018 · by Lukas Larsson .
OTP-21 Release Candidate 1 has just been released. I thought that I would go
through the changes that I am the most excited about. Most likely this will
mostly mean features in erts and the core libraries as those are the
changes that I am the most familiar with.
Read More
May 02, 2018 · by John Högberg .
The memory instrumentation module was rewritten for Erlang/OTP 21 to make it
easier to use. In this post I’ll describe the rationale behind the new features
and how to make use of them.
Read More
April 26, 2018 · by Björn Gustavsson .
In this blog post, we will explore the compiler passes that make up
the compiler’s front end.
Read More
April 19, 2018 · by Björn Gustavsson .
This is the first of a series of blog posts about the compiler. There
will be blog posts about how the compiler works now, how it might work
in the future, and some historical notes to explain why some things
are what they are. In this blog post I will talk about one of the most
useful options for exploring the compiler, namely the time option.
Read More
April 11, 2018 · by Lukas Larsson .
Erlang/OTP 21 will introduce a completely new IO polling implementation.
This new implementation comes with a new set of tuneable parameters that
can be used to get the most out of your system. This blog post describes
the parameters and attempts to describe what they should be used for.
Read More