Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 186213

Summary: [POG]TPTP drivers are larger than my favourite video games
Product: z_Archived Reporter: Ashish Patel <ashishp>
Component: TPTPAssignee: Joshua Bowles <jbowles>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P1 CC: analexee, apnan, chris.l.elford, jcayne, jgwest, jkubasta, paulslau, popescu, sluiman, xubing
Version: unspecifiedKeywords: plan
Target Milestone: ---Flags: jcayne: review+
Hardware: PC   
OS: Windows XP   
Whiteboard: closed462
Attachments:
Description Flags
Use p2 to install only necessary eclipse components
none
Breaks up the xsd.sdk into its runtime components and fixes a problem with the windows platform unzip
none
forgot to add the changes to build.properties none

Description Ashish Patel CLA 2007-05-09 13:45:13 EDT
The all in one drivers have grown to 200 MEGs.  Some of my favourite video games aren't even this big!

This really affects the products that build on top or repackage TPTP since we already start out with a 200 MEG baseline.

I would like to see TPTP squish the size down to something more manageable.  I don't understand why its so large, and if most are coming from other dependencies TPTP should be pursuing those groups to make their packages smaller.  I see competitive profiling tools that are only 15 MEGs with full docs and installers.

This defect should address compacting TPTP and encouraging the dependency groups to do the same.

In addition, the enormous size makes downloading of the driver longer than watching 60 minutes on CBS.  from eclipse.org my download manager is telling me it will take 1.5 hours to get the all-in-one.  Perhaps mirroring the downloads can solve this, but the original issue at hand remains.
Comment 1 Valentina Popescu CLA 2007-05-09 14:02:18 EDT
Ashish, the TPTP runtime zip size is 40Mb which I guess is a reasonable size compared with the 200Mb you are reporting. The agent controller for all supported platforms is currently packaged with the runtime zip; we have a defect open, to be fixed in the 4.4 timeframe, to package only plugins matching the client operating system. This should reduce the size even further, probably 5-10Mb

I checked on the TPTP dependency and platform sdk sums up to 138Mb, emf 20Mb. There is nothing we can do about this; I suggest you download these separately, TPTP offers separate downloads for all of them.
One positive thing I notice is that you do have time for playing video games and watching tv :) good for you

Comment 2 Ashish Patel CLA 2007-05-09 14:12:55 EDT
It sounds to me that the Eclipse projects should be pressuring the Eclipse Platform group to consider the size for their bundle.  I've seen the platform grow from 70MB to its now whopping 138MB.  I assume the TPTP PMC has some hooks into doing this?

The other question is is there an Eclipse Runtime rather than an Eclipse SDK package.  Like TPTP, the SDK packages are much larger than the runtime packages.  If they do, shouldn't it be used?  if not, shouldn't the Eclipse platform group be making one? 

Looking at: http://fullmoon.torolab.ibm.com/downloads/drops/R-3.2.2-200702121330/
a) I see an Eclipse SDK - 121MB
b) Various runtime packages (Platform Runtime Binary is 34MB + JDT Runtime Binary is 20 MB + PDE Runtime Binary is 6MB = 60 MB)  --- Why isn't this packaging used in the TPTP all in one driver, this way we've cut out almost 100 MB from the TPTP runtime driver.
c) I'm sure EMF and anything else TPTP depends on has a Runtime binary library.

PS. Tetris rulz!
Comment 3 Sorin Stoian CLA 2007-05-09 14:33:29 EDT
The TPTP all-in-one packages are big because they include the Eclipse sdk and the EMF runtimes. Some users prefer to get a big file instead of searching for what they really need. As Valentina said the TPTP runtime is not that big.

I was about to say you should be playing tetris or pacman if they're under 200MB :)
Comment 4 Valentina Popescu CLA 2007-05-09 15:17:31 EDT
I'll let the build team answer the question on why we don't package the platform,emf runtime instead of sdk. From a consuming product view since this is where you come from, this shouldn't be a major issue though since they are not using the tptp dependencies offered through the tptp download page.

TPTP PMC has no hidden power to go and tell the platform get on a diet. This type of comments are much better received through newsgroups, mailing lists and should come from concerned users, as you are
Comment 5 Ashish Patel CLA 2007-05-09 15:28:09 EDT
What about non-IBM product consumers? Can't leave them out.

I believe the existing TPTP All in one is supposed to have the TPTP Runtimes so its already useless to someone who wants to extend TPTP since it doesn't have the SDK.  If I'm wrong and teh all in one has the SDK, this wasn't the original intention of my redesign of the download page - it was meant to be a runtime all in one.

If someone needs the SDK they are clearly marked on teh download page - and this is probably needed by a developer anyways.  Perhaps your querying for an all in one Runtime zip and a all in one SDK (two separate packages for those particular users).

Valentina - too bad, I was hoping for some godly powers, but since Eclipse already has runtimes we won't need to exercise that path ;)
Comment 6 Harm Sluiman CLA 2008-01-10 16:11:39 EST
There are several things that can/should be done to reduce the footprint. I have started a few threads to removed unused prototype or dead code for example. 110s of K here and there add up. 

