How to speed up RCP application build time?

View: New views
13 Messages — Rating Filter:   Alert me  

How to speed up RCP application build time?

by Sergio Lopes-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,
The build time of my application it too big. Every time I try to build
and run it it takes around 3 minutes to complete the build task,
sometimes it takes more but I've never had to wait less than the 3
minutes.

I noticed that the task that takes longer it the "Generating
information for Auto Update...", can I disable it? Or what else can I
do so that in order to test a small change I don't have to go and get
a cup of coffee, I'm spending more time in the coffee area than on the
project :)

--
Best regards,

Sérgio Lopes

Re: How to speed up RCP application build time?

by John K :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Make sure you haven¹t added any files to the NB install directory. I did
that and had some problems. See the bug here:
http://www.netbeans.org/issues/show_bug.cgi?id=131786
It¹s been marked as OEwontfix¹ but if you have a different opinion perhaps
you should add that to the ticket. After removing the extra files I added, I
still wasn¹t happy, so I installed the basic version of NB with only Java SE
support and things improved, if I recall correctly (which I may not).

On 5/5/08 6:09 PM, "Sergio Lopes" <knitter.is@...> wrote:

> Hi,
> The build time of my application it too big. Every time I try to build
> and run it it takes around 3 minutes to complete the build task,
> sometimes it takes more but I've never had to wait less than the 3
> minutes.
>
> I noticed that the task that takes longer it the "Generating
> information for Auto Update...", can I disable it? Or what else can I
> do so that in order to test a small change I don't have to go and get
> a cup of coffee, I'm spending more time in the coffee area than on the
> project :)
>
> --
> Best regards,
>
> Sérgio Lopes
>


Re: How to speed up RCP application build time?

by Fabrizio Giudici :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Also consider splitting the large application in two smaller  
applications, if possible. Look at here if it helps:

http://www.tidalwave.it/blog/1655
http://weblogs.java.net/blog/fabriziogiudici/archive/2007/11/netbeans_rcp_be.html


On May 5, 2008, at 15:09 , Sergio Lopes wrote:

> Hi,
> The build time of my application it too big. Every time I try to build
> and run it it takes around 3 minutes to complete the build task,
> sometimes it takes more but I've never had to wait less than the 3
> minutes.
>
> I noticed that the task that takes longer it the "Generating
> information for Auto Update...", can I disable it? Or what else can I
> do so that in order to test a small change I don't have to go and get
> a cup of coffee, I'm spending more time in the coffee area than on the
> project :)
>
> --
> Best regards,
>
> Sérgio Lopes
>

--
Fabrizio Giudici, Ph.D. - Java Architect, Project Manager
Tidalwave s.a.s. - "We make Java work. Everywhere."
weblogs.java.net/blog/fabriziogiudici - www.tidalwave.it/blog
Fabrizio.Giudici@... - mobile: +39 348.150.6941



Re: How to speed up RCP application build time?

by Sergio Lopes-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

John, I don't have other files inside the installation directory other
than the original files, I added none after installation.
From the description and comments in the bug I have nothing similar,
except for the long build time.

As for dividing the application, well, it currently has 4 modules and
only one of them has any code beyond the few files generated
automatically from the module template. When designing the application
I divided it into small modules that provide functionality on top of
what already exists, that is, modules reuse functionality of other
modules. Although I admit, being my first RCP application I may have
not implemented the best option.

I'm a bit frustrated with all this and maybe some more background
should have been sent in the first e-mail.

I'm using WinXP SP2, on am Intel Core2 Duo @ 2.4GHz with 1GB of RAM.
I've tried the same project on the latest Ubuntu running on an Intel
P4 @ 3Ghz with 2GB of RAM and the time doesn't even compare, from the
usual 3 minutes on the first machine to about 10s on the second one,
and the second project had to be compiled, build and run, while the
first had already been run once so it should only have to run the
application and do nothing in the compile/build target.

I would like to try one thing, to disable the generation of update
information, but I can't find where it is being done or if is even
possible to disable it.

--
Best regards,

Sérgio Lopes

Re: How to speed up RCP application build time?

