You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Sean McBride 56f32ec44b
refactor: HTTP memstreams (#363)
2 years ago
..
Makefile test: other tests 3 years ago
README.md refactor: Move tests 3 years ago
initial_state.dat refactor: Move tests 3 years ago
one_iteration.dat refactor: Move tests 3 years ago
run.sh test: other tests 3 years ago
spec.json refactor: HTTP memstreams (#363) 2 years ago
three_iterations.dat refactor: Move tests 3 years ago
two_iterations.dat refactor: Move tests 3 years ago

README.md

EKF

Executes TinyEKF as shows by You Chong's GPS example

This test executes multiple runs of three iterations (the output of a previous iteration is refed as input), comparing the binary result against a known memoized result stored in initial_state.dat, one_iteration.dat, two_iterations.dat, and three_iterations.dat.

The rust.sh script stores per-run results to temporary files suffixed with *.res.dat and diff -s because I had trouble using cURL to pass a bash string of binary input.

In order to be compatible with the stdin/stdout model of serverless, the input and output files are binary concatenations of various C structs.

See main() in applications/TinyEKF/extras/c/gps_ekf_fn.c for specifics.

Useful parsing of the log

What is the average execution time of the first iteration? cat log.csv | grep ekf_first_iter | awk -F , '{ sum+=$5 } END{ print sum/NR }'