HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
Frikallo
axiom
C++2026–2026
Frikallo / axiom

axiom

High-performance C++ tensor library with NumPy/PyTorch-like API

2Distinct people
4Mentions
0Explicit recommenders
117GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

High-performance C++ tensor library with NumPy/PyTorch-like API

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by day4 dated mentions

Observed mentions: 2026-02-02 18:20:56 UTC to 2026-02-27 03:48:05 UTC.

0122026-02-02 00:00:00 UTC to 2026-02-03 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 commentsFeb 22026-02-03 00:00:00 UTC to 2026-02-04 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-04 00:00:00 UTC to 2026-02-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-05 00:00:00 UTC to 2026-02-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-06 00:00:00 UTC to 2026-02-07 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2026-02-07 00:00:00 UTC to 2026-02-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-08 00:00:00 UTC to 2026-02-09 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-09 00:00:00 UTC to 2026-02-10 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-10 00:00:00 UTC to 2026-02-11 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-11 00:00:00 UTC to 2026-02-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-12 00:00:00 UTC to 2026-02-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-13 00:00:00 UTC to 2026-02-14 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-14 00:00:00 UTC to 2026-02-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsFeb 142026-02-15 00:00:00 UTC to 2026-02-16 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-16 00:00:00 UTC to 2026-02-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-17 00:00:00 UTC to 2026-02-18 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-18 00:00:00 UTC to 2026-02-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-19 00:00:00 UTC to 2026-02-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-20 00:00:00 UTC to 2026-02-21 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-21 00:00:00 UTC to 2026-02-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-22 00:00:00 UTC to 2026-02-23 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-23 00:00:00 UTC to 2026-02-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-24 00:00:00 UTC to 2026-02-25 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-25 00:00:00 UTC to 2026-02-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-26 00:00:00 UTC to 2026-02-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-02-27 00:00:00 UTC to 2026-02-28 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 commentsFeb 27

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Feb 22026-02-02 00:00:00 UTC2026-02-03 00:00:00 UTC220
Feb 32026-02-03 00:00:00 UTC2026-02-04 00:00:00 UTC000
Feb 42026-02-04 00:00:00 UTC2026-02-05 00:00:00 UTC000
Feb 52026-02-05 00:00:00 UTC2026-02-06 00:00:00 UTC000
Feb 62026-02-06 00:00:00 UTC2026-02-07 00:00:00 UTC110
Feb 72026-02-07 00:00:00 UTC2026-02-08 00:00:00 UTC000
Feb 82026-02-08 00:00:00 UTC2026-02-09 00:00:00 UTC000
Feb 92026-02-09 00:00:00 UTC2026-02-10 00:00:00 UTC000
Feb 102026-02-10 00:00:00 UTC2026-02-11 00:00:00 UTC000
Feb 112026-02-11 00:00:00 UTC2026-02-12 00:00:00 UTC000
Feb 122026-02-12 00:00:00 UTC2026-02-13 00:00:00 UTC000
Feb 132026-02-13 00:00:00 UTC2026-02-14 00:00:00 UTC000
Feb 142026-02-14 00:00:00 UTC2026-02-15 00:00:00 UTC000
Feb 152026-02-15 00:00:00 UTC2026-02-16 00:00:00 UTC000
Feb 162026-02-16 00:00:00 UTC2026-02-17 00:00:00 UTC000
Feb 172026-02-17 00:00:00 UTC2026-02-18 00:00:00 UTC000
Feb 182026-02-18 00:00:00 UTC2026-02-19 00:00:00 UTC000
Feb 192026-02-19 00:00:00 UTC2026-02-20 00:00:00 UTC000
Feb 202026-02-20 00:00:00 UTC2026-02-21 00:00:00 UTC000
Feb 212026-02-21 00:00:00 UTC2026-02-22 00:00:00 UTC000
Feb 222026-02-22 00:00:00 UTC2026-02-23 00:00:00 UTC000
Feb 232026-02-23 00:00:00 UTC2026-02-24 00:00:00 UTC000
Feb 242026-02-24 00:00:00 UTC2026-02-25 00:00:00 UTC000
Feb 252026-02-25 00:00:00 UTC2026-02-26 00:00:00 UTC000
Feb 262026-02-26 00:00:00 UTC2026-02-27 00:00:00 UTC000
Feb 272026-02-27 00:00:00 UTC2026-02-28 00:00:00 UTC101

