-
Notifications
You must be signed in to change notification settings - Fork 762
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
Fix/travis timeout #45
Conversation
Btw, is |
I don’t think we enabled ccache yet, is described here. I can add it to this PR. Otherwise ok? |
By the way, caching will only help for small changes, right? I think we still have to make sure that a full rebuild fits within 50 minutes. |
OK,
|
Hmm, I thought it was enabled because we have: Lines 1 to 2 in 823c8bd
That's exactly what https://docs.travis-ci.com/user/caching says to do. Our cmake config does pick it up, and says it will use it. Correct, it'll only help with small changes. As long as you're not touching base and geometry , speedup is huge.
|
Just fyi: As far as gtsam is concerned, ccache is turned on by default if we detect it (unless we're on Windows or generate an Xcode project): Lines 71 to 73 in 823c8bd
|
Ah, there's an easy way to check whether cache was used. At the end of shell script, run |
It seems to be used after I enabled branches. First two builds were 3/4 mins only! |
PS, |
Hmm... we normally use another setup (CircleCI+docker), so can't recall the
details in Travis, but it looks like a problem in its file cache across
matrix configurations, doesn't it?
Worth a careful read:
https://docs.travis-ci.com/user/caching/#caches-and-build-matrices
|
Looks like it definitely worked on Linux, but mac is still slow. |
Hoping that the latter will fix cache issue on Mac. And who uses gcc on Mac anyway?
But we get two sets of builds now; that's not good :-(
That's actually normal in travis: to build each branch, and also prs. You
can disable branch builds if so desired in travis project settings.
|
Finally the clang one passed on Mac and wrote the cache. This story is not yet over I think, but I will merge for now. |
I refactored slightly, to use more direct configuration of cmake.
I also disabled unstable for gcc tests build, it comes in right under 50 mins ....
One possible speedup is using the gold linker, see http://www.bitsnbites.eu/faster-c-builds/