Merge pull request #40 from pragma-org/turbo-fine-grained
Allow fine-grained time analysis of turbo benches.
Allow fine-grained time analysis of turbo benches.
Signed-off-by: KtorZ <[email protected]>
Signed-off-by: rvcas <[email protected]>
- Add `LedgerValue` type with insert, lookup, union, contains, scale, valueData, unValueData - 9 new builtins: `insertCoin`, `lookupCoin`, `unionValue`, `valueContains`, `valueData`, `unValueData`, `scaleValue`, `bls12_381_G1_multiScalarMul`, `bls12_381_G2_multiScalarMul` - Case on constants (bool, unit, integer, list, pair) - Flat encode/decode for Value (tag 13) - Proper `ValueError` error types - Fix `listToArray` to one-argument cost model - Add `V` type param to `Machine` to avoid repeating `V: Eval<'a>` on every method Signed-off-by: rvcas <[email protected]>
Instead of re-running the same benches over and over for each sample, we bench over the samples directly. This allows vastly reducing the benchmarking time, and also, give us a better measure to look at over time -> those benchmarks are really meant to act as regression tests.
Nightly bechmarks
- Avoid using macros, and leverage the existing bench filters instead - Use one arena per bench function, instead of re-creating one per bench - Include the arena's reset as part of the measurement - Allow to dynamically configure the number of groups Closes #35 Signed-off-by: KtorZ <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
Signed-off-by: Jonathan Lim <[email protected]>
one more place alloc_integer is needed
Signed-off-by: Jacob Finkelman <[email protected]>
Make sure integers get dropped by a list to be freed