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

build takes high memory usage #107

Open
tfoote opened this issue Oct 26, 2018 · 1 comment
Open

build takes high memory usage #107

tfoote opened this issue Oct 26, 2018 · 1 comment

Comments

@tfoote
Copy link
Member

tfoote commented Oct 26, 2018

We've documented jekyll taking ~6GB of RAM, which is enough to run our build agents out of memory if they're running with other processes.

From ros-infrastructure/ros_buildfarm_config#123 (comment)

http://build.ros.org/job/doc_rosindex/5/console

The build of the index took 60% of the RAM on an 8GB machines

This caused 2 consecutive build agents under load to fall over due to OOM errors.

I monitored memory during the build and have notes here:
https://gist.github.com/tfoote/9af6d68ebe4dc077691c2d03718617e9

There's discussion of potential mitigation techniques here:
ros-infrastructure/ros_buildfarm_config#123 (comment)

Related issues from Jekyll w/o any resolution:
jekyll/jekyll#560
jekyll/jekyll#1140

@tfoote
Copy link
Member Author

tfoote commented Mar 31, 2020

Comment from #207 (comment)

We're also doing our own pagination where there is a plugin for this that might be more efficient: https://rubygems.org/gems/jekyll-paginate-v2 it's known to be noteably better than the older default pagination

I found a good discussion of performance here: https://boris.schapira.dev/2018/11/jekyll-build-optimization/ though it's a little bit dated.

Also similar recommendations here: https://forestry.io/blog/how-i-reduced-my-jekyll-build-time-by-61/

Liquid-c looks to be still active: https://github.com/Shopify/liquid-c

include-cached might be valuable too: https://github.com/benbalter/jekyll-include-cache

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant