EigenGauntlet is an EigenScript stress application suite for constrained hardware. It is intentionally built as a set of small real workloads rather than synthetic microbenchmarks.
The goal is to expose EigenScript language, runtime, standard library, and
tooling gaps without hiding them behind downstream workarounds. When a workload
needs a primitive EigenScript should own, the issue goes in GAPS.md and gets
fixed at the root.
- EigenScript v0.26.0 (built from source; CI tests against this version)
- No external runtime dependencies for the default smoke suite
Use the local development binary directly:
../EigenScript/src/eigenscript gauntlet.eigs --suite smokeOr use an installed binary:
eigenscript gauntlet.eigs --suite smoketensor- batched neural-layer math, matrix/vector broadcasting, softmaxdataflow- JSON, strings, dictionaries, file I/O, EigenStoreswarm- real-time style entity simulation and spatial queriesswarm-batch- batched spatial queries vianearest_in_range_allconcurrent- threads, channels, non-blocking receiveparser-try_parse,eval, generated source, functions, match, f-stringsmemory- list/dict/tensor churn, closures, arena mark/resetobserver- interrogatives, predicates, report states, unobserved blocksio- stream tensor I/O, buffers, byte reads, tensor save/loadrealtime- frame-budget style fixed-step loop with monotonic timingmodule-scope-eval,load_file, import isolation, module closures
This repo is designed for a 2007 dual-Pentium laptop. Defaults must stay small enough to run quickly on that hardware. Larger modes can exist, but they should be opt-in and named clearly.
# Run all smoke workloads
./tests/run_smoke.sh
# Run each workload separately with timings
./tests/run_each.sh
# Run one workload
../EigenScript/src/eigenscript gauntlet.eigs --suite tensor
# Run a bigger local pass
../EigenScript/src/eigenscript gauntlet.eigs --suite smoke --size 3