Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-releng-dev] Garbage collection in meter's methods.

I'm now doing performance test regarding Equinox service registry by
extending org.eclipse.core.tests.harness.PerformanceTestRunner. I would
like to measure both of heap memory consumption and CPU time for my own test()
method.

As for the current implementation of PerformanceMeters, System.gc is not
called in meter.start()/stop(). Therefore, the results of "Used Java
Heap" might include memory allocation for objects to be garbage
collected in future. Although I understand there might be a case that it
must include memory allocation for those (kind of instantaneous), it's
not what I want (kind of constantly).

What I want the methods to do is :  

In meter.start(),
	1. do gc.
	2. record current Used Java Heap.
	3. record current time.

In meter.stop(),
	1. record current time
	2. do gc,
	3. record current Used Java Heap.

# GC must not affect the result of CPU time.

Now, could anyone tell me what I should do ?
or do you have any plan to change the implementation of PerformanceTestRunner.

P.S. Currently, Only thing I can do is calling System.gc() in my setUp()
	method.

---------------------
NTT Cyber Solutions Laboratories

     Ikuo YAMASAKI
        E-mail: yamasaki.ikuo@xxxxxxxxxxxxx




Back to the top