Rich,

I'm going to implement some isBinary/etc methods this weekend. You can
expect to see lesser calls to AntClassLoader.loadClass() then and better
performance. Stay tuned.

Ara.

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:xdoclet-user-
> [EMAIL PROTECTED]] On Behalf Of Rich Steele
> Sent: Thursday, June 27, 2002 7:17 PM
> To: Aslak Helles�y
> Cc: Ara Abrahamian; Marcus Brito; Lista XDoclet-User
> Subject: RE: [Xdoclet-user] Very slow performance over network drive
> 
> 
> Sorry for the delay in posting my updates on this issue, but I just
got
> back from a much-needed vacation.
> 
> I'm running a version from a snapshot on June 25th.  The performance
is
> still very poor on a dynamic view.
> 
> Unfortunately, my installation of JProbe is still on vacation--it
> doesn't seem to want to work anymore, so I can't let the task run to
> completion.  (I'm hoping JProbe 4.0, which we have on order, will
> improve things.)  An intermediate snapshot shows the same profile as
> before: 98% of the time spent in XJavadocTask.execute() is spent in
> AntClassLoader.loadClass().
> 
> We're working around the problem right now by telling all of our
> developers to use snapshot views, so this isn't stopping development.
> However, non-developers will probably want to use a dynamic view, and
> they won't be happy with a 30-minute build...
> 
> Help!
> 
> Rich
> 
> BTW: XDoclet has made doing EJB development--especially
> relationships--fun again.  Thanks everyone for such a cool tool!
> 
> 
> -----Original Message-----
> From: Aslak Helles�y
> Sent: Thu 6/20/2002 4:01 PM
> To:   Rich Steele
> Cc:   Ara Abrahamian; Marcus Brito; Lista XDoclet-User
> Subject:      RE: RE: [Xdoclet-user] Very slow performance over
> network drive
> 
> 
> 
> > -----Original Message-----
> > From: Rich Steele [mailto:[EMAIL PROTECTED]]
> > Sent: 20. juni 2002 21:20
> > To: [EMAIL PROTECTED]
> > Cc: Ara Abrahamian; Marcus Brito; Lista XDoclet-User
> > Subject: RE: RE: [Xdoclet-user] Very slow performance over network
> drive
> >
> >
> >
> > This seems marginally better.  The number of calls in
> > XJavaDocTask.execute() to AntClassLoader().loadClass(String,
boolean)
> > has been reduced from 1100 to 773.  There is a similar reduction in
> the
> > number of calls to AntClassLoader.findClass(String) and
> > AntClassLoader.findClassInComponents(String).  However,
> > findClassInComponents() is still calling getResourceStream() over
> 20,000
> > times.  (The time here is evenly split between File.exists() and
> > File.isDirectory()).
> >
> 
> I was lying to you. I hadn't committed it. DOH! I just did. Maybe you
> can
> benchmark again. Sorry that I made you think I had committed it. The
> marginal improvement you saw must be something else.
> 
> Aslak
> 
> > However, the task still takes about the same amount of time as
> > before--over 10 minutes.  And remember, this is running the task
> against
> > *local* Java source files.
> >
> > Thanks for all your help!
> >
> > Rich
> >
> > -----Original Message-----
> > From:       [EMAIL PROTECTED]
> > Sent:       Thu 6/20/2002 10:36 AM
> > To: Rich Steele
> > Cc: Ara Abrahamian; Marcus Brito; Lista XDoclet-User
> > Subject:    Re: RE: [Xdoclet-user] Very slow performance over
> > network drive
> >
> > Hi!
> >
> > ----- Original Message -----
> > From: "Rich Steele" <[EMAIL PROTECTED]>
> > Date: Thursday, June 20, 2002 4:01 pm
> > Subject: RE: [Xdoclet-user] Very slow performance over network drive
> >
> > >
> > > I enabled logging for xdoclet.taghandlers.MergeTagHandler, but I
> don't
> > > see anything from the MergeTagHandler in the log file.
> > >
> > > I ran my Ant build in JProbe with a network installation of
> > > XDoclet and
> > > a local ("snapshot") view of my source files.  Not completely done
> yet
> > > (I want to do the same thing but with a locally installed
> > > XDoclet), but
> > > I get some interesting stuff:
> > >
> > > o Of the cumulative time spent in the XJavadoc.execute() method,
> > > 65% of
> > > the cumulative time is spent making over 1100 calls to
> > > AntClassLoader.loadClass(String, boolean).
> > >
> >
> > When xjavadoc parses a source class, it tries to discover the full
> > class hierarchy, and that involves loading all classes and
interfaces
> > it extends.
> >
> > xjavadoc will first try to find the source for a class, but if the
> > source isn't available, it will try to load the compiled class.
> >
> > After a class is loaded, it will use introspection to figure out all
> > classes that are referred to by the class' methods and constructors,
> > and this explodes into loading of a *lot* of classes.
> >
> > I realised yesterday that this is (probably) completely useless, as
we
> > only care about fields/methods/constructors for source classes, and
> > nnot for compiled classes. -We also care about the class hierarchy.
> >
> > Therefore I changed the code so that methods and constructors of
> > compiled classes are never looked at. The net result is that
> > (dramatically) fewer classes are loaded, and this should improve
> > performance quite a bit. I haven't benchmarked this though, but
maybe
> > you can?
> >
> > I committed the changed code yesterday night, so if you CVS update
> > xjavadoc, you should have something *much* faster (I hope).
> >
> > Cheers,
> > Aslak
> >
> > > o Almost 97% of the time spent in AntClassLoader.loadClass(String,
> > > boolean) is in AntClassLoader.findClass(String).
> > >
> > > o Over 99% of the time in AntClassLoader.loadClass(String,
> > > boolean) is
> > > spent
> > > in AntClassLoader.findClassInComponents(String).
> > >
> > > o AntClassLoader.findClassInComponents(String) spends 98% of its
> time
> > > making almost 30000 calls to
> > > AntClassLoader.getResourceStream(File,String).
> > >
> > > I could go on if you want.  This probably is all irrelevant until
> > > I can
> > > do another test with a locally installed XDoclet...
> > >
> > > Rich
> > >
> > >
> > > -----Original Message-----
> > > From:        Ara Abrahamian
> > > Sent:        Wed 6/19/2002 3:41 PM
> > > To:        Rich Steele; 'Marcus Brito'; 'Lista XDoclet-User'
> > > Cc:
> > > Subject:        RE: [Xdoclet-user] Very slow performance over
> network
> > > drive
> > >
> > > This may have something to do with lots of merge file checks. Try
> > > enabling logging for xdoclet.taghandlers.MergeTagHandler and see
> > > what'sgoing on there.
> > >
> > > Ara.
> > >
> > > > -----Original Message-----
> > > > From: [EMAIL PROTECTED] [mailto:xdoclet-
> > > user-
> > > > [EMAIL PROTECTED]] On Behalf Of Rich Steele
> > > > Sent: Wednesday, June 19, 2002 7:27 PM
> > > > To: Marcus Brito; Lista XDoclet-User
> > > > Subject: RE: [Xdoclet-user] Very slow performance over network
> drive
> > > >
> > > >
> > > > Yes dynamic views are slower; everyone expects that.  However,
> > > if I
> > > > change my configuration to use a locally-installed XDoclet
running
> > > > against the Java source in the dynamic view, the task finishes
in
> > > about
> > > > 3 to 5 minutes (as opposed to the 30+ if XDoclet runs over the
> > > network).
> > > >
> > > > If I run a network-installed XDoclet against local Java source
> > > files,> it's still very slow. This makes me believe the problem
> > > isn't because
> > > > the Java source files are fetched across a network connection;
> > > instead,
> > > > something funny is happening when XDoclet is loaded over the
> > > network.>
> > > > Rich
> > > >
> > > >
> > > > -----Original Message-----
> > > > From:        Marcus Brito
> > > > Sent:        Wed 6/19/2002 10:05 AM
> > > > To:        Lista XDoclet-User
> > > > Cc:
> > > > Subject:        Re: [Xdoclet-user] Very slow performance over
> > > network> drive
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
-------------------------------------------------------------------
> > > -----
> > > --
> > > > --
> > > >                    Bringing you mounds of caffeinated joy
> > > >                    >>>     http://thinkgeek.com/sf    <<<
> > > >
> > > > _______________________________________________
> > > > Xdoclet-user mailing list
> > > > [EMAIL PROTECTED]
> > > > https://lists.sourceforge.net/lists/listinfo/xdoclet-user
> > >
> > >
> > >
> > >
> > >
> > >
> > > -------------------------------------------------------
> > >                   Bringing you mounds of caffeinated joy
> > >                   >>>     http://thinkgeek.com/sf    <<<
> > >
> > > _______________________________________________
> > > Xdoclet-user mailing list
> > > [EMAIL PROTECTED]
> > > https://lists.sourceforge.net/lists/listinfo/xdoclet-user
> > >
> >
> >
> >
> >
> 
> 
> 
> 
> 
> 
> -------------------------------------------------------
> Sponsored by:
> ThinkGeek at http://www.ThinkGeek.com/
> _______________________________________________
> Xdoclet-user mailing list
> [EMAIL PROTECTED]
> https://lists.sourceforge.net/lists/listinfo/xdoclet-user



-------------------------------------------------------
Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
_______________________________________________
Xdoclet-user mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to