by Mikael Aronsson :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

It is possible that the 1GB of RAM is a little on the low side, maybe
that is the problem.

----- Original Message -----
From: "Sergio Lopes" <knitter.is@...>
To: <dev@...>
Sent: Tuesday, May 06, 2008 2:37 PM
Subject: Re: [openide-dev] How to speed up RCP application build time?


John, I don't have other files inside the installation directory other
than the original files, I added none after installation.
From the description and comments in the bug I have nothing similar,
except for the long build time.

As for dividing the application, well, it currently has 4 modules and
only one of them has any code beyond the few files generated
automatically from the module template. When designing the application
I divided it into small modules that provide functionality on top of
what already exists, that is, modules reuse functionality of other
modules. Although I admit, being my first RCP application I may have
not implemented the best option.

I'm a bit frustrated with all this and maybe some more background
should have been sent in the first e-mail.

I'm using WinXP SP2, on am Intel Core2 Duo @ 2.4GHz with 1GB of RAM.
I've tried the same project on the latest Ubuntu running on an Intel
P4 @ 3Ghz with 2GB of RAM and the time doesn't even compare, from the
usual 3 minutes on the first machine to about 10s on the second one,
and the second project had to be compiled, build and run, while the
first had already been run once so it should only have to run the
application and do nothing in the compile/build target.

I would like to try one thing, to disable the generation of update
information, but I can't find where it is being done or if is even
possible to disable it.

--
Best regards,

Sérgio Lopes


Re: How to speed up RCP application build time?

by Gregg Wonderly-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

As with the majority of consumer PCs, the first thing to do is replace the hard
disk with something that actually has some throughput.  For laptops, the Hitachi
Travelstar is a great deal because it comes with cloning software and a USB
drive case to put the old drive in so that you can use it for extra storage.

You need something at 7200 RPM, not 5400 or the ridiculous 4800 RPM that many
mid to entry level laptops are sold with.

The 1GB of RAM is also part of the problem.  Look at the Windows task manager to
see how much memory you have available, and how much Netbeans is using.  Also,
expanding the heap size of netbeans by reconfiguring the command line parameters
to use more heap and the more advanced GC is also a good thing.

Gregg Wonderly

Mikael wrote:

> It is possible that the 1GB of RAM is a little on the low side, maybe
> that is the problem.
>
> ----- Original Message ----- From: "Sergio Lopes" <knitter.is@...>
> To: <dev@...>
> Sent: Tuesday, May 06, 2008 2:37 PM
> Subject: Re: [openide-dev] How to speed up RCP application build time?
>
>
> John, I don't have other files inside the installation directory other
> than the original files, I added none after installation.
>> From the description and comments in the bug I have nothing similar,
> except for the long build time.
>
> As for dividing the application, well, it currently has 4 modules and
> only one of them has any code beyond the few files generated
> automatically from the module template. When designing the application
> I divided it into small modules that provide functionality on top of
> what already exists, that is, modules reuse functionality of other
> modules. Although I admit, being my first RCP application I may have
> not implemented the best option.
>
> I'm a bit frustrated with all this and maybe some more background
> should have been sent in the first e-mail.
>
> I'm using WinXP SP2, on am Intel Core2 Duo @ 2.4GHz with 1GB of RAM.
> I've tried the same project on the latest Ubuntu running on an Intel
> P4 @ 3Ghz with 2GB of RAM and the time doesn't even compare, from the
> usual 3 minutes on the first machine to about 10s on the second one,
> and the second project had to be compiled, build and run, while the
> first had already been run once so it should only have to run the
> application and do nothing in the compile/build target.
>
> I would like to try one thing, to disable the generation of update
> information, but I can't find where it is being done or if is even
> possible to disable it.
>


Re: How to speed up RCP application build time?

by Sergio Lopes-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Gregg, the laptop, wiht it's ridiculous 4200RPMs is faster than the
desktop with the 7200RPMs :)
It's not possible to change the hardware of the deskptop I'm using,
it's a school project and it's also a computer provided by the school.

I'll try to use other machines but I must insist on the question of
whether it is possible to disable update information during this
development phase.

