Re: GWT Compilation Out Of Memory
Some quick observations from the docx: The bulk of your split points are sized pretty well, but if you can save the compiler work on those tiny ones and delete/merge them, that would be ideal, and may well help your leftovers. That leftovers is quite large, but not totally out of control at least - only about 10-15% of the total JS output that a browser might run, but it does mean that in order to do anything you: * first download the .cache.html (a little over 5mb), start to use it, then for any one split point, * download entire leftovers chunk (11.5mb), then finally * download the specified split point Without knowing your application, I don't know if ~13mb is okay to download just to start using it, or how much separation there is between each split point - if you can be confident that a user in one split point will ever visit another, etc. If the user will typically visit many of them, this is probably okay, if they will just use one or two I'd want to look into different ways of structuring things. Seeing A, B, C, D sizes of your RPC services almost certainly points to the RPC situation that I had described, suggesting something like 90% overlap between so many RPC services is almost certainly points to a mistake in your RPC services or beans. Look for params in RPC services or fields in RPC beans that use raw generics, that reference Serializable or Comparable or some other abstract supertype with hundreds/thousands of subtypes. Easiest way to diagnose this would be to look over 580-590kb files and find one that you know should serialize fewer types than the giant list - you can search for the line saying "false, false, false, false" to find the exact RPC RemoteService implemented by that, then find some type which almost certainly doesnt belong there. From there you'll have to look over the types you _know_ belong there, and find the oversight. It is possible that you'll only have one or two things to fix for all of them (if it is one supertype that can just be modified slightly, like making it abstract or correcting some generics), but it may also be that you have many places to fix. To speed up compilation, try just adding to the main .gwt.xml, and see if that keeps your code sizes roughly the same (but should cut something like half to 3/4ths of your compiled time off?). I don't have time today to go over the code samples, but this should give you some starting points at least to investigate. On Thursday, March 14, 2019 at 10:07:53 AM UTC-5, Vineet Jaiswal wrote: > > where as no. of code lines are concerned I can give you only an approx. > figure. > > 1. client + shared there might be minimum 10,00,000 lines code approx. > 2. server there might be minimum 50,000 lines code approx. > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: GWT Compilation Out Of Memory
where as no. of code lines are concerned I can give you only an approx. figure. 1. client + shared there might be minimum 10,00,000 lines code approx. 2. server there might be minimum 50,000 lines code approx. -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: GWT Compilation Out Of Memory
please find all details asked by as word attachment & along with I am attaching sample code of client, server, shared as rar file -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout. project details.docx Description: MS-Word 2007 document guiConfig.rar Description: application/rar
Re: GWT Compilation Out Of Memory
Are you able to answer the other questions too? This looks like the same numbers that was in your last email. "Lines of code" refers to the sources that the developers write, not the generated JS. My reply also asked for more detail on the deferredjs contents, just the last file numerically in each directory (from which we can work out its relative size to the rest of the split points, the rest of the application). On Thursday, March 14, 2019 at 7:51:25 AM UTC-5, Vineet Jaiswal wrote: > > folders & files size generated in war are as follows: > >1. deferredjs folder contains 5 folders (441mb of js files >cumulative) >2. *.gwt.rpc 647 files (308mb cumulative) >3. *.cache.html 5 files (27.9mb cumulative) >4. *.nocache.js is 8kb >5. and other folders > > > On Thu, Mar 14, 2019 at 6:14 PM Frank > > wrote: > >> How 'large' is your application ? >> >> How many lines of code ? How many screens ? >> >> >> I can't imagine that a war file of 1.6GB is normal ? (unless it contains >> heeps of images/multimedia assets) >> >> -- >> You received this message because you are subscribed to the Google Groups >> "GWT Users" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to google-web-toolkit+unsubscr...@googlegroups.com . >> To post to this group, send email to google-we...@googlegroups.com >> . >> Visit this group at https://groups.google.com/group/google-web-toolkit. >> For more options, visit https://groups.google.com/d/optout. >> > > > -- > Regards > Vineet Jaiswal > [Project Manager] > Dataman Computer Systems Pvt. Ltd. > > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: GWT Compilation Out Of Memory
folders & files size generated in war are as follows: 1. deferredjs folder contains 5 folders (441mb of js files cumulative) 2. *.gwt.rpc 647 files (308mb cumulative) 3. *.cache.html 5 files (27.9mb cumulative) 4. *.nocache.js is 8kb 5. and other folders On Thu, Mar 14, 2019 at 6:14 PM Frank wrote: > How 'large' is your application ? > > How many lines of code ? How many screens ? > > > I can't imagine that a war file of 1.6GB is normal ? (unless it contains > heeps of images/multimedia assets) > > -- > You received this message because you are subscribed to the Google Groups > "GWT Users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to google-web-toolkit+unsubscr...@googlegroups.com. > To post to this group, send email to google-web-toolkit@googlegroups.com. > Visit this group at https://groups.google.com/group/google-web-toolkit. > For more options, visit https://groups.google.com/d/optout. > -- Regards Vineet Jaiswal [Project Manager] Dataman Computer Systems Pvt. Ltd. -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: GWT Compilation Out Of Memory
How much Java code goes into this? Combined file, line counts between shared and client packages? >From your .gwt.rpc files, My guess is that you have a huge amount of duplication between RPC interfaces. Improper use of supertypes, generics, interfaces, etc can cause the compiler to believe that much more is necessary to be compiled into each individual RPC service than actually is there. While people tend to suspect that List or Map or Set can cause this problem (and they can, if you subclass those yourself, but stock GWT plus guava doesn't actually have all that many collection types...), this is usually instead actually from a project's own interfaces or superclasses. For example, it is common to make a MyCompanyDTO or something, and to reference it like `List` here and there in the project. If that has hundreds or thousands of subtypes, each of those subtypes must be compiled in to every single rpc type, which multiplied by 647 is clearly a huge amount of code to generate, but usually any time this happens only a few possible subtypes even make sense there. More detail on what overlay exists between those files will help to clarify the issue. What is the size of the _last_ file in each deferredjs// directory? There will be 5 such directories, and these are the split points, except the very last file, which is the "leftovers". If the last numbered file is very large compared to the other, this points to misuse of split points, since that file is downloaded _before_ any other split point can even begin in the project, which is certainly not helpful in breaking up a large application. Given that this is about 100mb of code per browser permutation, and given that the sum of the RPC files is far larger than that, you almost certainly have a massive amount of RPC duplication - fixing this will decrease your total compiled size and probably reduce the work the compiler needs to do by at least some small degree. With that understood and resolved, I would then just attach a normal JVM profiler to see what sort of work the compiler is up to, and see if there is something specific to your project (pathological case of some general Generator? some custom Generator poorly implemented?) that could directly be improved. Turning off browser permutations would probably tell a lot too depending on what that does to compile times - is most of the time spent working on generating those permutations? How much of a hit to compiled sizes do you take in that process? etc. It might also be helpful to know if there is anything else on this system causing it to be slow, like some antivirus trying to scan while the compiler runs and generates new code. Lacking other detail from these questions, 8 hours sounds at least 7 hours too long to me on modern hardware. That processor looks to be about 3 years old from a quick search, but I'd expect that it should still be more than enough for this job. On Thursday, March 14, 2019 at 5:21:13 AM UTC-5, Vineet Jaiswal wrote: > > 1. is there any relation between split points & *.cache.html files. > 2. what should be the supposed ideal time of compilation for my > application. as I have mentioned the size of war generated after > compilation & keeping the system configuration in mind. > > folders & files size generated in war files are as follows: > >1. deferredjs folder contains 5 folders (441mb of js files >cumulative) >2. *.gwt.rpc 647 files (308mb cumulative) >3. *.cache.html 5 files (27.9mb cumulative) >4. *.nocache.js is 8kb >5. and other folders > > > > On Thursday, March 14, 2019 at 3:33:18 PM UTC+5:30, Vineet Jaiswal wrote: >> >> GWT version: 2.6.1 >> Browser (with version): any >> Operating System: Windows >> -- >> >> My Application is producing 1.6GB of war file and taking 7 to 8 hrs. for >> complete build of 5 permutation. >> configuration of machine on which we are compiling is: >> OS: windows server 2012 R2 >> RAM: 64GB >> Processor: Intel R ZEON R CPU E3-1225 V5 >> Core : 4 >> >> >> we have defined gwt compile parameters as follows: >> GWT Compiler JVM Arguments: -Xmx61440M >> GWT Dev Mode JVM Arguments: -Xmx61440M >> GWT Test JVM Arguments: -Xmx61440M >> >> >> >> we are facing two major problems: >> >>1. from last few days we are receiving out of memory error during >>compilation. >>2. it is taking very huge time to build. >> >> we wish our project could break into smaller sections (modules compiled >> individually separately) and bundled in a single war at the time of >> release. like we use multiple dlls and use it in single exe. and in case of >> changes in any dll we need not to build whole exe again instead we only >> compile a dll and deploy it to client. >> >> >> any suggestion \ help will be highly appreciated. >> >> >> thank you! >> > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe
Re: GWT Compilation Out Of Memory
How 'large' is your application ? How many lines of code ? How many screens ? I can't imagine that a war file of 1.6GB is normal ? (unless it contains heeps of images/multimedia assets) -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: GWT Compilation Out Of Memory
1. is there any relation between split points & *.cache.html files. 2. what should be the supposed ideal time of compilation for my application. as I have mentioned the size of war generated after compilation & keeping the system configuration in mind. folders & files size generated in war files are as follows: 1. deferredjs folder contains 5 folders (441mb of js files cumulative) 2. *.gwt.rpc 647 files (308mb cumulative) 3. *.cache.html 5 files (27.9mb cumulative) 4. *.nocache.js is 8kb 5. and other folders On Thursday, March 14, 2019 at 3:33:18 PM UTC+5:30, Vineet Jaiswal wrote: > > GWT version: 2.6.1 > Browser (with version): any > Operating System: Windows > -- > > My Application is producing 1.6GB of war file and taking 7 to 8 hrs. for > complete build of 5 permutation. > configuration of machine on which we are compiling is: > OS: windows server 2012 R2 > RAM: 64GB > Processor: Intel R ZEON R CPU E3-1225 V5 > Core : 4 > > > we have defined gwt compile parameters as follows: > GWT Compiler JVM Arguments: -Xmx61440M > GWT Dev Mode JVM Arguments: -Xmx61440M > GWT Test JVM Arguments: -Xmx61440M > > > > we are facing two major problems: > >1. from last few days we are receiving out of memory error during >compilation. >2. it is taking very huge time to build. > > we wish our project could break into smaller sections (modules compiled > individually separately) and bundled in a single war at the time of > release. like we use multiple dlls and use it in single exe. and in case of > changes in any dll we need not to build whole exe again instead we only > compile a dll and deploy it to client. > > > any suggestion \ help will be highly appreciated. > > > thank you! > -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
GWT Compilation Out Of Memory
GWT version: 2.6.1 Browser (with version): any Operating System: Windows -- My Application is producing 1.6GB of war file and taking 7 to 8 hrs. for complete build of 5 permutation. configuration of machine on which we are compiling is: OS: windows server 2012 R2 RAM: 64GB Processor: Intel R ZEON R CPU E3-1225 V5 Core : 4 we have defined gwt compile parameters as follows: GWT Compiler JVM Arguments: -Xmx61440M GWT Dev Mode JVM Arguments: -Xmx61440M GWT Test JVM Arguments: -Xmx61440M we are facing two major problems: 1. from last few days we are receiving out of memory error during compilation. 2. it is taking very huge time to build. we wish our project could break into smaller sections (modules compiled individually separately) and bundled in a single war at the time of release. like we use multiple dlls and use it in single exe. and in case of changes in any dll we need not to build whole exe again instead we only compile a dll and deploy it to client. any suggestion \ help will be highly appreciated. thank you! -- You received this message because you are subscribed to the Google Groups "GWT Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at https://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout. compiler param & compilation error.docx Description: MS-Word 2007 document