There is also an extreme waste of space by including the binaries for native code for multiple platforms. For example on WIN 32 box I don't need the linux or 64 bit binaries of the agent controller or the pi and ti agents etc.. An unscientific search showed a full 60% of the TPTP footprint can be removed on a WIN 32 installed.

All in one does bring a lot with it, but TPTP needs to do it's part as well ;-)
Comment 7 Joel Cayne CLA 2008-03-12 16:51:01 EDT
This defect is centralized around changes to the TPTP all-in-one package, so my suggestions will apply to this download only. There are no additional changes that could be made on a build/packaging side to the All TPTP plugins download to reduce size. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=184272 for updates to OS and Architecture filters added to the Agent Controller.

The all-in-one is made up of the Eclipse SDK, EMF Runtime, XSD Runtime and All TPTP Runtime plugins. 
Current packaging Windows all-in-one:
Eclipse SDK (3.5 M5 win32): 144 MB
EMF Runtime (2.4 M5): 4 MB
XSD Runtime (2.4 M5): 1 MB
TPTP Runtime (4.5 M5): 42 MB
Total: 191 MB

To reduce the size of the all-in-one we can make an Eclipse Runtime which will include the same functionality but exclude the source and isv docs. From the All TPTP Runtime plugin we can remove the platform specific AC plug-ins (e.g. Linux on Windows). The download link would be updated to specify runtime all-in-one and an update to the description indicating that Eclipse is a runtime package instead of SDK.
Proposed packaging Windows all-in-one:
Eclipse Runtime (3.5 M5 JDT, PDE, CVS, platform runtime): 74 MB
EMF Runtime (2.4 M5): 4 MB
XSD Runtime (2.4 M5): 1 MB
TPTP Runtime (4.5 M5 without org.eclipse.tptp.platform.ac.linux_*): 32 MB
Total: 111 MB
Comment 8 Ashish Patel CLA 2008-03-12 17:45:00 EDT
Thanks Joel, now my favourite profiler will take almost 1/2 the time to download than before!  Great improvement!
Comment 9 jkubasta CLA 2008-05-23 08:52:27 EDT
Deferral to future with PMC approval
Comment 10 Joshua Bowles CLA 2008-11-06 15:20:29 EST
Created attachment 117244 [details]
Use p2 to install only necessary eclipse components

Using this new method for creating the all-in-one, will bring the total size down to around 130-150MB.

Joel if you can review before the end of the week, please do.
Comment 11 Joel Cayne CLA 2008-11-07 15:50:42 EST
Are the Eclipse SDKs used? Please make use of the runtime for XSD to reduce size as well.
Comment 12 Joshua Bowles CLA 2008-11-07 16:05:10 EST
The eclipse SDK is used only as an installer, and using the runtime for xsd misses some features which were installed in the pre-p2 all-in-one. I can probably install the missing features separately, it will just require a few more installations.  Or if some or all of those missing features (xsd.encore.converter xsd.edit, xsd.editor, xsd.mapping, and xsd.mapping.editor) aren't required then I can switch to the runtime no problem.
Comment 13 Joel Cayne CLA 2008-11-07 16:19:05 EST
There is no XSD runtime feature, rather the one you list is the parent feature for that component. The XSD runtime is made up of the various runtime features.

I do not see the reference to use the SDK for the installer in your patch.
Comment 14 Joshua Bowles CLA 2008-11-07 16:34:36 EST
You don't see it because I just switched which eclipses get unzipped to where.
I.E.
Old Way: unzip linux sdk for a build base, make a copy of the SDK for the allinone to install into and unzip a linux platform to do the installing.
New Way:unzip linux sdk for a build base, make a copy of the SDK to do the installing  and unzip a linux platform for the allinone to install into.
Complicated I know.

And I'll change it so that I install all the xsd features individually then.
Comment 15 Joshua Bowles CLA 2008-11-10 13:11:03 EST
Created attachment 117460 [details]
Breaks up the xsd.sdk into its runtime components and fixes a problem with the windows platform unzip
Comment 16 Joel Cayne CLA 2008-11-10 13:48:56 EST
Patch checked into HEAD.
Comment 17 Joshua Bowles CLA 2008-11-10 14:13:22 EST
Created attachment 117469 [details]
forgot to add the changes to build.properties
Comment 18 Joel Cayne CLA 2008-11-10 14:30:18 EST
Patch applied.
Comment 19 Paul Slauenwhite CLA 2010-03-10 08:34:17 EST
As of TPTP 4.6.0, TPTP is in maintenance mode and focusing on improving quality by resolving relevant enhancements/defects and increasing test coverage through test creation, automation, Build Verification Tests (BVTs), and expanded run-time execution. As part of the TPTP Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes), this enhancement/defect is verified/closed by the Project Lead since this enhancement/defect has been resolved and unverified for more than 1 year and considered to be fixed. If this enhancement/defect is still unresolved and reproducible in the latest TPTP release (http://www.eclipse.org/tptp/home/downloads/), please re-open.