Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Molinillo test suite order of magnitude slower than MRI #1415

Closed
segiddins opened this issue Aug 30, 2018 · 12 comments
Closed

Molinillo test suite order of magnitude slower than MRI #1415

segiddins opened this issue Aug 30, 2018 · 12 comments
Milestone

Comments

@segiddins
Copy link

Steps to reproduce:

git clone --recursive https://github.com/CocoaPods/Molinillo.git
cd Molinillo
rake bootstrap
bundle exec rspec

Running the specs takes ~5 seconds on MRI 2.5.1 on my machine, whereas with truffleruby it took 4.5 minutes. (But they all pass 🎆)

@chrisseaton
Copy link
Collaborator

Thanks very much for the report. Passing is great. Cold code (which is often specs) can be a bit slower than MRI on startup, but we will investigate what is going on here.

@dentarg
Copy link

dentarg commented Feb 9, 2020

Same thing for Addressable:

(Then there's the bundler issue adding another 4-5 minutes where ruby does it in ~4 seconds 😄)

@eregon
Copy link
Member

eregon commented Feb 9, 2020

@dentarg Thanks for the report.
It might be worth trying with https://github.com/ruby/setup-ruby + truffleruby-head to see if that helps. I think it could help quite a bit for the Bundler time.

The 4 seconds for bundle install on MRI is not really comparable, because that used a Bundler cache for most gems.

For the specs:

Finished in 43.68 seconds (files took 15.92 seconds to load)

That's a very long time to load, there is probably something going wrong there, we should investigate.
And even then that doesn't amount to 80s reported by TravisCI, maybe the code is loaded once outside of specs too?

@dentarg
Copy link

dentarg commented Feb 9, 2020

It might be worth trying with https://github.com/ruby/setup-ruby + truffleruby-head to see if that helps. I think it could help quite a bit for the Bundler time.

Yes, around 1m instead of 5m: https://github.com/dentarg/addressable/runs/434731081?check_suite_focus=true

@dentarg
Copy link

dentarg commented Feb 9, 2020

truffleruby-head

Finished in 33.31 seconds (files took 8.49 seconds to load)

ruby 2.6.5

Finished in 0.97906 seconds (files took 0.2932 seconds to load)

@eregon
Copy link
Member

eregon commented Feb 9, 2020

@dentarg Thank you for trying with GitHub Actions and truffleruby-head, these numbers look significantly better.

We should still take a look at loading time and why those tests are much slower on TruffleRuby.

@jaimerave
Copy link

I just found this issue while trying to add support for Truffleruby in Rubocop (rubocop/rubocop#8602). bundle exec rspec takes 1 minute 36.75 seconds under MRI 2.6.6 to run on my local machine while with Truffleruby it takes 61 minutes.

@jaimerave
Copy link

Rubocop tests suit running with the Github action for truffleruby-head takes one and a half hour to finish https://github.com/rubocop-hq/rubocop/pull/8602/checks?check_run_id=1037142103

@bjfish
Copy link
Contributor

bjfish commented Aug 27, 2020

@jaimerave I've opened a new issue for this: #2081

@gogainda
Copy link
Contributor

gogainda commented Nov 25, 2020

@segiddins on my machine now it runs in 40 sec, could you retest it, please?
There were some improvements done on performance side, so looks like it may not be an issue anymore

Finished in 38.49 seconds (files took 2.22 seconds to load)

@gogainda
Copy link
Contributor

gogainda commented Mar 6, 2021

Latest update:

Finished in 10.99 seconds (files took 1.63 seconds to load)

@eregon
Copy link
Member

eregon commented Mar 8, 2021

@gogainda Thanks for the update, that looks pretty close to CRuby, so I think we can close this (most likely MultiTier by default helps).

@eregon eregon closed this as completed Mar 8, 2021
@eregon eregon added this to the 21.1.0 milestone Mar 8, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants