Reduce memory consumption when consolidating systems
We are in the process of consolidating all our DEV and QAS systems to one physical system (HP Super dome).
We are consolidate more then 20 SAP instances (Java and ABAP) to on physical system.
The question now is, how to setup the memory requirements (all instance are 64bit and Unicode), during the installation of those instances we defined 4GB for a ABAP instances and 2 GB for a Java instance (Abap+Java 6GB).
In our situation we need around 90GB of main memory.
Does any one have a suggestion how to reduce this amount of memory.
Because this are all DEV and QAS systems and not all the systems are used at the same time. Is it possible to swapout allocated memory for instances which are not used.
Kind Regards,
Evert Schuiteman
Hi Evert
Because this are all DEV and QAS systems and not all the systems are used at the same time. Is it possible to swapout allocated memory for instances which are not used.
This is possible theoretically, but even if no user is connected and no application job is running, there is still activity on a system, so the only way to free ressources is to stop a system when it is not needed. As memory is cheap, you should rather buy more, than running low on it. If the server starts paging, the sap systems will practically freeze.
You should not forget about the database memory, you will need at least another 2gb for every database.
In my opinion, you should not consider running 20 instances on one server (hard partition on superdomes). We still have several hard partitions on our superdomes running up to 4 sap instances / databases per partition. I strongly suggest to have a "rolling" consolidation, speaking you add systems one after another. This gives you the possibilty to react if any component becomes a bottleneck.
Regards
Michael
Similar Messages
-
Excessive memory consumption when loading Customers through Component Inter
Hi All,
I'm facing a big problem with the high memory consumption when loading Customers, Companies and Sites using the Component Interfaces delivered by the product (RD_CONSUMER_CI_API, RD_COMPANY_CI_API, RD_SITE_CI_API) within Application Engine programs. I'm loading about 7 million customers, an amount that is not so big in my opinion, but the memory consume is too high.
We have 3 Batch Servers, each one running under Red Hat OS with 32 GB RAM memory plus 32 GB Swap memory in each server. We are running 2 Process by Server and with a day and half the servers crash with 100% of memory consumed (RAM and SWAP).
There's a good pratice to use Component Interface in a heavy load process?
There are parameters in the process scheduler configuration file that could help to reduce the memory consumption?
There's a way to free the memory through PeopleCode or by running another process?
Thanking you in advance.You may want to try and cut down on the input data to ascertain that the load might be a problem.
You may try and use the GarbageCollector, but might not help in your case.
To get an idea of the size allocated in buffer for the Rowset being used, you may want to check out the memory overhead ...
Also, could check, which is the process that is consuming a lot of memory -
Memory consumption when computer locked?
I noticed something strange with my app. If I leave it open and switch to login screen, it's memory consumption raises up to gigabyte. I discover this in Activity Monitor when logging in back. But just after I logged back in, process's working set size begins slowly going back to normal, and then there're no leaks reported, and app works just normal.
Other apps dont issue this. Besides ordinary Cocoa GUI, my app makes use of multithreading, sockets and webcam capture (sequence grabber).
Looks like there's something specific to fast user switching feature that I don't know, maybe some buffer is infinitely filled until there's chance to display, or something.
Does anyone have idea what it could be?
Message was edited by: kasymAnother point that I wanted to mention...
As a mentioned, we are looping with our application through a resultset and "processing" each record. If we simply disconnect the sqlca object (the transaction object the PowerBuilder application uses to connect to the database) and then simply re-connect, say, every 100 records or so... the problem goes away. We simply disconnect, re-connect, and pick up at the point where we left off. This shows me the memory gets flushed every time the session is disconnected.
This is the effect that I want... for the memory to be flushed every so many records, so it can continue looping through each record in the resultset as if it were doing the first one each time. I understand there may be a performance impact as it flushes the memory for each record (or every hundred or so), but I'm willing to sacrifice that to keep it from running out of memory altogether.
I'd appreciate feedback on this point. -
How to reduce memory usage when loading bitmaps from the library?
When I use BitmapData.loadBitmap() to load an image from the library and then attachBitmap() to add it to a MovieClip it takes a lot more memory as opposed to just having the same image inside a MovieClip statically in a frame on it's timeline.
The function dispose() not only clears the BitmapData object but also destroys the previously attached bitmap inside the MovieClip, so it can not be used to free any memory.
Is it how it is supposed to be or is there any other way to dynamically attach bitmaps with memory usage comparable to just having them on stage?no, you use attachMovie() to create instance from library movieclips that have a linkage id.
you can then create a bitmapdata instance and use the draw() method to overlay as many as needed. -
High memory consumption in XSL transformations (XSLT)
Hello colleagues!
We have the problem of a very high memory consumption when transforming XML
files with CALL TRANSFORMATION.
Code example:
CALL TRANSFORMATION /ipro/wml_translate_cls_ilfo
SOURCE XML lx_clause_text
RESULT XML lx_temp.
lx_clause_text is a WordML xstring (i.e. it is a Microsoft Word file in XML
format) and can therefore not be easily splitted into several parts.
Unfortunately this string can get very huge (e.g. 50MB). The problem is that
it seems that CALL TRANSFORMATION allocates memory for the source and result
xstrings but doesn't free them after the transformation.
So in this example this would mean that the transformation allocates ~100MB
memory (50MB for source, ~50MB for result) and doesn't free it. Multiply
this with a couple of transformations and a good amount of users and you see
we get in trouble.
I found this note regarding the problem: 1081257
But we couldn't figure out how this problem could be solved in our case. The
note proposes to "use several short-running programs". What is meant with
this? By the way, our application is done with Web Dynpro for ABAP.
Thank you very much!
With best regards,
Mario DüsselHi,
q1. how come the Ram consumption is increased to 99% on all the three boxes?If we continue with the theory that network connectivity was lost between the hosts, the Coherence servers on the local hosts would form their own clusters. Prior to the "split", each cache server would hold 1/12 of the primary and 1/12 of the backup (assuming you have one backup). Since Coherence avoids selecting a backup on the same host as the primary when possible, the 4 servers on each host would hold 2/3 of the cache. After the spit, each server would hold 1/6 of the primary and 1/6 of the backup, i.e., twice the memory it previously consumed for the cache. It is also possible that a substantial portion of the missing 1/3 of the cache may be restored from the near caches, in which case, each server would then hold 1/4 of the primary and 1/4 of the backup, i.e., thrice the memory it previously consumed for the cache.
q2: where is the cache data stored in the coherence servers?on which memory?The cache data is typically stored in the jvm's heap memory area.
Have you reviewed the logs?
Regards,
Harv -
High Java memory consumption.
Hello,
We are developing a solution using Servoy, which is a database server framework built in java. We have now 2 Servoy instances running on Debian linux servers, one with 64bit, both of them running java 1.6 update 26. We are having lot of crashes of the server with this error log:
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 32776 bytes for Chunk::new
# Possible reasons:
# The system is out of physical RAM or swap space
# In 32 bit mode, the process size limit was hit
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Use 64 bit Java on a 64 bit OS
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# This output file may be truncated or incomplete.
# Out of Memory Error (allocation.cpp:317), pid=12359, tid=1777961872
# JRE version: 6.0_26-b03
# Java VM: Java HotSpot(TM) Server VM (20.1-b02 mixed mode linux-x86 )
--------------- T H R E A D ---------------
Current thread (0x092c8400): JavaThread "C2 CompilerThread1" daemon [_thread_in_native, id=12368, stack(0x69f18000,0x69f99000)]
Stack: [0x69f18000,0x69f99000], sp=0x69f95fe0, free space=503k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V [libjvm.so+0x7248b0]
We checked both the heap memory and the memory used by java in this case and we notice a highly increase of the total java memory, while the heap memory is resonable:
JVM Information
java.vm.name=Java HotSpot(TM) Server VM
java.version=1.6.0_26
java.vm.info=mixed mode
java.vm.vendor=Sun Microsystems Inc.
Operating System Information
os.name=Linux
os.version=2.6.29-xs5.5.0.17
os.arch=i386
System Information
Heap memory: allocated=141440K, used=105555K, max=699072K
None Heap memory: allocated=49312K, used=49018K, max=180224K
root 16388 2.5 43.0 2829220 1811772 ? Sl 20:11 3:43 java -Djava.awt.headless=true -Xmx768m -Xms128m -XX:MaxPermSize=128m -classpath .:lib/ohj-jewt.jar:lib/MRJAdapter.jar:lib/compat141.ja
Right now we are running it on the 64bit machine with -Xmx256m -Xms64m, and the memory is the same as on the 32bit one.
We also tried different memory configurations, but the result is the same. Java goes up to more the 2GB of memory used, while the heap is about 100MB - 400MB. In the output above you can see 1.8GB used, but this is at startup, after few hours it goes to more then 2GB - 2.5GB, then it crashes in at most few days, sometimes in few hours or even less.Can the profiler see more then the heap? OK, I'll try to profile the server.
Servoy uses Tomcat 5.
The OS we run on is Debian. The 64bit machine is this:
JVM Information
java.vm.name=Java HotSpot(TM) 64-Bit Server VM
java.version=1.6.0_26
java.vm.info=mixed mode
java.vm.vendor=Sun Microsystems Inc.
Operating System Information
os.name=Linux
os.version=2.6.32-5-amd64
os.arch=amd64
and the current memory usage is this:
System Information
Heap memory: allocated=253440K, used=228114K, max=253440K
None Heap memory: allocated=112512K, used=112223K, max=180224K
, while the java process memory is this:
root 11629 6.9 44.4 2105640 1829808 hvc0 Sl 11:42 14:18 java -Djava.awt.headless=true -Xmx256m -Xms64m -XX:MaxPermSize=128m -classpath .:lib/ohj-jewt.jar:lib/MRJAdapter.jar:lib/compat141.jar:lib/commons-codec.jar:lib/commons-httpclient.jar:lib/activation.jar:lib/antlr.jar:lib/commons-collections.jar:lib/commons-dbcp.jar:lib/commons-fileupload-1.2.1.jar:lib/commons-io-1.4.jar:lib/commons-logging.jar:lib/commons-pool.jar:lib/dom4j.jar:lib/help.jar:lib/jabsorb.jar:lib/hibernate3.jar:lib/j2db.jar:lib/j2dbdev.jar:lib/jdbc2_0-stdext.jar:lib/jmx.jar:lib/jndi.jar:lib/js.jar:lib/jta.jar:lib/BrowserLauncher2.jar:lib/jug.jar:lib/log4j.jar:lib/mail.jar:lib/ohj-jewt.jar:lib/oracle_ice.jar:lib/server-bootstrap.jar:lib/servlet-api.jar:lib/wicket-extentions.jar:lib/wicket.jar:lib/wicket-calendar.jar:lib/slf4j-api.jar:lib/slf4j-log4j.jar:lib/joda-time.jar:lib/rmitnl.jar:lib/networktnl.jar com.servoy.j2db.server.ApplicationServer
About another app, I'm confused, because we do have another java app that uses much less:
root 1149 0.3 2.1 843312 86988 ? Sl 10:16 0:58 java -Xmx512m -Xms128m -cp noaa_server.zip server.WebServer
and for this one, the heap is this:
Memory: total: 129892352, free: 114666408, maximum: 518979584
So yes, this one looks better. It uses 15MB from heap and 80MB in total from ram.
But still, I don't get it, how can the process memory be affected while the heap is much low?
Edited by: 897090 on Nov 14, 2011 6:35 AM
Edited by: 897090 on Nov 14, 2011 6:39 AM
Edited by: 897090 on Nov 14, 2011 6:40 AM -
Memory consumption is more with oracle database compared to Sybase
Hi,
We are executing the same java source code with backend sybase and the oracle database. But with oracle database it is consuming more memory than Sybase.
Currently using 11g R2 with ojdbc6.jar driver
can you please provide the information to optimize the memory consumption when using the oracle.
Thanks,
Nagarajuser12569889 wrote:
We are executing the same java source code with backend sybase and the oracle database. But with oracle database it is consuming more memory than Sybase. That is not saying anything at all.
What memory in Oracle? Shared pool? Buffer cache? PGA? UGA? Library cache? Something else?
What memory in Sybase did you compare it to?
What type of client-server connection to Oracle was made? Dedicated or shared?
What commands/method were used to determine the memory consumption in Oracle and then Sybase?
What serves as the baseline for comparison?
Comparing product A with product B is a COMPLEX thing to do. And IMO, beyond the abilities of the majority of developers - as they lack the technical expertise to extract usable metrics and correctly compare these between products that can work VERY differently.
And unless you can provide technical details to backup your claim that you are observing that "+Memory consumption is more with oracle database compared to Sybase+", I would say that you have no idea what you are actually observing and in no position to deduce that Oracle consumes more memory. -
Error when creating Task List: No Consolidation System found
All-
Configuring my Retrofit Scenario. My Project Landscape is maintained as following:
Dev(100) --> QA (200) --> Prod (300) with Retrofit (XXX)
Dev(XXX) --> QA 250
I am getting this error when I try to refresh the project or create a Task List
*No consolidation system found for <SID>-250 (project RETROFIT3)
Message no. /TMWFLOW/TRACK_N806*
If my QA client (250) is already maintained as a QA logical component. What else is missing?Hi,
I have done something similar and getting error /TMWFLOW/TRACK_N806
My Transport route looks something like
System GND ZGND > 300 System GNQ 300> 300 System GNP
Its a standard 3 system landscape with transport routes configured as mentioned above. I followed the write up as mentioned and have kept only one transport route but how do i create a transport route from GND-140 to GNQ-300 .
The layer ZGND has been associated with client 140 which is the development client here. The layer ZGND is the consolidation layer, how else should i associate it with the client 140.
Please advice.
Regards
Ankan -
Memory consumption per bpel process
Is there any way to monitor the memory consumed by each bpel process instance when it is running and also how much each components of this instance consumes.
We know about the top utility but it shows only the memory allocated to the opmn process and not by the individual bpel process. Also the threads page in the manage bpel domain also gives only the overall memory used by the opmn process and not a bpel instance by instance consumption. And sometimes even when no requests/instances are running this is showing a very high value to the tune of 400Mb.
So to summarize how to monitor the memory consumed by each bpel instance and also by each of the components in that instance.I think i was not clear earlier...we want to find out how much of the memory is being consumed by our process alone excluding the opmn system processes.We want to do this
because for huge payloads of the tune of 3Mb the system throws a out of memory java heap space exception. Increasing the heap space to 2Gb (earlier 1.5gb) solves the problem but we want to find out why so much memory is being consumed and what we can do to reduce this consumption.
We have done the normal tweakings like reducing audit levels,logging levels,reduce no of threads in the system and use of xdk transformations but they seem to be of little help.
Btwn our process uses a apps adapter would the transformations of xml to db objects use this memory?
Thanks,
Praveen. -
Memory consumption to high!!!
Hi SDN,
we've in SAP ECC 6.0 and we have already applyed SAP Zero Administration for Windows (SQL2005), when we start SAP System, it occupies about 8GB memory but 2 to 4 hours later it is consuming about 12GB (!!!!!) even if the system is not used by any user, it seems that memory is not released for other processes.
someone knows how can I reduce this memory consumption of a SAP System?
Thanks in advance, best Regards,
Pedro RodriguesHi,
thanks for you answers, this is win2003, i think MS KB 931308 is applyed but i'm not able to see it now, this is an ABAP stack only.
Regards,
Pedro -
How to measure memory consumption during unit tests?
Hello,
I'm looking for simple tools to automate measurement of overall memory consumption during some memory-sensitive unit tests.
I would like to apply this when running a batch of some test suite targetting tests that exercise memory-sensitive operations.
The intent is, to verify that a modification of code in this area does not introduce regression (raise) of memory consumption.
I would include it in the nightly build, and monitor evolution of summary figure (a-ah, the "userAccount" test suite consumed 615Mb last night, compared to 500Mb the night before... What did we check-in yesterday?)
Running on Win32, the system-level info of memory consumed is known not to be accurate.
Using perfmon is more accurate but it seems an overkill - plus it's difficult to automate, you have to attach it to an existing process...
I've looked in the hprof included in Sun's JDK, but it seems to be targetted at investigating problems rather than discovering them. In particular there isn't a "summary line" of the total memory consumed...
What tools do you use/suggest?However this requires manual code in my unit test
classes themselves, e.g. in my setUp/tearDown
methods.
I was expecting something more orthogonal to the
tests, that I could activate or not depending on the
purpose of the test.Some IDEs display mmeory usage and execution time for each test/group of tests.
If I don't have another option, OK I'll wire my own
pre/post memory counting, maybe using AOP, and will
activate memory measurement only when needed.If you need to check the memory used, I would do this.
You can do the same thing with AOP. Unless you are using an AOP library, I doubt it is worth additional effort.
Have you actually used your suggestion to automate
memory consumption measurement as part of daily builds?Yes, but I have less than a dozen tests which fail if the memory consumption is significantly different.
I have more test which fail if the execution time is siginificantly different.
Rather than use the setUp()/tearDown() approach, I use the testMethod() as a wrapper for the real test and add the check inside it. This is useful as different test will use different amounts of memory.
Plus, I did not understand your suggestion, can you elaborate?
- I first assumed you meant freeMemory(), which, as
you suggest, is not accurate, since it returns "an
approximation of [available memory]"freeMemory gives the free memory from the total. The total can change so you need to take the total - free as the memory used.
- I re-read it and now assume you do mean
totalMemory(), which unfortunately will grow only
when more memory than the initial heap setting is
needed.more memory is needed when more memory is used. Unless your test uses a significant amount of memory there is no way to measure it reliably. i.e. if a GC is perform during a test, you can have the test appear to use less memory than it consumes.
- Eventually, I may need to inlcude calls to
System.gc() but I seem to remember it is best-effort
only (endless discussion) and may not help accuracy.if you do a System.gc(); followed by a Thread.yield() at the start it can improve things marginally. -
How to reduce memory use on my iMac
How to reduce memory use on my iMac, OS X Yosemite, 2.7 GHz Intel Core i5
8 GB memory
Running very slowly, and the little spinning ball showing up.
How do I clean up my IMac please?
Should I use MacKeep or any clean up apps?When you see a beachball cursor or the slowness is especially bad, note the exact time: hour, minute, second.
These instructions must be carried out as an administrator. If you have only one user account, you are the administrator.
Launch the Console application in any of the following ways:
☞ Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
☞ In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
☞ Open LaunchPad and start typing the name.
The title of the Console window should be All Messages. If it isn't, select
SYSTEM LOG QUERIES ▹ All Messages
from the log list on the left. If you don't see that list, select
View ▹ Show Log List
from the menu bar at the top of the screen.
Each message in the log begins with the date and time when it was entered. Scroll back to the time you noted above.
Select the messages entered from then until the end of the episode, or until they start to repeat, whichever comes first.
Copy the messages to the Clipboard by pressing the key combination command-C. Paste into a reply to this message by pressing command-V.
The log contains a vast amount of information, almost all of it useless for solving any particular problem. When posting a log extract, be selective. A few dozen lines are almost always more than enough.
Please don't indiscriminately dump thousands of lines from the log into this discussion.
Please don't post screenshots of log messages—post the text.
Some private information, such as your name, may appear in the log. Anonymize before posting. -
So I've had this old 3000 J series - (J115 7388) that's been sitting doing nothing for a while, so I decided to convert it into a FreeNAS, I've stripped out the DVD, card readers, anything unneccesary to reduce power usage - on that theme I have a few questions...
1. Is there a setting in the BIOS to automate the fans as & when needed to make the system quieter & to reduce power consumption - there will be 2x 2tb WD green drives in there with an idle time of 5 mins, atm I'm using one 320GB HDD from an old laptop - the system won't be used 90% of the time & I'd like it to be able to react when needed rather than constantly be on
the specs http://support.lenovo.com/en_US/detail.page?LegacyDocID=MIGR-67129 say the fan is variable, but I can't see anything obvious in the BIOS, it did take me some time to find the boot order, so maybe I'm overlooking something
So that's my main question & this is the bonus
2. I know there's an Nvidia C51G chipset in there somewhere, is it possible to remove this, there's no GUI on the pc anymore, so again, & also anything else like sound, just to make it as efficient as possible & not to have any unessesary components using power
I have downloaded updated the latest BIOS (circa 2007) onto another pc from http://support.lenovo.com/en_US/downloads/detail.page?DocID=DS001014 - even if it does provide an update to what I already have - I did note 2007 already on the BIOS version, of course I can't run it to try to make a bootable usb as the downloaded exe is for XP
I'm having a little trouble with the Lenovo site UI, not sure if it's coding - the links to guides/docs/drivers/downloads on http://support.lenovo.com/en_US/guides-and-manuals/default.page?selector=expand just don't seem to be working for meAre you sure there are no trojans or viruses on laptop? Also lounch the task manager and check out the service or application with deranged CPU loading while the laptop is in the idle mode. What is the power usage in the idle mode?
x220 | i5-2520m | Intel ssd 320 series | Gobi 2000 3G GPS | WiFi
x220 | i5-2520m | hdd 320 | Intel msata ssd 310 series | 3G GPS | WiFi
Do it well, worse becomes itself
Русскоязычное Сообщество English Community Deutsche Community Comunidad en Español -
I have 24GB of RAM in my 64 bit Windows 7 system running on RAID 5 with an i7 CPU.
A while ago I updated from Premiere CS5 to CC and then from Premiere CC to CC 2014. I updated all my then current projects to the new version as well.
Most of the projects contained 1080i 25fps (1080x1440 anamorphic) MPEG clips originally imported (captured from HDV tape) from a Sony HDV camera using Premiere CS5 or CC.
Memory consumption during re-indexing.
When updating projects I experienced frequent crashes going from CS5 to CC and later going from CC to CC 2014. Updating projects caused all clips in the project to be re-indexed. The crashes were due to the re-indexing process causing excessive RAM consumption and I had to re-open each project several times before the re-index would eventually complete successfully. This is despite using the setting to limit the RAM consumed by Premiere to much less than the 24GB RAM in my system.
I checked that clips played; there were no errors generated; no clips showed as Offline.
Some Clips now Offline:Importer CC 2014
Now, after some months editing one project I found some of the MPEG clips have been flagged as "Offline: Importer" and will not relink. The error reported is "An error occurred decompressing video or audio".
The same clips play perfectly well in, for example, Windows Media Player.
I still have the earlier Premiere CC and the project file and the clips that CC 2014 importer rejects are still OK in the Premiere CC version of the project.
It seems that the importer in CC 2014 has a bug that causes it to reject MPEG clips with which earlier versions of Premiere had no problem.
It's not the sort of problem expected with a premium product.
After this experience, I will not be updating premiere mid-project ever again.
How can I get these clips into CC 2014? I can't go back to the version of the project in Premiere CC without losing hours of work/edits in Premiere CC 2014.
Any help appreciated. Thanks.To answer my own question: I could find no answer to this myself and, with there being no replies in this forum, I have resorted to re-capturing the affected HDV tapes from scratch.
Luckily, I still had my HDV camera and the source tapes and had not already used any of the clips that became Offline in Premiere Pro CC 2014.
It seems clear that the MPEG importer in Premiere Pro CC 2014 rejects clips that Premiere Pro CC once accepted. It's a pretty horrible bug that ought to be fixed. Whether Adobe have a workaround or at least know about this issue and are working on it is unknown.
It also seems clear that the clip re-indexing process that occurs when upgrading a project (from CS5 to CC and also from CC to CC 2014) has a bug which causes memory consumption to grow continuously while it runs. I have 24GB RAM in my system and regardless of the amount RAM I allocated to Premiere Pro, it would eventually crash. Fortunately on restarting Premiere Pro and re-loading the project, re-indexing would resume where it left off, and, depending on the size of the project (number of clips to be indexed), after many repeated crashes and restarts re-indexing would eventually complete and the project would be OK after that.
It also seems clear that Adobe support isn't the greatest at recognising and responding when there are technical issues, publishing "known issues" (I could find no Adobe reference to either of these issues) or publishing workarounds. I logged the re-index issue as a bug and had zero response. Surely I am not the only one who has experienced these particular issues?
This is very poor support for what is supposed to be a premium product.
Lesson learned: I won't be upgrading Premiere again mid project after these experiences. -
SQL Developer High Memory Consumption 3.2.20.09.87
Hello,
I have been using SQL developer for quite some time and had initially had problems in the past with high memory consuption when I use this tool.
I have received and applied advice from this forum and while it had helped a little, the majority of the high memory consuption remained an issue.
I finally got more time to dig around and try to specifically isolate where the problem seems to be coming from and here is what I found.
*1)* I have removed the Check for Updates feature
*2)* I have turned off many of the extensions except for DBA Navigator, Real Time SQL Monitoring, SearchBar and Snippet.
*3)* When I start a fresh SQL Developer Session and initiate a Oracle Connection the application consumes roughly 148 meg fo RAM
*4)* When I open my Windows Task Manager and watch the memory allocated to SQL Developer I notice it goes up when I move my mouse over the SQL Developer tool and When I run through menus at roughly 5k a second or so and the memory is never released back to the system.
*5)* When I run a Large SQL to the grid the memory jumps by about 100 meg or so and will continue to do so every time I repeat the SQL until SQL Developer consumes roughly 748 meg of RAM.
*6)* 748 Meg of RAM seems to be the number when SQL Developer (with one Oracle connection) no longer continues to consume more and then not return the memory to the system.
Is there a way to have SQL Developer automatically clear up it's active memory usage without closing it down and restarting it?
Why does SQL Developer continue to consume more and more memory just from moving your mouse over it and/or by navigating menus?
Here is my About Detail;
Oracle SQL Developer 3.2.20.09
Version 3.2.20.09
Build MAIN-09.87
Copyright © 2005, 2012 Oracle. All Rights Reserved.
IDE Version: 11.1.1.4.37.59.48
Product ID: oracle.sqldeveloper
Product Version: 11.2.0.09.87
Version
Component Version
========= =======
Java(TM) Platform 1.6.0_35
Oracle IDE 3.2.20.09.87
Properties
Name Value
==== =====
awt.toolkit sun.awt.windows.WToolkit
class.load.environment oracle.ide.boot.IdeClassLoadEnvironment
class.load.log.level CONFIG
class.transfer delegate
file.encoding Cp1252
file.encoding.pkg sun.io
file.separator \
ice.browser.forcegc false
ice.pilots.html4.ignoreNonGenericFonts true
ice.pilots.html4.tileOptThreshold 0
ide.AssertTracingDisabled true
ide.bootstrap.start 109707460930968
ide.build MAIN-09.87
ide.conf C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf
ide.config_pathname C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf
ide.debugbuild false
ide.devbuild false
ide.extension.search.path sqldeveloper/extensions:jdev/extensions:ide/extensions
ide.firstrun true
ide.java.minversion 1.6.0_04
ide.launcherProcessId 3276
ide.main.class oracle.ide.boot.IdeLauncher
ide.patches.dir ide/lib/patches
ide.pref.dir C:\Users\twilliams\AppData\Roaming\SQL Developer
ide.pref.dir.base C:\Users\twilliams\AppData\Roaming
ide.product oracle.sqldeveloper
ide.shell.enableFileTypeAssociation C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin\sqldeveloperW.exe
ide.splash.screen splash.gif
ide.startingArg0 C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin\sqldeveloperW.exe
ide.startingcwd C:\app\twilliams\product\11.2.0\client_3\SQLDEVELOPER\SQLDEVELOPER\BIN
ide.user.dir C:\Users\twilliams\AppData\Roaming\SQL Developer
ide.user.dir.var IDE_USER_DIR
ide.work.dir C:\Users\twilliams\Documents\SQL Developer
ide.work.dir.base C:\Users\twilliams\Documents
ilog.propagatesPropertyEditors false
java.awt.graphicsenv sun.awt.Win32GraphicsEnvironment
java.awt.printerjob sun.awt.windows.WPrinterJob
java.class.path ..\..\ide\lib\ide-boot.jar
java.class.version 50.0
java.endorsed.dirs C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\endorsed
java.ext.dirs C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\ext;C:\Windows\Sun\Java\lib\ext
java.home C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre
java.io.tmpdir c:\Temp\
java.library.path C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\app\twilliams\product\11.2.0\client_3\bin;C:\app\twilliams\product\11.2.0\client_3;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Lenovo\Access Connections\;C:\Program Files\WinMerge;C:\Program Files\ThinkPad\Bluetooth Software\;.
java.naming.factory.initial oracle.javatools.jndi.LocalInitialContextFactory
java.protocol.handler.pkgs oracle.jdevimpl.handler
java.runtime.name Java(TM) SE Runtime Environment
java.runtime.version 1.6.0_35-b10
java.specification.name Java Platform API Specification
java.specification.vendor Sun Microsystems Inc.
java.specification.version 1.6
java.util.logging.config.file logging.conf
java.vendor Sun Microsystems Inc.
java.vendor.url http://java.sun.com/
java.vendor.url.bug http://java.sun.com/cgi-bin/bugreport.cgi
java.version 1.6.0_35
java.vm.info mixed mode
java.vm.name Java HotSpot(TM) Client VM
java.vm.specification.name Java Virtual Machine Specification
java.vm.specification.vendor Sun Microsystems Inc.
java.vm.specification.version 1.0
java.vm.vendor Sun Microsystems Inc.
java.vm.version 20.10-b01
jdbc.driver.home /C:/app/twilliams/product/11.2.0/client_3/
jdbc.library /C:/app/twilliams/product/11.2.0/client_3/jdbc/lib/ojdbc6.jar
line.separator \r\n
oracle.home C:\app\twilliams\product\11.2.0\client_3\sqldeveloper
oracle.ide.util.AddinPolicyUtils.OVERRIDE_FLAG true
oracle.jdbc.mapDateToTimestamp false
oracle.translated.locales de,es,fr,it,ja,ko,pt_BR,zh_CN,zh_TW
oracle.xdkjava.compatibility.version 9.0.4
orai18n.library /C:/app/twilliams/product/11.2.0/client_3/jlib/orai18n.jar
os.arch x86
os.name Windows 7
os.version 6.1
path.separator ;
reserved_filenames con,aux,prn,lpt1,lpt2,lpt3,lpt4,lpt5,lpt6,lpt7,lpt8,lpt9,com1,com2,com3,com4,com5,com6,com7,com8,com9,conin$,conout,conout$
sqldev.debug false
sun.arch.data.model 32
sun.boot.class.path C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\resources.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\rt.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\sunrsasign.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\jsse.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\jce.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\charsets.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\lib\modules\jdk.boot.jar;C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\classes
sun.boot.library.path C:\app\twilliams\product\11.2.0\client_3\sqldeveloper\jdk\jre\bin
sun.cpu.endian little
sun.cpu.isalist pentium_pro+mmx pentium_pro pentium+mmx pentium i486 i386 i86
sun.desktop windows
sun.io.unicode.encoding UnicodeLittle
sun.java2d.ddoffscreen false
sun.jnu.encoding Cp1252
sun.management.compiler HotSpot Client Compiler
sun.os.patch.level Service Pack 1
user.country US
user.dir C:\app\twilliams\product\11.2.0\client_3\SQLDEVELOPER\SQLDEVELOPER\BIN
user.home C:\Users\twilliams
user.language en
user.name twilliams
user.timezone America/Los_Angeles
user.variant
windows.shell.font.languages
Extensions
Name Identifier Version Status
==== ========== ======= ======
Check For Updates oracle.ide.webupdate 11.1.1.4.37.59.48 Loaded
Code Editor oracle.ide.ceditor 11.1.1.4.37.59.48 Loaded
Component Palette oracle.ide.palette1 11.1.1.4.37.59.48 Loaded
Data Miner oracle.dmt.dataminer 11.2.1.1.09.87 Disabled by user
Database Connection Support oracle.jdeveloper.db.connection 11.1.1.4.37.59.48 Loaded
Database Object Explorers oracle.ide.db.explorer 11.1.1.4.37.59.48 Loaded
Database UI oracle.ide.db 11.1.1.4.37.59.48 Loaded
Diagram Framework oracle.diagram 11.1.1.4.37.59.48 Loaded
Diagram Javadoc Extension oracle.diagram.javadoc 11.1.1.4.37.59.48 Loaded
Diagram Thumbnail oracle.diagram.thumbnail 11.1.1.4.37.59.48 Loaded
Diff/Merge oracle.ide.diffmerge 11.1.1.4.37.59.48 Loaded
Extended IDE Platform oracle.javacore 11.1.1.4.37.59.48 Loaded
External Tools oracle.ide.externaltools 11.1.1.4.37.59.48 Loaded
File Support oracle.ide.files 11.1.1.4.37.59.48 Loaded
Help System oracle.ide.help 11.1.1.4.37.59.48 Loaded
History Support oracle.jdeveloper.history 11.1.1.4.37.59.48 Loaded
Import/Export Support oracle.ide.importexport 11.1.1.4.37.59.48 Loaded
Index Migrator support oracle.ideimpl.indexing-migrator 11.1.1.4.37.59.48 Loaded
JDeveloper Runner oracle.jdeveloper.runner 11.1.1.4.37.59.48 Loaded
JViews Registration Addin oracle.diagram.registration 11.1.1.4.37.59.48 Loaded
Log Window oracle.ide.log 11.1.1.4.37.59.48 Loaded
Mac OS X Adapter oracle.ideimpl.apple 11.1.1.4.37.59.48 Loaded
Navigator oracle.ide.navigator 11.1.1.4.37.59.48 Loaded
Object Gallery oracle.ide.gallery 11.1.1.4.37.59.48 Loaded
Oracle IDE oracle.ide 11.1.1.4.37.59.48 Loaded
Oracle SQL Developer oracle.sqldeveloper 11.2.0.09.87 Loaded
Oracle SQL Developer - 3rd Party Database Browsers oracle.sqldeveloper.thirdparty.browsers 11.2.0.09.87 Loaded
Oracle SQL Developer - APEX Listener Administration oracle.sqldeveloper.listener 11.2.0.09.87 Loaded
Oracle SQL Developer - Change Mangement oracle.sqldeveloper.em_cm 11.2.0.09.87 Loaded
Oracle SQL Developer - DBA Navigator oracle.sqldeveloper.dbanavigator 11.2.0.09.87 Loaded
Oracle SQL Developer - Database Cart oracle.sqldeveloper.dbcart 11.2.0.09.87 Loaded
Oracle SQL Developer - Extras oracle.sqldeveloper.extras 11.2.0.09.87 Loaded
Oracle SQL Developer - File Navigator oracle.sqldeveloper.filenavigator 11.2.0.09.87 Loaded
Oracle SQL Developer - Migrations Antlr3 Translator oracle.sqldeveloper.migration.translation.core_antlr3 11.2.0.09.87 Missing dependencies: oracle.sqldeveloper.migration
Oracle SQL Developer - Migrations Application Migration oracle.sqldeveloper.migration.application 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations Core oracle.sqldeveloper.migration 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations DB2 oracle.sqldeveloper.migration.db2 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations DB2 Translator oracle.sqldeveloper.migration.translation.db2 11.2.0.09.87 Missing dependencies: oracle.sqldeveloper.migration, oracle.sqldeveloper.migration.translation.core_antlr3
Oracle SQL Developer - Migrations Microsoft Access oracle.sqldeveloper.migration.msaccess 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations Microsoft SQL Server oracle.sqldeveloper.migration.sqlserver 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations MySQL oracle.sqldeveloper.migration.mysql 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations Sybase Adaptive Server oracle.sqldeveloper.migration.sybase 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations T-SQL Translator oracle.sqldeveloper.migration.translation.core 11.2.0.09.87 Missing dependencies: oracle.sqldeveloper.migration
Oracle SQL Developer - Migrations Teradata oracle.sqldeveloper.migration.teradata 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Migrations Teradata SQL Translator oracle.sqldeveloper.migration.translation.teradata_translator 11.2.0.09.87 Missing dependencies: oracle.sqldeveloper.migration, oracle.sqldeveloper.migration.translation.core
Oracle SQL Developer - Migrations Translation UI oracle.sqldeveloper.migration.translation.gui 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Object Viewer oracle.sqldeveloper.oviewer 11.2.0.09.87 Loaded
Oracle SQL Developer - Real Time SQL Monitoring oracle.sqldeveloper.sqlmonitor 11.2.0.09.87 Loaded
Oracle SQL Developer - Reports oracle.sqldeveloper.report 11.2.0.09.87 Loaded
Oracle SQL Developer - Scheduler oracle.sqldeveloper.scheduler 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Schema Browser oracle.sqldeveloper.schemabrowser 11.2.0.09.87 Loaded
Oracle SQL Developer - SearchBar oracle.sqldeveloper.searchbar 11.2.0.09.87 Loaded
Oracle SQL Developer - Security oracle.sqldeveloper.security 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Snippet oracle.sqldeveloper.snippet 11.2.0.09.87 Loaded
Oracle SQL Developer - Spatial oracle.sqldeveloper.spatial 11.2.0.09.87 Disabled by user
Oracle SQL Developer - TimesTen oracle.sqldeveloper.timesten 11.2.0.09.87 Disabled by user
Oracle SQL Developer - Tuning oracle.sqldeveloper.tuning 11.2.0.09.87 Loaded
Oracle SQL Developer - Unit Test oracle.sqldeveloper.unit_test 11.2.0.09.87 Disabled by user
Oracle SQL Developer - User Extensions Support oracle.sqldeveloper.userextensions 11.2.0.09.87 Loaded
Oracle SQL Developer - Worksheet v2 oracle.sqldeveloper.worksheet 11.2.0.09.87 Loaded
Oracle SQL Developer - XML Schema oracle.sqldeveloper.xmlschema 11.2.0.09.87 Loaded
Oracle SQL Developer Data Modeler oracle.datamodeler 3.1.4.710 Disabled by user
Oracle SQL Developer Data Modeler - Reports oracle.sqldeveloper.datamodeler_reports 11.2.0.09.87 Disabled by user
PROBE Debugger oracle.jdeveloper.db.debug.probe 11.1.1.4.37.59.48 Loaded
Peek oracle.ide.peek 11.1.1.4.37.59.48 Loaded
Persistent Storage oracle.ide.persistence 11.1.1.4.37.59.48 Loaded
Property Inspector oracle.ide.inspector 11.1.1.4.37.59.48 Loaded
QuickDiff oracle.ide.quickdiff 11.1.1.4.37.59.48 Loaded
Replace With oracle.ide.replace 11.1.1.4.37.59.48 Loaded
Runner oracle.ide.runner 11.1.1.4.37.59.48 Loaded
VHV oracle.ide.vhv 11.1.1.4.37.59.48 Loaded
Versioning Support oracle.jdeveloper.vcs 11.1.1.4.37.59.48 Disabled by user
Versioning Support for Subversion oracle.jdeveloper.subversion 11.1.1.4.37.59.48 Missing dependencies: oracle.jdeveloper.vcs
Virtual File System oracle.ide.vfs 11.1.1.4.37.59.48 Loaded
Web Browser and Proxy oracle.ide.webbrowser 11.1.1.4.37.59.48 Loaded
XML Editing Framework IDE Extension oracle.ide.xmlef 11.1.1.4.37.59.48 Loaded
audit oracle.ide.audit 11.1.1.4.37.59.48 Loaded
classpath: protocol handler extension oracle.jdeveloper.classpath 11.1.1.0.0 Loaded
jdukshare oracle.bm.jdukshare 11.1.1.4.37.59.48 Loaded
mof-xmi oracle.mof.xmi 11.1.1.4.37.59.48 Loaded
oracle.ide.dependency oracle.ide.dependency 11.1.1.4.37.59.48 Loaded
oracle.ide.indexing oracle.ide.indexing 11.1.1.4.37.59.48 Loaded
palette2 oracle.ide.palette2 11.1.1.4.37.59.48 Loaded
status oracle.ide.status 11.1.1.4.37.59.48 Loaded
Thanks in advance...
Tom
Edited by: ERPDude on Feb 28, 2013 2:46 PMAces!!! You nailed it Gary...
Thank you.
I applied fixed noted in Re: Reduce SQLDeveloper memory footprint with JDK 1.7
For others, to summarize my changes.
product\11.2.0\client_3\sqldeveloper\sqldeveloper\bin\sqldeveloper.conf
AddVMOption -XX:+UnlockExperimentalVMOptions
AddVMOption -XX:+UseG1GC
AddVMOption -XX:MaxGCPauseMillis=50
AddVMOption -XX:GCPauseIntervalMillis=200
AddVMOption -XX:MaxPermSize=128M
AddVMOption -Xms50M
AddVMOption -Xmx384M
AddVMOption -XX:MinHeapFreeRatio=10
AddVMOption -XX:MaxHeapFreeRatio=10
product\11.2.0\client_3\sqldeveloper\ide\bin\ide.conf
comment the following two lines as shown below
#AddVMOption -Xmx640M
#AddVMOption -Xms128M
Now SQL Developer runs at roughly 500 meg.
I guess the only thing I have left to ask others reviewing this would be if there is a way to get these memory values down without having much adverse impacts on SQL Developer based on newer JVM switches/functionalities.
The posts that drove these changes are old from a technologoical perspective :) 2010.
Tom
Maybe you are looking for
-
Updating Vendor Batch at Purchase Order creation
Hi, Can someone find me a user exit to, Populate vendor batch #(LICHA) based on some logical condition in PBO of PO details at Material data tab. Thanks, Sandeep
-
Hi: I believe that in the forum we tend to post "I need help. Please help" "Oracle has issues!", etc, kind of topics. I am going to try to change that and will start posting now and then my "Oracle Forms" success stories that will hopefully help us a
-
Product not listed on my account
Bought PS elements some years back. Upgraded online to PSE some months back. Computer crash led to full reload of all programmes but cannot find product key for PSE 12. My account does not show purchase of PSE 12. Any suggestions?
-
Will outlook pc multiple categories be supported when syncing to apple contacts via iCloud ?
I ve got contacts with multiple categories in outlook 2007 on a pc, i would love them to be grouped in my contacts on apple imac, ipad, iphone... I use icloud to do the syncing (i ve installed icloud control panel on the pc) and i also turned contact
-
How to restore deleted manual conditions from sales order?
Hello Experts, I have a situation where one of the users did a mass change on many sales orders. As part of this mass change, re-pricing was done and that deleted all manual conditions which are applied on each sales order item level. Is there a way