--
Best regards,

Sérgio Lopes

Re: How to speed up RCP application build time?

by Florian Brunner :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I've also noted (on my notebook with 1 GB RAM) that the creation of the
update information takes some time and wondered what exactly it is doing
there and if I could avoid that.

-Florian

Sergio Lopes schrieb:
>
> I'll try to use other machines but I must insist on the question of
> whether it is possible to disable update information during this
> development phase.
>
>  


RE: How to speed up RCP application build time?

by Caza Henha :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Sergio,

This may be a long shot but you mention that the problem only occurs on the
"schools" computer running Windows XP SP2. I'm not sure how you have your
Netbeans config setup or even if you have adjusted your AutoUpdate but is
the Windows XP SP2 client part of a Window domain as this may your problem
(as this is what I have had issues with). If the school employs roaming
profiles and/or folder redirection then this could be causing the slow
builds as these will be going across the network, for example I think the
default location for projects is your "My Documents" folder, if folder
redirection is in place which is normally transparent to the user (on XP
anyway) then the build will be going over the network and thereby be pretty
slow. If you are building from a directory outside you "user directory" (if
not give it a shot) then it could be stalling only on the AutoUpdate part if
the school's network has a proxy and as a consequence of restrictions cannot
access the external network correctly and therefore obtain the AutoUpdate
information; the AutoUpdate configuration could be stalling at a timeout
rather than "actually" taking this long to build.  

I have had a few issues with IDEs on Domain networks and long builds mainly
come down to permission or network issue on Windows clients, once they have
been adjusted everything works great, but the thing is you need to know
about them first. If your Ubuntu box is also on the school network it may
not be affected by the same problem as Linux boxes don't tend to be
integrated to use roaming and folder redirection and therefore do not
realise the same issues as Windows based clients and Linux boxes tend to be
globally configured to use proxies whereby each application on Windows
usually has to be configured to use it otherwise they just die or timeout.

From experience I really do not think this has anything to do with memory or
hard drive speeds (as you say it is only 4 modules) as I had a quad core hp
workstation with 4GB RAM which was having similar issues with build times.

Regards,

Caza  

-----Original Message-----
From: Sergio Lopes [mailto:knitter.is@...]
Sent: 05 May 2008 23:10
To: dev@...
Subject: [openide-dev] How to speed up RCP application build time?

Hi,
The build time of my application it too big. Every time I try to build
and run it it takes around 3 minutes to complete the build task,
sometimes it takes more but I've never had to wait less than the 3
minutes.

I noticed that the task that takes longer it the "Generating
information for Auto Update...", can I disable it? Or what else can I
do so that in order to test a small change I don't have to go and get
a cup of coffee, I'm spending more time in the coffee area than on the
project :)

--
Best regards,

Sérgio Lopes


Parent Message unknown Re: How to speed up RCP application build time?

by Sergio Lopes-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Tue, May 6, 2008 at 5:00 PM, Caza Henha <cazahenha@...> wrote:
>  If the school employs roaming
>  profiles and/or folder redirection then this could be causing the slow
>  builds as these will be going across the network, for example I think the
>  default location for projects is your "My Documents" folder, if folder
>  redirection is in place which is normally transparent to the user (on XP
>  anyway) then the build will be going over the network and thereby be pretty
>  slow.

This is not a problem, the computer belong to the network but the
profiles are stored in the local machine and not over network.


>  then it could be stalling only on the AutoUpdate part if
>  the school's network has a proxy and as a consequence of restrictions cannot
>  access the external network correctly and therefore obtain the AutoUpdate
>  information; the AutoUpdate configuration could be stalling at a timeout
>  rather than "actually" taking this long to build.

Now this part really lights some ideas. In fact I am behind a proxy
server, that to say the least, is not that permissive. I haven't
changed anything on the IDEs configuration, it is using the system
proxy settings, I'll try to configure it manually and see if it
changes something.
Our network "gurus" tried to configure a transparent proxy that has
always cause problems.

I never thought the auto update thing could be trying to access an
external address, I always believe it to be something local to the
development environment.

