BigIntBench

# Caio Lima (6 days ago)

I'm starting working to fix JIT support of BigInt in some operations we already have upstream. In such case, I'm sending (bugs.webkit.org/show_bug.cgi?id=186177) to support BigInt speculation into ValueAdd node. As I want to know if BigInt speculation represents some performance improvement, I'm also proposing a new benchmark suite called BigIntBench. The idea right now is to enable us to write microbenchmarks while working into JIT fixes. The main reason behind that is due the practicality of enabling "--useBigInt=true" flags for tests in this suite. The big plan is to move all microbenchmarks to "JSTests/microbenchmarks" and then add relevant tests to evaluate how fast JSC can manipulate BigInts. IIRC, Robin Morisset mentioned about introducing some benchmarks to evaluate BigInt implementation sometime ago.

What do you think about that? Does it make sense?

Contact us to advertise here
# Saam Barati (4 days ago)

On Oct 6, 2018, at 7:30 AM, Caio Lima <ticaiolima at gmail.com> wrote:

Hi all.

I'm starting working to fix JIT support of BigInt in some operations we already have upstream. In such case, I'm sending (bugs.webkit.org/show_bug.cgi?id=186177) to support BigInt speculation into ValueAdd node. As I want to know if BigInt speculation represents some performance improvement, I'm also proposing a new benchmark suite called BigIntBench. The idea right now is to enable us to write microbenchmarks while working into JIT fixes. The main reason behind that is due the practicality of enabling "--useBigInt=true" flags for tests in this suite. The big plan is to move all microbenchmarks to "JSTests/microbenchmarks" and then add relevant tests to evaluate how fast JSC can manipulate BigInts. IIRC, Robin Morisset mentioned about introducing some benchmarks to evaluate BigInt implementation sometime ago.

What do you think about that? Does it make sense?

I think it makes a lot of sense to start using benchmarks to drive performance improvements in our BigInt implementation.

It's probably good to use both microbenchmarks and macro benchmarks to do this. I definitely agree it's worth writing microbenchmarks to show that changes are good for perf. But it's probably worth converting some preexisting benchmarks to use BigInts and measure performance on that as well. Some ideas could be taking some of the math-heavy benchmarks from JetStream/Kraken as a starting point.

# Caio Lima (2 days ago)

Em seg, 8 de out de 2018 às 02:41, Saam Barati <sbarati at apple.com> escreveu: >

Hi Caio,

On Oct 6, 2018, at 7:30 AM, Caio Lima <ticaiolima at gmail.com> wrote:

Hi all.

I'm starting working to fix JIT support of BigInt in some operations we already have upstream. In such case, I'm sending (bugs.webkit.org/show_bug.cgi?id=186177) to support BigInt speculation into ValueAdd node. As I want to know if BigInt speculation represents some performance improvement, I'm also proposing a new benchmark suite called BigIntBench. The idea right now is to enable us to write microbenchmarks while working into JIT fixes. The main reason behind that is due the practicality of enabling "--useBigInt=true" flags for tests in this suite. The big plan is to move all microbenchmarks to "JSTests/microbenchmarks" and then add relevant tests to evaluate how fast JSC can manipulate BigInts. IIRC, Robin Morisset mentioned about introducing some benchmarks to evaluate BigInt implementation sometime ago.

What do you think about that? Does it make sense? I think it makes a lot of sense to start using benchmarks to drive performance improvements in our BigInt implementation.

It's probably good to use both microbenchmarks and macro benchmarks to do this. I definitely agree it's worth writing microbenchmarks to show that changes are good for perf. But it's probably worth converting some preexisting benchmarks to use BigInts and measure performance on that as well. Some ideas could be taking some of the math-heavy benchmarks from JetStream/Kraken as a starting point.

This sounds a good idea. I'll also do that as soon as we have support to all operations.

Want more features?

Request early access to our private beta of readable email premium.