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 de5ee9af53
chore: Apply shfmt to shell scripts
4 years ago
..
.gitignore test: ekf by_iter 4 years ago
README.md feat: log resolution experiment data 4 years ago
debug.sh chore: Apply shfmt to shell scripts 4 years ago
initial_state.dat test: ekf by_iter 4 years ago
one_iteration.dat test: ekf by_iter 4 years ago
run.sh chore: Apply shfmt to shell scripts 4 years ago
spec.json chore: update tests to handle stricter validation 4 years ago
three_iterations.dat test: ekf by_iter 4 years ago
two_iterations.dat test: ekf by_iter 4 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 runtime/tests/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 }'