[ https://issues.apache.org/jira/browse/HARMONY-4891?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12533683
]
Alexei Fedotov commented on HARMONY-4891:
-----------------------------------------
Li-Gang,
Sorry for misleading you. I meant the following function in my comment.
private long freeMemory() {
int size = Integer.MAX_VALUE;
long free = 0;
Object[] list = new Object[1];
// decrease the chunk size
while (size > 0) {
try {
while (true) {
Object[] newElement = new Object[size];
free += size;
newElement[0] = list;
list = newElement;
}
} catch (OutOfMemoryError oome) {
}
size /= 2;
}
list = null;
System.gc();
return free * OBJECT_REF_SIZE;
}
Do you mean the same function?
> [drlvm][gc] heap exhaustion performance is five times slower than RI's one
> --------------------------------------------------------------------------
>
> Key: HARMONY-4891
> URL: https://issues.apache.org/jira/browse/HARMONY-4891
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Environment: Windows, ia32
> Reporter: Alexei Fedotov
> Assignee: Xiao-Feng Li
> Attachments: AbstractTest.java, GcTest.java, p-unit-0.12.jar, p-unit-extension-0.12.jar
>
>
> $ time win_ia32_msvc_release/deploy/jdk/jre/bin/java -cp bin/classes org.apache.harmony.test.stress.gc.share.GcTest
> [concurrent] Starting org.apache.harmony.test.stress.gc.share.GcTest
> [debug] total = 268435456, used = 2165188, ratio = 13, sizes = 1 - 2097152
> test() - [123709.342995ms,97.95109033584595%]
> total: 1, failures:0 (GREEN) - 123770.125835ms
> real 2m9.328s
> user 0m0.015s
> sys 0m0.000s
> $ time java -cp bin/classes org.apache.harmony.test.stress.gc.share.GcTest
> [concurrent] Starting org.apache.harmony.test.stress.gc.share.GcTest
> [debug] total = 66650112, used = 142120, ratio = 13, sizes = 1 - 2097152
> test() - [47643.880758ms,92.48719041912487%]
> total: 1, failures:0 (GREEN) - 47670.789275ms
> real 0m47.953s
> user 0m0.015s
> sys 0m0.000s
> The test itself runs exactly 30sec, and most of the time is taken by single-threaded
heap exhaustions to estimate the maximum size available for allocation.
> 1. It would be great to get within 70% of RI performance.
> 2. It would be great if one tunes debug build performance which is currently x40 times
slower. The debug build is used for regular stress test runs and this would help to save some
time.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|