harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "chunrong lai" <chunrong...@gmail.com>
Subject Re: [DRLVM] DRLVM default GC was switched from GCv4.1 to GCv5
Date Mon, 23 Apr 2007 07:18:00 GMT
 I could not reproduce the Windows X86_64 hangs in my testing.
 I tried the classloader.StressLoader in my Windows x86_64 by two times.
 It reported "PASSED" finally. The running time was 25mins in one run, and
30mins in another run.

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
> > > >
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message