Schedule
Nate Berkopec
Nate is the owner of Speedshop, a Ruby on Rails performance consultancy. Nate has worked for several startups, including Craft Coffee (YC S14), Unwind Me (YC S14), Scaffold (500 Startups), Branch (now a division of Facebook) and many others. Nate is a contributor to several open source projects, such as Ruby on Rails, Puma and Sentry.
Memory Fragmentation and Bloat in Ruby
Memory is not a simple abstraction. The layers of indirection between "Object.new" and flipping a bit in RAM are numerous: the Ruby heap, the memory allocator, the kernel, the memory management unit and more. Unfortunately, all of these layers can contribute to "bad behavior", resulting in memory fragmentation and bloat. This talk examines each of the different layers of memory abstraction, and how tuning and controlling them can result in reduced memory usage in Ruby applications.