DEV Community

Susumu Yamazaki
Susumu Yamazaki

Posted on

Pelemay Backend (Aspirations for 2022)

Nx is "Numerical Elixir," which realizes multi-dimensional arrays (tensors) and numerical definitions for Elixir. Nx can have a backend. The default backend is the binary backend written in pure Elixir. EXLA, Elixir client for Google's XLA (Accelerated Linear Algebra), and Torchx, Elixir client for LibTorch (from PyTorch), have each backend. Such a backend can be implemented the behavior defined by Nx.Backend.

We researched and developed Pelemay, a native compiler for Elixir. We made presentations about it at Lonestar ElixirConf 2019 and ElixirConf US 2019. It can compile Elixir code with pipelined Enum.map into native code with SIMD instruction, just in time.

So, we propose to apply the Pelemay technology to Nx, Pelemay Backend: Image description

To be continued...

Top comments (0)