This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 215226

Summary: out of memory with Linux Kernel in 2Gb heap
Product: cnd Reporter: wbrana <wbrana>
Component: -- Other --Assignee: Egor Ushakov <gorrus>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: 7.2   
Hardware: PC   
OS: Linux   
Issue Type: DEFECT Exception Reporter:
Bug Depends on:    
Bug Blocks: 123872    

Description wbrana 2012-07-06 09:44:41 UTC
1. download and unpack linux kernel source code http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.4.4.tar.xz
2. start NB with -J-Xmx2048m
3. create new project with existing source code
memory usage exceeds 2 GB and out of memory error occurs
Comment 1 nnnnnk 2012-07-06 10:47:30 UTC
2Gb is ok for bzImage, but for modules you'd need another 3Gb.
You could try to create project with "make bzImage".
Comment 2 wbrana 2012-07-06 11:21:49 UTC
I tried 32-bit Qt Creator and it needs only 1.5 GB for complete source.
Comment 3 wbrana 2012-07-26 14:25:13 UTC
Qt Creator works fine.
Comment 4 Leonid Lenyashin 2012-07-26 18:40:45 UTC
I'd like to keep it open. We are actively working on memory footprint reduction and this case is interesting.
I'd appreciate if you try development bits from
http://bits.netbeans.org/download/trunk/nightly/latest/
and let us know how it works for you.
Comment 5 wbrana 2012-07-27 14:52:30 UTC
According to http://en.wikipedia.org/wiki/Java_performance
it isn't possible for Java application to have same memory usage as C++ application.
Comment 6 wbrana 2012-07-27 18:28:47 UTC
I tried to write same application in Java and C++ with maximal optimization.
Java version takes 3 times more memory and run 3 times slower than C++ version.
Comment 7 wbrana 2012-07-27 19:57:02 UTC
One of reasons of low memory usage of C++ application was using memory mapped files for storing temporary data, which can't be used in Java application because it increased run time to 7 times because Java doesn't support pointers.
Comment 9 Vladimir Voskresensky 2012-07-31 12:39:48 UTC
Nik, could you, please, check the current memory cunsumption. It should be significantly less
Comment 10 nnnnnk 2012-08-02 10:33:31 UTC
Now with "-J-XX:SoftRefLRUPolicyMSPerMB=10" flag it takes 3Gb for complete source.
Comment 11 Vladimir Voskresensky 2012-08-23 12:25:07 UTC
Nik, could you, please, check the current memory cunsumption.
Thanks!
Comment 12 nnnnnk 2012-08-31 11:41:31 UTC
Now with "-J-XX:SoftRefLRUPolicyMSPerMB=10" flag it takes 1.3Gb for complete
source!
Comment 13 nnnnnk 2012-08-31 13:49:18 UTC
And 1.5 without any additional flags.
Comment 14 Vladimir Voskresensky 2012-08-31 14:14:46 UTC
Thanks. So, without any extra flags it's on par with Qt Creator now. Great job done!