Skip to content
The verified GPU optimization platform

Cut your GPU bill without breaking your models.

GPUs are the biggest line item in your AI budget — and most "speedups" are unproven or quietly wrong. Kernalin makes your models run faster on the hardware you already own, and proves every gain is real. Fewer GPUs for the same work, with outputs checked against your reference. A number you can put in front of your board.

20–40% target GPU spend reduction
Nothing ships unless it passes
Your existing fleet
Works with CUDATritonPyTorchONNX
kernalin · verdict feed live
candidate verdict
  • attn_v3.cu claims −51%
    max never subtracted · overflow hazard
    REFUTED
  • gemv_tiled.cu claims −6%
    within this GPU’s noise floor
    EQUIVALENT
  • softmax_fast.py claims −44%
    ignores its input · reward-hack
    REFUTED
  • rope_apply.cu claims −39%
    wrong pairing · invisible at pos 0
    REFUTED
  • flash_fwd.cu claims −32.7%
    correctness-clean · credibly faster
    VERIFIED
1 of 5 survived the gate
The number you can ship
1.91ms
−32.7% · verified
Why this matters

Your GPU budget leaks in two places at once.

If you run AI in production, GPUs are one of your biggest bills — and two silent problems keep it higher than it should be.

Leak 01 · wasted compute

You pay for speed you never get

Most AI models run far below what your GPUs can actually do. That gap is real money — so teams buy more hardware to compensate instead of using what they already own.

3.48× verified speedup Kernalin found on one real H100 kernel
Leak 02 · unproven fixes

And you can’t trust the fixes

The usual way to go faster is to let an AI rewrite your model. It often ships something subtly wrong — a quiet drop in quality you only discover in production, if at all.

11 / 16 bug classes a one-token test cannot see in attention, RoPE and KV-cache code

Kernalin closes both — faster models, proven correct, on the fleet you already own.

One kernel, end to end

Watch a single kernel travel the whole pipeline.

Upload, profile, diagnose, optimize, verify, benchmark, ship — the same engine the CLI and CI gate run, animated. Two faster-looking variants get rejected at the verify step; only the proven winner reaches the merge.
kernalin · live pipeline running
  1. Upload
  2. Profile
  3. Diagnose
  4. Optimize
  5. Verify
  6. Benchmark
  7. Ship

1 · Upload. Workload accepted and statically scanned — nothing is executed.

softmax_kernel.py
4.2 KB · Triton · 1 @triton.jit kernel
clean
✓no banned imports✓no unsafe pickle✓metadata extracted
softmax_kernel.py baseline 2.84 ms · optimizing
The moat

Anyone can make a model faster. Almost no one can prove it still works.

That gap is the whole company. Every proposed speedup runs a gauntlet of 7 checks — and only the ones that are correct, honest, and genuinely faster ever make it out.

Candidates in
0
every rewrite the AI proposes
Rejected by the gauntlet
0
wrong, cheating, or within noise
Verified out
0
the only one you'd ship

Illustrative counts. In our H100 run, 1 of 4 Claude rewrites was kept; 3 were correct but not faster.

The gauntlet · 7 checks, in order idle
  1. 01

    Smoke test

    queued

    Does the candidate run and produce output at all?

  2. 02

    Shape sweep

    queued

    Tall, wide, deep-K, vocab, and LLM shapes — not just the demo case.

  3. 03

    Adversarial inputs

    queued

    Distribution-matched fuzzing and input transforms.

  4. 04

    Determinism

    queued

    Bitwise-identical output across repeated runs.

  5. 05

    Edge cases

    queued

    Non-power-of-two and boundary shapes (1023, 4097, 50257).

  6. 06

    Anti-cheat

    queued

    Input-differential + op-coverage: no dropped ops, no ignored inputs.

  7. 07

    Statistical benchmark

    queued

    Bayesian ROPE verdict over a bootstrap posterior vs. the noise floor.

Verified speedup

Correct · not gaming the benchmark · genuinely faster

1.91ms
−32.7% vs baseline

One number ships only if it's correct, honest, and genuinely faster. Everything else is stopped before it ever reaches you.

The catch

Let an AI speed up your model, and it will cheat to win.

An AI rewriter is rewarded for looking faster — not for being right. Left unchecked, that's exactly what it does. Three of the most common ways:

It skips the work

Drops a step your model actually needs. Fast — and wrong.

It fakes the answer

Hands back a memorized result instead of computing one.

It games the test

Looks faster only on the one example you happened to measure.

You'd never know from the benchmark — it says "faster" either way. So most tools just ship the number. Kernalin refuses to, until it's proven real.

Typical AI optimizer

Unproven
1 Generate
2 Benchmark
3 Ship "48% faster" could be wrong

A headline number with nothing behind it. If the kernel dropped an op, ignored an input, or memorized the reference output, you ship a bug at speed.

Kernalin

Verified
Generate
Correctness gate
Input-differential
Op-coverage
Statistical benchmark
Verified speedup deserves to exist

Every speedup survives correctness, anti-cheat, and statistical checks before it counts. The number you see is the number you can ship.

The blind spot

