harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Vladimir Ivanov" <ivavladi...@gmail.com>
Subject Re: [DRLVM] DRLVM default GC was switched from GCv4.1 to GCv5
Date Mon, 23 Apr 2007 10:46:06 GMT
On 4/23/07, Xiao-Feng Li <xiaofeng.li@gmail.com> wrote:
> Thanks for the notifications. Will check the issues immediately,
> basically they are:
>
> StressLoader and self-hosting on Win64, and RunFinalizersOnExit on Linux64.
>
> Vladimir, would you let me know how to run the self-hosting test
> locally with java.exe command line? Thanks!

To run 'self-hosting' please set JAVA_HOME to HDK and just run the HDK
build again to other directory (-Dtarget.dir=<>).

 thanks, Vladimir


>
> Thanks,
> xiaofeng
>
> On 4/23/07, Vladimir Ivanov <ivavladimir@gmail.com> wrote:
> > Also the DRLVM smoke test classloader.StressLoader hangs on Windows
> > x86_64 box in the 'opt' mode (at least work longer than 40 minutes).
> >
> > Thanks, Vladimir
> >
> > On 4/23/07, Vladimir Ivanov <ivavladimir@gmail.com> wrote:
> > > I think one week is enough to investigate all possible issues with GCv5.
> > > Let's start.
> > > First of all, what should we do with failed tests on finalization,
> > > like gc.RunFinalizersOnExit (failed on Linux x86_64)?
> > >
> > > The second issue: the self-hosting (build of HDK on HDK) project is
> > > failed now on Windows x86_64 with message like that (stack trace is
> > > below):
> > >     [exec]     [javac] 1. ERROR in
> > > C:\cruise_hdk\cc\projects\trunk\working_classlib\modules\beans\src\main\java\java\beans\MethodDescriptor.java
> > >     [exec]     [javac]  (at line 0)
> > >     [exec]     [javac]         /*
> > >     [exec]     [javac]         ^
> > >     [exec]     [javac] Internal compiler error
> > >     [exec]     [javac] java.lang.IllegalArgumentException: Characters
> > > number for one byte must be positive.
> > >
> > > Note, it is not the GCv5 issue but now it reproduced very often.
> > >
> > >  thanks, Vladimir
> > >
> > > ---- self-hosting failure ----------------------------
> > >     [exec] -compile:
> > >     [exec]     [mkdir] Created dir:
> > > C:\cruise_hdk\cc\projects\trunk\working_classlib\build\classes
> > >     [exec]     [javac] Compiling 3654 source files to
> > > C:\cruise_hdk\cc\projects\trunk\working_classlib\build\classes
> > >     [exec]     [javac] ----------
> > >     [exec]     [javac] 1. ERROR in
> > > C:\cruise_hdk\cc\projects\trunk\working_classlib\modules\beans\src\main\java\java\beans\MethodDescriptor.java
> > >     [exec]     [javac]  (at line 0)
> > >     [exec]     [javac]         /*
> > >     [exec]     [javac]         ^
> > >     [exec]     [javac] Internal compiler error
> > >     [exec]     [javac] java.lang.IllegalArgumentException: Characters
> > > number for one byte must be positive.
> > >     [exec]     [javac]         at
> > > java.nio.charset.CharsetDecoder.<init>(Unknown Source)
> > >     [exec]     [javac]         at
> > > com.ibm.icu4jni.charset.CharsetDecoderICU.<init>(Unknown Source)
> > >     [exec]     [javac]         at
> > > com.ibm.icu4jni.charset.CharsetICU.newDecoder(Unknown Source)
> > >     [exec]     [javac]         at
> > > java.io.InputStreamReader.<init>(Unknown Source)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.util.Util.getInputStreamAsCharArray(Util.java:193)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.util.Util.getFileCharContent(Util.java:70)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.batch.CompilationUnit.getContents(CompilationUnit.java:58)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9047)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.parser.Parser.parse(Parser.java:9019)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.parser.Parser.dietParse(Parser.java:7707)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.Compiler.beginToCompile(Compiler.java:371)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.Compiler.compile(Compiler.java:397)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.batch.Main.performCompilation(Main.java:2949)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.internal.compiler.batch.Main.compile(Main.java:1357)
> > >     [exec]     [javac]         at
> > > java.lang.reflect.VMReflection.invokeMethod(VMReflection.java)
> > >     [exec]     [javac]         at
> > > java.lang.reflect.Method.invoke(Method.java:381)
> > >     [exec]     [javac]         at
> > > org.eclipse.jdt.core.JDTCompilerAdapter.execute(JDTCompilerAdapter.java:79)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:931)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:757)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Task.perform(Task.java:364)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.execute(Target.java:341)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.performTasks(Target.java:369)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Task.perform(Task.java:364)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.execute(Target.java:341)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.performTasks(Target.java:369)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:37)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:382)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Task.perform(Task.java:364)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.execute(Target.java:341)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Target.performTasks(Target.java:369)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1216)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeTarget(Project.java:1185)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:40)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Project.executeTargets(Project.java:1068)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Main.runBuild(Main.java:668)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.Main.startAnt(Main.java:187)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.launch.Launcher.run(Launcher.java:246)
> > >     [exec]     [javac]         at
> > > org.apache.tools.ant.launch.Launcher.main(Launcher.java:67)
> > >
> > >     [exec]     [javac] ----------
> > >     [exec]     [javac] Characters number for one byte must be positive.
> > >
> > >     [exec] BUILD FAILED
> > >     [exec] C:\cruise_hdk\cc\projects\trunk\build.xml:324: The
> > > following error occurred while executing this line:
> > >     [exec] C:\cruise_hdk\cc\projects\trunk\working_classlib\build.xml:113:
> > > The following error occurred while executing this line:
> > >     [exec] C:\cruise_hdk\cc\projects\trunk\working_classlib\make\build-java.xml:130:
> > > Compile failed; see the compiler error output for details.
> > > ------------------------------------------------------------
> > >
> > >
> > > On 4/23/07, Rana Dasgupta <rdasgupt@gmail.com> wrote:
> > > > Nice document Xiao Feng. And it goes without saying, good work on gcv5.
> > > >
> > > > Rana
> > > >
> > > > On 4/22/07, Xiao-Feng Li <xiaofeng.li@gmail.com> wrote:
> > > > > Hi, folks, I've made the switch of default DRLVM GC component from
> > > > > GCv4.1 (gc_cc) to GCv5 (gc_gen) yesterday. This switch is only trial
> > > > > for one week experiment. If things go well, it might be the default
GC
> > > > > from then on; otherwise, it will be switched back waiting for next
> > > > > chance after JavaOne. (We do not know the switch result yet, since
the
> > > > > testing infrastructure looks to be resting in weekends.)
> > > > >
> > > > > To make the switch is to bring Apache Harmony an advanced GC module
> > > > > which has state-of-the-art design and implementation as a
> > > > > stop-the-world GC. Basically, GCv5 is fully parallel in all phases
of
> > > > > garbage collection, with a couple of dynamic runtime adaptation
> > > > > innovations to improve the throughput. GCv5 supports both generational
> > > > > and non-generational mode. Experiments showed good performance
> > > > > improvement over GCv4.1 for most workloads on parallel machines.
> > > > >
> > > > > I have put a quick overview of Harmony GCv5 at
> > > > > http://people.apache.org/~xli/docs/harmony_gcv5_overview.pdf . A
basic
> > > > > design principle of GCv5 is to be modular (or open). This is a big
> > > > > difference from GCv4.1. Hope it could lay a good foundation for the
> > > > > community to develop more sophisticated GC technologies. As I know,
> > > > > there are two university projects already using GCv5 for their
> > > > > Harmony-based research.
> > > > >
> > > > > We would expect some regressions during the transition phase. Let's
> > > > > promptly fix the bugs exposed, and try to make the switch smooth.
> > > > >
> > > > > Thanks,
> > > > > xiaofeng
> > > > >
> > > >
> > >
> >
>
>
> --
> http://xiao-feng.blogspot.com
>

Mime
View raw message