Garbage Collection is not picking up trash

Quoting the infamous GC book, "Garbage Collection: the automatic reclamation of heap-allocated storage after its last use by a program." Clears up any confusion, huh?

Go back to index

What I did in Garbage Collection

Technically speaking, i did profiling of objects for their potential pretenuring. Or as I explained to my mom while waiting for the mall to open...

Use an unused McDonalds napkin to represent the heap. The empty packets of equal represent different objects that can be allocated in the heap. The packets of equal have different lengths b/c of the way I opened them and to represent the different sizes of objects. Place each packet of equal along side one another. When the entire napkin is full, then you have run out of memory. Throw a few of the packets away, from wherever on the napkin. These empty places indicate that an object has died, and now there is free space in memory. Put the next equal packet in your hand. Where do you place it? How do you decide? This is kinda where GC comes in handy. there are bunches of algorithms to do this, but we used a generational garbage collector.

So take two other napkins. Each napkins represents a generation, that is, the nursery to the oldest generation. Once there are two many packets of equal in the nursery napkin, you can promote them to the next generation. Now all the equal packets are on the next napkin. When both the nursery and Generation 1 are full, prompt to the next generation.

So, this is where my stuff comes in. Certain equal packets seemed to live a long time, thus making it to the last generation. My job was to find these packets...and calculate statistics based on their allocation point. Once we found these objects and the statistics, we could decided which objects could be "Pretenured", that is, instead of putting equal packet A into the nursery, place it on the third napkin away from the nursery. Then we could say, for all equal packets that have the same allocation point as packet A, place them into the third napkin immediately.

That way, less time and memory will be spent promoting these long live equal packet objects.

Go back to index

I gave my first presentations...

First Presentation (postscript)

Final Presentation (postscript)

Go back to index

My Mentor Kathryn

My mentor was Kathryn McKinley. If you want to know what type of research she does, I would have to tell you to check out her website. But I can tell you that she does compilers and Garbage Collection. She left Umass for a year to go on Sabatical at the University of Texas. So I was "mentorless" my last week.

Kathryn and I

Kathryn's husband Scott painted the cool picture behind us in the photo. It's a satelite orbiting the Earth. It's a pretty kewl picture to stare at in her office when it is your first JAVA meeting and you have ABSOLUTELY no clue what's going on when she and Elliot Moss start discussing Generational Garbage Collection and Age Based Collection. But a lot of what they said makes sense now after reading the infamous GC book.

Go back to index

The History of the Trashwoman

God, do I love telling this story...

Back in the day when i was a freshman in high school, I got to play a soccer game for the first time for my high school team as a forward. Since I was young back then, I had lots of energy to run and chase shots. This one particular goalkeeper wasn't too steady with the hands, so i was always there to capitalize whenever she dropped or bobbled the ball. As memory recalls, I scored two goals just charging the goalkeeper.

Mr. Hull, the soccer coach and all-around good guy who likes to eat at Wendy's, never realized that the expression was "Thrash" and not "Trash". So he loved telling us that there was lots of "Trash" up there at the goal and that we needed to "Trash the goal" instead of "Thrash the goal". No one had the heart to tell him any differently. So after that one particular game, Mr. Hull says, "Darlin', you definitely picked up that trash." and then he says, "YEAH! DARLIN'! You were the TRASHWOMAN!" and the legacy of the trashwoman is probably still being told today.

Go back to index

What does a Takahe, an Emperor, an Emu, and a King have in common?

They are all flightless birds. More importantly, they are the names of the computers in the lab. I sit on a Takahe. This is what had to say about a Takahe.

"This flightless bird lives in New Zealand's scrub and grasslands. Its near extinction began with hunting pressure by Stone Age Polynesians one thousand years ago and continued with the introduction of predators (especially the stoat) and grazing animals such as the red deer by European settlers. By 1900, the birds were believed to be extinct. However, the species was rediscovered in 1948 in an almost inaccessible valley on South Island. A reserve was immediately established, and now there are about 250 takahÈ living in an approximately 500 square kilometre area. The takahÈ has not bred in captivity and has not been seen on North Island since the late 1800s."

Here is a picture of a takahe.

Go back to index