I'll  update as soon as I have tested it.

--
Sem mais e com os melhores cumprimentos,

Sérgio Lopes

RE: How to speed up RCP application build time?

by Caza Henha :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi Sergio,

You may want to check to see what the network gurus have done as a even
roaming profiles are always stored locally, i.e. as you log on it
synchronises the server copy with the local copy and vice versa when you log
off, even if you don't have roaming profiles (which is relatively uncommon)
you may still have "folder redirection" (which I normally very common for
ease of backup etc.) of your "My Documents" file structure to a network file
share, right-click on "My Documents" and double check that the target is
pointing to a local device; but again if the project directory is outside of
your "My Documents" this shouldn't be causing slow build times anyway.

In regards to you AutoUpdate I suppose it depends if you have configured it
in any way that it needs to access the Internet, I am not sure if by default
it does, I know there sharable AutoUpdate references for various Netbeans
builds on the Internet for more efficient global deployments, but I think
these have to be manually set but someone else may be able to answer if it
is pulling anything off the net during this procedure.

Hope your search goes well...

Regards,

Caza  

-----Original Message-----
From: Sergio Lopes [mailto:knitter.is@...]
Sent: 06 May 2008 17:23
To: dev@...
Subject: Re: [openide-dev] How to speed up RCP application build time?

On Tue, May 6, 2008 at 5:00 PM, Caza Henha <cazahenha@...> wrote:
>  If the school employs roaming
>  profiles and/or folder redirection then this could be causing the slow
>  builds as these will be going across the network, for example I think the
>  default location for projects is your "My Documents" folder, if folder
>  redirection is in place which is normally transparent to the user (on XP
>  anyway) then the build will be going over the network and thereby be
pretty
>  slow.

This is not a problem, the computer belong to the network but the
profiles are stored in the local machine and not over network.


>  then it could be stalling only on the AutoUpdate part if
>  the school's network has a proxy and as a consequence of restrictions
cannot
>  access the external network correctly and therefore obtain the AutoUpdate
>  information; the AutoUpdate configuration could be stalling at a timeout
>  rather than "actually" taking this long to build.

Now this part really lights some ideas. In fact I am behind a proxy
server, that to say the least, is not that permissive. I haven't
changed anything on the IDEs configuration, it is using the system
proxy settings, I'll try to configure it manually and see if it
changes something.
Our network "gurus" tried to configure a transparent proxy that has
always cause problems.

I never thought the auto update thing could be trying to access an
external address, I always believe it to be something local to the
development environment.

I'll  update as soon as I have tested it.

--
Sem mais e com os melhores cumprimentos,

Sérgio Lopes


Parent Message unknown Re: How to speed up RCP application build time?

by Sergio Lopes-3 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi,
I have been looking at this problem trying to figure what is wrong but
still can't find even a hint on what is going on.
In the course of the project I had to create an algorithm to read the
contents of a given folder, after the first tests the method would
take up to 5 minutes to read a folder with a few hundred folders
inside and a few thousand files, the surprise came when the machine
right next to mine, same specs, just took a few seconds!
So there is something wrong with this machine and it's java
installation. What it is I can't find, and I have began using my
laptop so I'll just ignore the problem for now.

About the profiles, I've confirmed, everything is local.

Thanks for all the help, just wanted to post some update on the situation.

--
Sem mais e com os melhores cumprimentos,

Sérgio Lopes

Re: How to speed up RCP application build time?

by Jesse Glick :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Florian Brunner wrote:
> I've also noted (on my notebook with 1 GB RAM) that the creation of
> the update information takes some time and wondered what exactly it
> is doing there and if I could avoid that.

Clearly several minutes to build a suite which is not enormous is
pathological. I cannot really guess offhand at what the actual problem
is, besides a general note to ensure that you have enough RAM to avoid
disk swapping for most operations. Since this is just an Ant build, run
it from the command line with no other apps (especially NB open) to get
the most reliable timings. If you profile the Ant run (or just take
random thread dump samples, or use DTrace, ...) you would be able to see
exactly what is going on and have a chance at fixing it.