Developer Documentation
This documentation covers how to:
- Run the projects test suite
- Run the projets benchmarks
- Update and build documentation of ExaPowerIO
Test suite
ExaPowerIO's test suite can be run with the following command:
julia --project=. -e 'using Pkg; Pkg.test("ExaPowerIO")'
The tests compare output from parsing with PowerModels.jl. We realize this is suboptimal, and would encourage PR's changing this.
Benchmarks
ExaPowerIO's benchmarking suite can be run with the following command:
julia --project=benchmark benchmark/runbenchmarks.jl
Additionally, there are three available flags which can be passed to the benchmarking script:
--compare
can be passed to output a comparison with PowerModels.jl's parser--intermediate
can be passed to output the timing of the two stages of the parser (text -> struct, struct -> named tuple if applicable)--num-samples <k>
or-n <k>
can be passed to set the number of samples taken of each case in the benchmark. The default value is 10.
Documentation
ExaPowerIO uses Documenter.jl for its documentation. To build and deploy the documentation locally:
cd docs
julia --project -e 'include("make.jl"); using LiveServer; serve(dir="build")'
The documentation should then be visible at localhost:8000.