Zum Inhalt springen

Draft · 10 September 2026 · Infrastructure

Can Kotoba cut infra cost? One measured path, no invented savings

Build wait, CPU wall time, artifact bytes, and JVM-free emit can touch infra cost. This draft ships mechanisms and named numbers only. No $/month claim, no language Release URL, no Kotoba-beats-Rust-or-C on GPU.

Draft for review 2026-09-10. Evidence-led; not a cost-savings guarantee. Philosophy: help someone else finish one more piece of work (他者の達成を助ける).

1. Intro: one decision for the reader

If you want lower infra cost, pick one axis to measure first. Build wait. Steady-state CPU wall time. Artifact byte size. Whether you ship a JVM.

Kotoba has mechanisms that can touch each of those axes. Dollar savings themselves are not measured here. The one decision for you is which axis you will time on your own host.

2. Operator and boundaries

The public operator is Kotoba Labs Inc (https://kotoba-lang.org). Capability bounds and safety gates are separate from cost claims.

The GTM gate for a language Release URL on kotoba-lang/kotoba-lang remains HOLD. The site binding for Kotoba CLI v0.7.0 darwin-arm64 is an implementation release binding. It is not that language Release gate. Do not conflate them.

3. Three mechanism-only axes (GPU only framed)

Speed, denser packing, and a smaller runtime. Those three are mechanism-only.

Build wait: process-cold kotoba compile, especially tiny Wasm, can be fast enough that AI regen loops spend less wall time waiting on toolchains. That is the site thesis: build latency becomes infrastructure throughput when AI regenerates continuously.

Steady-state CPU: Amu native emits sealed machine-code KEXE (aarch64 / x86_64) and is compared to Rust / C / Zig / Go / Swift on narrow native workloads. If qualified wins hold on your host and workload, you may spend fewer CPU-seconds per request.

Artifact size: Wasm and sealed .kexe bytes for small admitted programs can be much smaller than a JVM class plus runtime, or a large JS bundle. That is denser packing on disk, CDN, or edge, and less cold I/O. Local fixture byte sizes are measured below. Dollar density is not.

JVM-free direction: kotoba compile plus amu compile --jvm-free toward Wasm or native without shipping a JVM into prod for those paths. Many bootstrap and tooling paths still use Clojure or nbb.

Capability and fuel bounds: declared call-fuel and function-count admission can fail closed instead of running unbounded work. That is cost control, not automatic savings.

GPU is not the main arena in this draft. Section 8 puts an honest frame on it.

Known program shape: JVM / clj and Clojure-shaped start paths remain common. The intended densification path is kotoba compile plus amu native / Wasm, not "already fully JVM-free everywhere."

4. Measured path 1: small Wasm cold build

On the public site (Apple M4 host, fetched 2026-09-10), Released Kotoba CLI Wasm K=1 process-cold build was 11.75 ms, fastest of the listed toolchains on that host for that size. Build time is not execution speed. The advantage narrows as source grows. The released binary has a correctness ceiling.

Build-scaling observations below are from that public run. On that run the host-load gate failed (load1 2.73). These are observations, not a portable rank.

K=1 process-cold build wall time on the public-site Apple M4 host (fetched 2026-09-10). Fastest of the listed toolchains on that host for that size only. Build time is not execution speed.
Toolchain / Ziel Process-cold (ms)
Released Kotoba CLI Wasm 11.75
Clang native 29.08
rustc Wasm 38.99
rustc native 56.02
javac 171.53
Released CLI
Valid through K=128; invalid artifact at K=129+.
Amu
Builds through K=1023; refuses more than 1024 functions (admission).
Default call-fuel
Traps at K=512 unless raised.
Host-load gate
Failed on this build-scaling run (load1 2.73). Observations, not a portable rank.

Local Linux (kotoba compile, Release CLI v0.7.3, x86_64, nproc=8, 2026-09-04, N=3 wall seconds, all exit 0 / emitted). Means of those three runs only. Not rankings.

Local Linux kotoba compile, Release CLI v0.7.3, x86_64, nproc=8, 2026-09-04. N=3 wall seconds; all exit 0 / emitted. Means of those three runs only. Not rankings.
Fixture Target N=3 wall (s) Bytes
kotoba-code-main wasm 0.778 / 0.152 / 0.160 3848 B
kotoba-code-main web 0.308 / 0.797 / 0.591 62907 B
shell-launcher wasm 0.285 / 0.400 / 0.289 5556 B
shell-launcher web 0.883 / 0.300 / 0.437 68877 B
murakumo-desired wasm 0.349 / 0.144 / 0.156 5453 B
murakumo-desired web 0.256 / 0.256 / 0.279 71427 B

Harness pointers: kotoba-lang/kotoba-lang public-compile / end-to-end / domains; kotoba-lang/amu runtime-multidomain; kotoba-lang/buildbench; gate kotoba-lang/perfgate.

5. Measured path 2: artifact bytes

Wasm thousands of bytes; web tens of thousands. Darwin arm64 amu compile --jvm-free aarch64-macos N=3 kexe bytes r3. Density talk stops at bytes. No $/GB.

Darwin arm64 amu compile --jvm-free aarch64-macos N=3 kexe bytes, revision r3. Density talk stops at bytes. No $/GB.
Fixture kexe bytes (r3)
murakumo-desired 31338
shell-launcher 38755
kotoba-code-main 18994 (verified)

Browser demo precompiled Wasm 344 bytes, SHA-checked, returns 42.

6. Measured path 3: amu native (qualified)

Amu native wins 19 of 30 comparator/workload pairs (perfgate ≥5% + arm-spread separation). Quiet-host gate PASSED 2026-09-07. "Fastest everywhere" withheld (needs all 30). At least 2 pairs unwinnable (identical codegen vs clang/rustc).

Example medians from the qualified native suite. Not a "fastest everywhere" claim (needs all 30 pairs).
Workload Amu (ms) Comparator (ms)
Schmale Arithmetik 6.53 Clang 6.41
Wide-reg 5.80
Loop-call 140.59 Clang 139.84

Local Darwin admit amu run shell-launcher only → 42. Full process wall N=3 cold 19.422 / 17.803 / 16.684 s; warm 17.009 / 16.330 / 14.239 s. Includes Clojure/native-run overhead — not bare kexe / not ALU latency. Admit-path walls include process overhead.

Apple M4 Wasm SIMD kernel: 262147-element float32, 3.66–3.72× vs scalar Wasm in 3 qualified runs. Not GPU vs Rust.

7. Still HOLD

These remain HOLD. Do not convert any number on this page into a language Release URL or a $/month savings claim.

exit 65
Bare amu run / unsigned kexe.
exit 78
Linux Darwin-arm64 kexe-verify uname gate.
Language Release URL
HOLD. kotoba-lang/kotoba-lang releases=0. CLI tags on kotoba-lang/kotoba are not that gate.
Dollar savings
No $/month. Mechanisms and named numbers only.
Named green ports
0274f9f16d0e6660a3b465680d51e22086d23146 / run 34354101771 — verify before retargeting; later green CI does not invent ports policy.

8. GPU honest frame

Typed accelerator KIR emits WGSL / CUDA C / MSL for bounded f32 slice; sealed gpu-artifact. No Cerebras. No HIP/ROCm. CUDA C emit is not NVIDIA product qualification.

ADR-0001: GPUs/NPUs are not current product support. No measured Kotoba greater than Rust or C on Cerebras / NVIDIA / AMD. Prefer CPU/edge densification for readers.

9. One path to try

Reproduce on your host before anyone talks about money. Compare to the site K=1 11.75 ms and the Linux table; note the host-load gate and the K=128 ceiling.

  1. Read harness assumptions (buildbench, perfgate).
  2. Pick one fixture (for example shell-launcher).
  3. kotoba compile --target wasm N≥3; record wall + bytes.
  4. Compare to site K=1 11.75 ms and the Linux table; note the host-load gate and the K=128 ceiling.
  5. Reproduce disagreements; do not convert to $/month yet.

Optional Darwin: amu compile --jvm-free --target aarch64-macos; do not claim Linux cleared exit 78.

10. Close

他者の達成を助ける (help someone else finish one more piece of work). No exaggeration. Hand over one measured path.

Read the harnesses and reproduce the scope