dasLLAMA is an LLM + speech-to-text stack written entirely in daslang and JIT-compiled — no hand-written assembly. Its auto-tuned JIT kernels consistently outperform llama.cpp's hand-written universal kernels, on the CPU path and on Metal alike. llama.cpp has no speech-to-text engine, so Whisper and Parakeet are measured against the dedicated ones instead — whisper.cpp, parakeet, ONNX Runtime, NeMo — and lead most of those rows too. Every number below is a measured pair.
// LLM inference in daslang — JIT, no C++
require dasllama/dasllama
require daslib/jobque_boost
[export]
def main() {
let path = "model.gguf"
var m <- load_model(path, QuantMode.q8)
let ids <- encode(m, "Summarize the results:")
with_job_que() {
setup_dasllama_jobque()
var s = create_session(m)
let sp = SamplingParams()
generate(m, s, ids, sp, 128l) $(_id, p) {
print(p)
return true
}
}
}
Every row is one das configuration and the matched llama.cpp build it is measured against — same model, same machine, same category. A das number never appears without its reference. Filter and sort any column; click a row for the receipt: both command lines, commits, tune state, and auto-probed hardware. pp512 = 512-token prefill, tg128 = 128-token greedy decode, tok/s, higher is better.
-ngl 0. Kernel against kernel.-nopo 1 stops llama.cpp quietly serving “CPU” rows off the GPU.-ngl 99. Which backend ran — Metal, Vulkan — is in the row's receipt.Every kernel, loader and scheduler behind these numbers is daslang — JIT-compiled, no C++ in the hot path. The speed is the language: auto-tuned generic kernels, one codebase from GGUF parsing to Metal dispatch.
llama.cpp has no speech-to-text engine, so every row here is paired with a dedicated one instead — whisper.cpp, parakeet-cli, ONNX Runtime or NeMo. One row per clip per reference: das wall time, the reference's wall time on the same clip, the speedup, and the real-time factor. CPU only, greedy decode; the macOS *-cli tools do get Apple's AMX matrix unit, so this is not scalar-only on their side.
The one audio workload llama.cpp does cover: omni chat models taking audio in, run through llama-mtmd-cli. This is a narrow CPU-only slice — llama.cpp's Conformer/AuT audio encoders don't route through BLAS/AMX on CPU, so the reference spends ~99% of its time in the audio encoder, and das's optimized fp32 encoder comes out well ahead on that path.
Everything below loads from stock GGUF (llama2.c .bin for the toy), auto-detected from metadata, and is verified token-for-token against its reference engine. Weights: F32 / F16 / Q8_0 / Q4_0 / MXFP4 read directly; K-quant files (Q4_K_M / Q5_K_M / Q6_K) run on native K-quant kernels; bf16 audio towers read exactly.