What Hacker News says

4 sources
I built a C++ inference engine for NVIDIA's Parakeet speech recognition models using Axiom(https://github.com/Frikallo/axiom) my tensor library. What it does: - Runs 7 model families: offline transcription (CTC, RNNT, TDT, TDT-CTC), streaming (EOU, Nemotron), and speaker diarization (Sortformer) - Word-level timestamps - Streaming transcription from microphone input - Speaker diarization detecting up to 4 speakers
In Parakeet.cpp – Parakeet ASR inference in pure C++ with Metal GPU acceleration
noahkay13·Feb 6, 2026Submission

Show HN: Axiom – C++ tensor library with NumPys API, optimized for Apple Silicon

I kept hitting the same wall: prototype something in NumPy or PyTorch, then rewrite it in C++ for edge deployment. The rewrite always took longer than the original work. Eigen's fixed-size matrix API doesn't map to tensor workloads, xtensor is CPU-only with compile-time templated types that produce unreadable errors, and none of them have GPU support on Mac. Worse, Eigen was often slower than the Python version because PyTorch bundles optimized BLAS while Eigen uses its own limited implementation. So I built Axiom to make that rewrite mechanical. The API mirrors NumPy/PyTorch as closely as I could — same method names, broadcasting rules, operator overloading, dynamic shapes, runtime dtypes. Code that looks like this in PyTorch: scores = Q.matmul(K.transpose(-2, -1)) / math.sqrt(64) output = scores.softmax(-1).matmul(V) looks like
Read the rest
this in Axiom: auto scores = Q.matmul(K.transpose(-2, -1)) / std::sqrt(64.0f); auto output = scores.softmax(-1).matmul(V); No mental translation. No debugging subtle API differences. What's in the box (28k LOC): - 100+ operations: arithmetic, reductions, activations (relu, gelu, silu, softmax), pooling, FFT, full LAPACK linear algebra (SVD, QR, Cholesky, eigendecomposition, solvers) - Metal GPU via MPSGraph — all ops run on GPU, not just matmul. Compiled graphs are cached by (shape, dtype) to avoid recompilation - Seamless CPU ↔ GPU: `auto g = tensor.gpu();` — unified memory on Apple Silicon avoids copies entirely - Built-in einops: `tensor.rearrange("b h w c -> b c h w")` - Highway SIMD across architectures (NEON, AVX2, AVX-512, SSE, WASM, RISC-V) - Runtime dtypes via variant (readable errors, not template explosions) - Row-major default, column-major supported via as_f_contiguous() - Works on macOS, Linux, Windows, and WebAssembly Performance on M4 Pro (vs Eigen with OpenBLAS, PyTorch, NumPy): - Matmul 2048×2048: 3,196 GFLOPS (Eigen 2,911 / PyTorch 2,433) - ReLU 4096×4096: 123 GB/s (Eigen 117 / PyTorch 70) - FFT2 2048×2048: 14.9ms (PyTorch 27.6ms / NumPy 63.5ms) To try it: git clone https://github.com/frikallo/axiom.git cd axiom && make release Or add to your CMake project via FetchContent. Example files in examples/. Happy to answer questions about the internals or take feedback on the API.
3 points · Open discussion
noahkay13·Feb 2, 2026Submission

Show HN: Axiom – C++ tensor library with NumPy API and Metal GPU support

I've been building a C++ tensor library that tries to bring the ergonomics of NumPy/PyTorch to native code. The main goals were: - Familiar API (operator overloading, method chaining, same function names) - Actual GPU acceleration via Metal (not just matmul, but all ops) - Cross-platform with SIMD on x86/ARM/RISC-V via xsimd - einops-style rearrange/reduce patterns It started because I wanted NumPy's API but needed to deploy on edge devices without Python. Ended up going deeper than expected (28k LOC+) into BLAS backends, memory views, and GPU kernels. Some things I'm genuinely unsure about and would love feedback on: - Does Axiom actually seem useful? - What features might make you use it? GitHub: https://github.com/frikallo/axiom Happy to answer questions about the implementation.
5 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.