I'm Open for Work. I'd love to help you bring AI into your organization.
Back to all articles

What is FLAME?

31 January 2025

Backstory

Yesterday, I had an job interview with a couple people that weren’t very familiar with Elixir. During the discussion, I brought up FLAME for scaling GPU servers. After the interview, I decided to send some key links about FLAME. My search for FLAME protocol returned a lot of unrelated information. However, I just tried a different google search, FLAME serverless architecture pattern. This was a more successful search.

Since I had trouble with the original Google search and I knew what I was looking for, I wanted to make it easier for others to find useful information about FLAME.

Key description of FLAME (from code repository)

Imagine if we could auto scale simply by wrapping any existing app code in a function and have that block of code run in a temporary copy of the app.

Enter the FLAME pattern.

FLAME - Fleeting Lambda Application for Modular Execution

With FLAME, you treat your entire application as a lambda, where modular parts can be executed on short-lived infrastructure.

Key links that I identified

Blog Posts

  • https://fly.io/blog/rethinking-serverless-with-flame/
  • https://dockyard.com/blog/2024/02/27/next-gen-machine-learning-with-flame-and-nx-beyond-serverless

Intro to FLAME video

  • https://www.youtube.com/watch?v=l1xt_rkWdic

ElixirConf video - demonstrating scaling with non-ML and grid search ML examples

Note: there were some internet challenges at the conference that impacted the demo

  • https://www.youtube.com/watch?v=4qoHPh0obv0

Another Christopher Grainger video

  • https://www.youtube.com/watch?v=HP86Svk4hzI

Code:

  • https://github.com/phoenixframework/flame
  • https://github.com/mruoss/flame_k8s_backend
  • https://github.com/probably-not/flame-ec2