sirena 0.1.0

Digital audio signal processing primitives.
Documentation
# Development

This project utilizes [cargo make](https://github.com/sagiegurari/cargo-make).
Start by installing it:

```sh
cargo install --force cargo-make
```

## Formatting, linting, unit tests

Run formatting, linter and unit tests:

```sh
cargo make dev

# run slow tests too
cargo make dev-slow
```

Read the Makefile.toml to learn more.

## Benchmark

If a package has a benchmark defined, `cd` into its directory and run it via:

``` sh
cargo bench --bench bench
```

Use the benchmark for profiling:

``` sh
rm -f target/release/deps/bench-*
rm -f callgrind.out.*
RUSTFLAGS="-g" cargo bench --bench bench --no-run
BENCH=$(find target/release/deps -type f -executable -name 'bench-*')
TEST=log_taper
valgrind \
    --tool=callgrind \
    --dump-instr=yes \
    --collect-jumps=yes \
    --simulate-cache=yes \
    ${BENCH} --bench --profile-time 10 ${TEST}
kcachegrind callgrind.out.*
```