Skip to content

Instantly share code, notes, and snippets.

@mhink
Created January 14, 2015 19:29
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mhink/1dd768356b9a8d033787 to your computer and use it in GitHub Desktop.
Save mhink/1dd768356b9a8d033787 to your computer and use it in GitHub Desktop.
Shell configuration variables for Ruby GC
Some values from http://snaprails.tumblr.com/post/241746095/rubys-gc-configuration
export RUBY_HEAP_MIN_SLOTS=5000000 # Initial number of RVALUE slots.
# (default: 10k)
# (current: 5m)
# (37signals: 600k)
# (twitter: 500k)
export RUBY_GC_MALLOC_LIMIT=500000000 # Number of RVALUE allocations that will trigger a GC
# (default: 8m)
# (current: 500m)
# (37signals: 59m)
# (twitter: 50m)
export RUBY_HEAP_FREE_MIN=100000 # If the number of free RVALUE slots after GC is less
# than this number, more slots will be malloc'ed.
# (default: 4096)
# (current: 100k)
# (37signals: 100k)
# (twitter: ---)
export RUBY_HEAP_SLOTS_INCREMENT=5000000 # Number of new RVALUE slots to malloc in such a case
# (default: 10k)
# (current: 100k)
# (37signals: ---)
# (twitter: 250k)
export RUBY_HEAP_SLOTS_GROWTH_FACTOR=1 # Grow the heap size linearly during new RVALUE slot mallocs
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment