TINYLOOP_LOG_LEVEL | 0 | 1 | 2 | 0 silences output; 1 (default) prints model header + VRAM; 2 adds detail. |
TINYLOOP_CUDA_PROFILE | 1 | Print per-phase CUDA event timings during benchmark. |
TINYLOOP_DISABLE_KV_CACHE | 1 | Force uncached generation. ~10× slower; parity testing only. |
TINYLOOP_DISABLE_WARMUP | 1 | Skip cache-warmup call at end of load_model. |
TINYLOOP_DISABLE_MMAP | 1 | Disable mmap model loading. Fall back to chunked ifstream. |
TINYLOOP_DISABLE_FLASH2_PREFILL | 1 | Disable tiled prefill attention. |
TINYLOOP_DISABLE_CUBLAS_FP16 | 1 | Disable cuBLAS FP16 GEMM path. |
TINYLOOP_USE_CUDNN_SDPA | 1 | Route prefill through cuDNN SDPA (FA-3 on Hopper, FA-2 on Ampere). |
TINYLOOP_PREFILL_CHUNK | N | Force chunked prefill at N-token segments. |
TINYLOOP_TOKEN_EXIT | N | Token-stable early-exit in scoring. |
TINYLOOP_TOKEN_EXIT_VERBOSE | 1 | Print early-exit diagnostics. |
TINYLOOP_CUDA_POOL | 1 | Use CUDA memory pool (cudaMemPool) for allocations instead of bare cudaMalloc. |
TINYLOOP_TOKENIZER_DIR | directory | Path to GPT-2 BPE vocab.json + merges.txt. |
TINYLOOP_FP16_RESIDUAL | 1 | Use FP16 residual stream instead of FP32. Halves buf.main bandwidth. Opt-in, verified on H100. |