GSOC Project : Improving RubyBench

Note, just going to mention this here.

I think the bisecting stuff is very interesting and important, however feel that the most important thing is getting our benchmarks in order.

I feel there is a huge gap around our Rails benchmarks, in particular have a look at say:

https://rubybench.org/rails/rails/commits?result_type=activerecord/mysql2_scope_all_with_default_scope&display_count=200

  • What if this was implemented raw against the mysql gem, how fast would it be? How many objects would be allocated?

  • What if this was implemented in Sequel? How fast would it be? How many objects would be allocated?

I feel we should split off all “database” specs from the Rails umbrella and make the suite of tests compare “raw” to “sequel” to “Active Record”, as it stands it is totally unclear how much performance is left on the table cause there is nothing to compare “Active Record” to.

2 Likes