Most checks pass the bug.
We measured exactly which ones.

A single demo-case probe is structurally blind: softmax over one element is 1.0, a rotation at position 0 is the identity, an address at pos 0 is just the base pointer. So a broken kernel can be provably wrong and still green. Kernalin's megakernel research verifies the structure instead, at the PTX level — and refutes all 14 known-bad PTX fixtures in its test suite. This is a research preview: it covers hand-written megakernel instructions, not every kernel you upload.
ATTENTION_TILE
5 / 6
bug classes invisible to a probe
ROPE
3 / 5
bug classes invisible to a probe
KV_APPEND
3 / 5
bug classes invisible to a probe

Ratios come from the engine's bug-class tables and the PTX fixtures that ship with it.

kernalin · blind-spot demo auto
Kernel under test ATTENTION_TILE flash_attn_fwd.cu

Injected bug: max never subtracted from the exponent

A single demo-case probe

how most tools check
PASS
output matches on the demo case

With kv_len = 1, softmax over one element is exactly 1.0 — the output is v₀ regardless of the entire score path.

Kernalin · structural verification

how we check
REFUTED
ptx-symbolic · bounded-recurrence

A structural check sees the missing subtraction immediately — it doesn't need an input that happens to trigger the overflow.

Demo probe passes
0 / 14 bugs
Kernalin refutes
14 / 14 bugs
For your engineers

The depth behind the guarantee.

Founders can stop here — the promise is simple: faster models, proven correct. What follows is for the people who'll pressure-test it: exactly how Kernalin profiles, optimizes, benchmarks, and gates every change.

The platform

One platform for the entire GPU optimization lifecycle.

From workload intake through profiling, optimization, benchmarking, and regression protection on every PR and schedule — with verification woven through every layer.
GPU profiling

See exactly where your GPU time is going.

Capture execution time and per-op profiles on any GPU, plus occupancy, memory throughput and tensor-core utilization where the host allows Nsight counter access (bare metal or your own GPUs; many cloud pods block it). Every run is stored as an immutable, browsable history. Nothing is estimated: a metric that wasn't captured is reported as absent, never faked.
Execution timeOccupancyMemory throughputTensor-core utilRun history
profiling · llama-decode · session #204 ● live
Kernel timeline ranked by device time
flash_attn_fwd compute 1.42 ms
rmsnorm memory 0.68 ms
rope_apply memory 0.41 ms
silu_mul memory 0.33 ms
kv_gather latency 0.21 ms
SM occupancy
78%
DRAM throughput
84%
Tensor-core util
61%
L2 hit rate
42%
Bottleneck: memory-bound

Low L2 reuse on rmsnorm — recommend shared-memory tiling + operator fusion.

rnx memory · gemm_fwd · 7 dimensions
Reserved VRAM10.0 GB
allocated 47% stranded 30% free 23%
Fragmentation
30% of reserved VRAM stranded
HIGH
Uncoalesced access
18% bytes-per-sector efficiency
HIGH
Excessive allocations
5,000 allocs / iteration
HIGH
Cache locality
L2 hit rate 22%
HIGH
DRAM bandwidth
88% SOL — streaming
MODERATE
Bank conflicts
20% wavefront replays
MODERATE
Register spilling
5,000 local sectors
MODERATE
Top action

PYTORCH_CUDA_ALLOC_CONF=expandable_segments:True — reclaim 2.79 GB stranded in split blocks.

Memory bottleneck analysis

Seven ways VRAM wastes your money — found, with fixes.

Kernalin diagnoses fragmentation, uncoalesced access, excessive allocations, poor cache locality, bandwidth limits, bank conflicts, and register spilling — each with a concrete, quantified recommendation and a prioritized top action. Fragmentation and allocation churn work from PyTorch memory stats on any GPU; the access-pattern dimensions need hardware counters.
AI optimization copilot

An AI copilot built for GPU performance — not chat.

It reads profiler telemetry, forms optimization hypotheses, generates kernel variants with Claude, benchmarks them, and verifies every one before ranking the best. You get the winning implementation and a plain-English explanation of the change.
optimization copilot · softmax.py
variant 3 · triton kept
@triton.jit
def softmax(x_ptr, y_ptr, n):
-  m = tl.max(x, 0)
-  e = tl.exp(x - m)
+  m = tl.max(x, 0, keep_dims=True)
+  e = tl.exp(x - m)   # fused, online
+  s = tl.sum(e, 0, keep_dims=True)
   tl.store(y_ptr, e / s)
Why this change

Online softmax fuses the max/exp/sum reduction into one pass, cutting a full DRAM round-trip. Grounded in the profiler's memory-bound diagnosis.

1 Workload
2 Profiler telemetry
3 Hypotheses
4 Kernel variants
5 Benchmark
6 Verification
7 Best verified impl 1.49×
kernalin · rope verdict 0 resamples
Headline reading
−32.7%
Honest verdict
Credibly faster
0.5× 0.75× 1.0× baseline 1.3×

99.4% of the posterior mass sits below the ROPE — convincingly beyond what this GPU's jitter could fake. This one earns the number.

