WebAssembly / 128-bit-arithmetic

WebAssembly proposal for 128-bit arithmetic
https://webassembly.github.io/spec/
Other
5 stars 1 forks source link

Evaluate: Benchmarks to compare with/without this proposal #3

Open alexcrichton opened 1 month ago

alexcrichton commented 1 month ago

Original development of this proposal benchmarked the blind-sig benchmark in Sightglass as well as the fibonacci benchmarks from the Rust num-bigint repository.

This issue is intended to serve as a location for others to drop interesting benchmark programs as well so they can be collected to help evaluate this proposal over time. If you've got a benchmark you'd like to see added it would ideally be in C or Rust at this time and is ideally a program that has a means of self-reporting its execution time. High-level ideas are ok to but would require some more work to create a reproducible benchmark.

alexcrichton commented 1 month ago

One area that would be particularly interesting to have benchmarks for are programs that require good performance of overflowing/saturating/checked arithmetic which isn't related to 128-bit. This would help stress the need for either 128-bit operations or overflow-flag-returning-instructions.

alexcrichton commented 1 month ago

A suggestion here is that -ftrapv can inject checked arithmetic for C and UBSan might rely on this heavily. A naive benchmark didn't show much performance difference relative to native without this proposal, however.