ignis-numerics

GPU numerical computing for Ruby (nvmath-style), on the ignis foundation. The lineage this project began from — an nvmath-python port — revived as a standalone gem.

Dense/sparse linear algebra, FFT (cuFFT), RNG (cuRAND), solvers & decompositions (cuSOLVER), and Einstein-notation tensor contraction (cuTENSOR).

require "ignis-numerics"
a = Ignis::NvArray.from_array([[1.0, 2.0], [3.0, 4.0]], device: 0)
Ignis.matmul(a, a).to_a          # GPU GEMM
Ignis.fft(signal)                # cuFFT
Ignis.solve(matrix, rhs)         # cuSOLVER

Requires an NVIDIA GPU + CUDA runtime (cuFFT/cuRAND/cuSOLVER/cuSPARSE/cuTENSOR). MIT.