Benchmarking

Stop trusting single benchmark numbers.

Kernalin measures a full latency distribution and returns a Bayesian ROPE verdict — credibly faster, equivalent, or regressed — against a per-GPU noise floor. Not "faster or slower" and a shrug.
Cost intelligence

Performance is only half the equation.

Turn efficiency findings into dollars: utilization, idle cost, inference cost, and cost-per-token — with savings insights leadership can act on. In preview.
cost intelligence · illustrative
Current GPU spend
$48,200
per month
Optimization
−$11,840
projected reduction
Projected savings
24.6%
of monthly GPU cost
Effective utilizationafter Kernalin
was 52% → 76%
GPU utilization → Workload efficiency → Inference cost → Cost per token → Potential savings

Illustrative UI. Figures are examples, not customer claims.

CI/CD gate

Your benchmark shouldn't be able to lie to you.

A GitHub Action runs the full verification + regression gate on every pull request and posts an auditable metric-diff comment. Fail the build on regressions — automatically.
github.com · pull/482 · checks
Kernalin Performance Gate bot
Baseline
2.84 ms
Current
1.91 ms
Change
−32.7%
Correctness PASS
Anti-cheat PASS
Regression PASS
Verdict Pass · merge allowed
Autonomous agents

Optimization that keeps running on a schedule and on every PR.

Three engineering agents operate on your GPU workloads as one pipeline — finding opportunities, testing variants, and watching for regressions on scheduled benchmark runs and pull requests.
Agent

Optimization Agent

Consumes profiling telemetry, generates optimization hypotheses, and scores confidence.

outputs ranked recommendations
Agent

Benchmark Agent

Runs multiple workload variants, compares results, and selects the fastest implementation.

outputs verified winner
Agent

Regression Agent

Compares baseline metrics, detects anomalies, and triggers proactive notifications.

outputs early warning
telemetry optimize benchmark verify verified speedup
Under the hood

A pipeline engineered to be trusted.

Contracts-first, sandboxed, and anti-reward-hacking by construction — from intake to report.
01
Intake
Accept & statically scan
02
Verify
5-stage correctness gate
03
Measure
Controlled timing
04
Decide
Bayesian ROPE verdict
05
Anti-cheat
Input-differential + op-coverage
06
Optimize
LLM Coder / Judge loop
07
Gate
Tiered CI regression gate
08
Report
Auditable run-log
Contracts-first architecture Sandboxed, network-isolated execution Anti-reward-hacking by construction Immutable audit trails RL-ready trajectory logging Proven end to end on an H100
How it works

From workload to verified speedup.

Seven steps, one guarantee: the number you ship is the number you can trust.
  1. 1

    Upload workload

    Drop in a Triton, PyTorch, CUDA, or ONNX workload. Kernalin statically checks it — nothing runs on intake.

  2. 2

    Profile

    Capture timing and op profiles (plus hardware counters where the host allows) into an immutable run history.

  3. 3

    Identify bottleneck

    The memory analyzer pinpoints fragmentation, uncoalesced access, cache misses, spills, and more.

  4. 4

    Generate optimization

    The AI copilot proposes kernel variants, grounded in the profiler diagnosis and a technique playbook.

  5. 5

    Verify correctness

    Every variant runs the 5-stage gate plus anti-cheat — reward-hacks are rejected here.

  6. 6

    Benchmark

    A Bayesian ROPE verdict decides credibly faster / equivalent / regressed against the noise floor.

  7. 7

    Deploy / gate

    Ship the verified winner, or block the regression in CI. The number you see is the number you keep.

Who it's for

Built for the people who own GPU performance.

faster, safely

CUDA & kernel engineers

Optimize faster without ever sacrificing correctness. An expert co-pilot that never ships a wrong "optimization."

better inference

ML / AI engineers

Improve inference latency and throughput without becoming a GPU-assembly expert.

fleet-wide guardrails

Platform & infrastructure teams

Protect performance across the fleet with regression gates and continuous verification.

provable ROI

CTOs & engineering leaders

Control GPU spend and prove production performance with an auditable trail behind every number.

For the people writing the checks

Built for teams betting real money on GPUs.

If GPUs are a seven-figure line on your P&L, "trust me, it's faster" isn't good enough. Kernalin turns optimization into something you can measure, verify, and defend — to your engineers, your board, and your investors alike.

CU
CUDA ●
C++ kernels (optimize: preview)
Tr
Triton ●
@triton.jit kernels
Py
PyTorch ●
Modules & subgraphs
ON
ONNX ●
Intake + benchmark
Te
TensorRT ●
Benchmark runtime
ON
ONNX Runtime ●
Benchmark runtime
Gi
GitHub ●
PR gate & Actions
VS
VS Code ●
Editor extension (preview)
20–40%
target reduction in GPU spend
3.48×
verified speedup on a real H100 kernel, written by Claude
7
checks before any speedup counts
4
benchmark runtimes: PyTorch, torch.compile, ONNX Runtime, TensorRT
Early access is open

Optimize with AI. Prove it with Kernalin.

Join the early-access program and bring verification-first optimization to your GPU workloads.