Browse Prior Art Database

Arcflow of garbage collection and jit buffer reordering (jit garbage collection)

IP.com Disclosure Number: IPCOM000013246D
Original Publication Date: 2000-Mar-01
Included in the Prior Art Database: 2003-Jun-18
Document File: 1 page(s) / 37K

Publishing Venue

IBM

Abstract

When analyzing the performance of a java virtual machine, it is nice to have a way to identify where time is spent performing what type of operations and on behalf of what types of processing. In particular, it is helpful to know what time is spent performing garbage collection and jit buffer garbage collection (jit gc). Jit buffer garbage collection occurs when there is space available for a jitted method, but the contiguous free space is not large enough to hold the jitted method. Garbage collection occurs when the heap is filled and there is not enough contiguous space left to allocate a specific object on the heap. Various levels of garbage collection can occur, such as, freeing unused objects or moving objects to provide more contiguous space.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 52% of the total text.

Page 1 of 1

Arcflow of garbage collection and jit buffer reordering (jit garbage collection)

When analyzing the performance of a java virtual machine, it is nice to have a way to identify where time is spent performing what type of operations and on behalf of what types of processing. In particular, it is helpful to know what time is spent performing garbage collection and jit buffer garbage collection (jit gc). Jit buffer garbage collection occurs when there is space available for a jitted method, but the contiguous free space is not large enough to hold the jitted method. Garbage collection occurs when the heap is filled and there is not enough contiguous space left to allocate a specific object on the heap. Various levels of garbage collection can occur, such as, freeing unused objects or moving objects to provide more contiguous space.

Please note that it is not sufficient to simply take the difference between the end time and the start time to identify the jit garbage collection time. This is because other operations could take place, such as, process switches, timer interrupts, key board interrupts, etc. Also, other events could occur during jit gc. For example, it is possible that other operations using code that is pinned or simply running interpretively might be continuing concurrently.

The key to avoiding this problem is in the processing or analysis phase, which could be either real time or post processing. We define a methodology for attributing time spent in a method or process/thread (pid/tid) by identifying the current method or process/thread (pid/tid) as a node and applying base time to the...