
BEAM There, Done That Numerical Elixir and Machine Learning with Paulo Valente
10 snips
Mar 13, 2026 Paulo Valente, maintainer of NX and Elixir gRPC library and platform engineer at TV Labs with eight years of Elixir experience. He walks through the NX ecosystem and how defn/backends compile to CPU, GPU, or WebAssembly. They compare when to use NX versus Python, explore zero-copy Python and GPU interop, and outline NX 1.0 goals, versioning, and getting started resources.
AI Snips
Chapters
Books
Transcript
Episode notes
NX Ecosystem Layers And Key Libraries
- NX is a layered numerical ecosystem: core NX defines defn/deftransform, backends (EXLA, EMLX, TorchX, NXEigen) provide CPU/GPU acceleration, and higher-level libs (Axon, Bumblebee, Scholar, eVision) sit on top.
- Paulo highlighted concrete backends: EMLX for Apple GPUs, EXLA/TorchX for CUDA, NXEigen for lightweight CPU embedding, and Bumblebee for Hugging Face model loading.
Train In Python Deploy With NX
- Use NX when Elixir already fits your system and you need to add ML inference or numerical work within the BEAM process space.
- Train models in Python for exploration, then deploy with Axon/Bumblebee or port NumPy/PyTorch code to NX for runtime on the BEAM.
TV Labs Uses NX For Real Time Video Work
- Paulo uses NX in production at TV Labs for real-time video pre-stream calibrations and internal data analysis tooling.
- He mentioned porting Python tools to NX after required features landed in NX 0.11 for better integration and performance.



