Peer Stritzinger

GRiSP Inventor, Distributed Computing in IoT and everywhere

Peer discovered Erlang in 2007 and has been relying on it ever since. Fascinated by all its emergent properties which are quite non-obvious from afar. Around it he found the best developer community one could wish for being part of.

He is Founder and Director of Peer Stritzinger GmbH which created GRiSP www.grisp.org, a platform to run Erlang on small embedded systems and focusses on building Automotive, Industrial IoT and Smart Cities applications and tries to use Erlang technology wherever useful. Participating in several EU funded research projects, he is trying to push the envelope for what can be done with Erlang and the other languages on the BEAM.

Peer’s previous experience ranges from low level device drivers to functional languages in industrial and automotive applications. He initially mastered in physics at the Technical University Munich. He has been working self-employed as a developer since 1987 and also consulted in applied cryptography and protocol design and implementation. He is since ever living and working in the idyllic countryside west of Munich, Bavaria.

Talk:
Bake Once, Start Fast: Instant-Launch Erlang Executables

Single-file executables are great, but cold start is still dominated by ERTS loading and transforming many .beam modules, and sometimes running the JIT. Fine for servers, painful for command line tools that start often. This talk presents a packaging approach that bakes modules into their runnable in-memory form so startup can skip most loader work. We compare two paths: statically linked, relocation-patched module images, and a minimal allocator that undumps only what the Erlang runtime needs. Atom handling is part of it, but so are relocations, literals, exports, and validation. Targeting Erlang means every language in the ecosystem benefits, and leaves a path to embedded use later.

Talk objectives:

Attendees will learn what makes Erlang executables slow to start, how baking runnable code images can skip most module loading and optional JIT work, and which runtime structures must still be handled for correctness (atoms, relocations, literals, exports). They will leave able to judge the trade-offs and apply these ideas to build snappy command line tools today, with a clear path toward embedded use later.

Target audience:

This talk is for two audiences: people who enjoy digging into Erlang runtime internals and want to understand what really happens between “start” and “first function call”, and practitioners who simply want a single self-contained executable that launches fast. If you build CLIs, build tooling, CI jobs, or short-lived scripts and care about cold start latency, you will get a practical path to using the new packaging approach without needing to become a VM expert.