@@ -15,9 +15,20 @@ shifts in performance being flagged in a new GitHub issue.
1515installed, as well as Nox (see
1616[ Benchmark environments] ( #benchmark-environments ) ).
1717
18- [ Iris' noxfile] ( ../noxfile.py ) includes a ` benchmarks ` session that provides
19- conveniences for setting up before benchmarking, and can also replicate the
20- automated overnight run locally. See the session docstring for detail.
18+ The benchmark runner ([ bm_runner.py] ( ./bm_runner.py ) ) provides conveniences for
19+ common benchmark setup and run tasks, including replicating the automated
20+ overnight run locally. See ` python bm_runner.py --help ` for detail.
21+
22+ A significant portion of benchmark run time is environment management. Run-time
23+ can be reduced by placing the benchmark environment on the same file system as
24+ your
25+ [ Conda package cache] ( https://conda.io/projects/conda/en/latest/user-guide/configuration/use-condarc.html#specify-pkg-directories ) ,
26+ if it is not already. You can achieve this by either:
27+
28+ - Temporarily reconfiguring ` delegated_env_commands ` and ` delegated_env_parent `
29+ in [ asv.conf.json] ( asv.conf.json ) to reference a location on the same file
30+ system as the Conda package cache.
31+ - Moving your Iris repo to the same file system as the Conda package cache.
2132
2233### Environment variables
2334
@@ -26,8 +37,8 @@ automated overnight run locally. See the session docstring for detail.
2637benchmark scripts.
2738* ` DATA_GEN_PYTHON ` - required - path to a Python executable that can be
2839used to generate benchmark test objects/files; see
29- [ Data generation] ( #data-generation ) . The Nox session sets this automatically,
30- but will defer to any value already set in the shell.
40+ [ Data generation] ( #data-generation ) . The benchmark runner sets this
41+ automatically, but will defer to any value already set in the shell.
3142* ` BENCHMARK_DATA ` - optional - path to a directory for benchmark synthetic
3243test data, which the benchmark scripts will create if it doesn't already
3344exist. Defaults to ` <root>/benchmarks/.data/ ` if not set. Note that some of
@@ -36,7 +47,7 @@ plan accordingly.
3647* ` ON_DEMAND_BENCHMARKS ` - optional - when set (to any value): benchmarks
3748decorated with ` @on_demand_benchmark ` are included in the ASV run. Usually
3849coupled with the ASV ` --bench ` argument to only run the benchmark(s) of
39- interest. Is set during the Nox ` cperf ` and ` sperf ` sessions .
50+ interest. Is set during the benchmark runner ` cperf ` and ` sperf ` sub-commands .
4051
4152## Writing benchmarks
4253
0 commit comments