1. TeamRubinius
● Rails Girls Summer of Code 2014
● Memory visualizer tool for Rubinius
● Coaches: Prathamesh Sonpatki, Nishant Modak and
Vipul Amler
● Mentor: Dirkjan Bussink
● Students: Akanksha Agrawal and Sana Khan
2. What is Rubinius?
● Rubinius is an alternative implementation of Ruby that
seeks to "provide a rich, high-performance
environment for running Ruby code."
● Various other implementations of Ruby: MacRuby,
IronRuby, JRuby, MRI (CRuby) and more.
3. Why Rubinius?
● What is unique to Rubinius is that it implements the
Ruby core library primarily in Ruby.
● Performance (Sophisticated VM, JIT compiler,
generational GC)
5. Why Memory Analysis?
● Troubleshooting or fixing high memory usage
problems.
● Identifying the root cause of memory leaks.
● Analyze memory dump.
● Heap dump is one of the most important analysis
tools.
6. heap_dump
● Memory debugging tool integrated directly into the
VM.
● Heap Dump provides the ability to write out the entire
object graph to disk in a stable, portable format.
● The heap dump tool can read and interpret this heap
dump.
7. Query Agent
● Query Agent provides an interface to Heap Dump.
● A socket based API that is implemented directly by
the VM.
● Can be used to debug and introspect running
programs.
8. ● The query agent is used with a control console
(bin/rbx -Xagent.start and bin/rbx console)
12. RGSoC Week-3 Update
● We have spent around a week to study and
understand the Json file format that the heap dump
generates.
● We are looking forward to utilizing the information
from this json file and displaying it in a graphical way
which should enable the user to explore the memory
usage of their application.
● Right now we are learning d3.js - a JavaScript library
for data visualization.
13. Inputs?
● Subscribe to our blog for updates on our progess.
http://teamrubiniusrgsoc14.blogspot.in/
● Follow us on twitter
@AkankshaHA and @sanakhan_libre