STAR
Cal STAR — firmware, DAQ server, and engine design
Loading...
Searching...
No Matches
bench_layer1_numba Namespace Reference

Classes

class  _C

Functions

 _install_instrumentation ()
 _one (cfg_path, max_it, restarts, seed)
 _run_condition (mode, cfg_path, max_it, restarts, seed)
 _pc (mode, runs)
 main ()

Variables

 ROOT = Path(__file__).resolve().parents[1]
 C = _C(); C.reset()

Detailed Description

Two-way Layer-1 optimizer benchmark: plain Python vs the numba accelerator.

Serial in-process, one subprocess per condition, warmup discarded. "python" sets
ED_ACCEL=off so every candidate takes the authoritative Python path; "numba" runs
the accelerator. The C backend this once compared against was deleted after the
numba path overtook it.

Timing here is noisy enough that a single run is not a measurement: identical work
(seed pinned) has varied by 40% on a loaded box. Hence --reps and min/median.

Run: .venv/bin/python scripts/bench_layer1_numba.py --max-iterations 20 --reps 5

Function Documentation

◆ _install_instrumentation()

bench_layer1_numba._install_instrumentation ( )
protected
Count accelerated evaluates and Python fallbacks.

Definition at line 29 of file bench_layer1_numba.py.

Referenced by _run_condition().

◆ _one()

bench_layer1_numba._one ( cfg_path,
max_it,
restarts,
seed )
protected

Definition at line 46 of file bench_layer1_numba.py.

Referenced by _run_condition().

◆ _pc()

bench_layer1_numba._pc ( mode,
runs )
protected
Summarise N repetitions of one mode.

A single wall time is not a measurement here: on a loaded box the SAME work
(seed pinned, byte-identical candidate trajectory) was observed to vary
6.81s..11.59s, a 1.7x spread that dwarfs the C-vs-Numba difference. Report
min (least interference) and median instead.

Definition at line 85 of file bench_layer1_numba.py.

Referenced by main().

◆ _run_condition()

bench_layer1_numba._run_condition ( mode,
cfg_path,
max_it,
restarts,
seed )
protected

Definition at line 70 of file bench_layer1_numba.py.

References _install_instrumentation(), and _one().

Referenced by main().

◆ main()

bench_layer1_numba.main ( )

Definition at line 112 of file bench_layer1_numba.py.

References _pc(), _run_condition(), and main().

Referenced by main().

Variable Documentation

◆ C

bench_layer1_numba.C = _C(); C.reset()

Definition at line 26 of file bench_layer1_numba.py.

◆ ROOT

bench_layer1_numba.ROOT = Path(__file__).resolve().parents[1]

Definition at line 19 of file bench_layer1_numba.py.