Page 1 of 1
Memory Usage grows on server restart
Posted: Wed May 05, 2010 12:29 pm
by dubs
Hi All,
Can anyone tell me why my Memory Usage grows when i restart my TM1 Server.
It was 824,180K and then i saved all data and restarted the service, the memory usage is now 1414180K so it has grown by almost 600000K!! Nothing has been changed or added so i can't work out why there is such a difference.
Any Ideas?
Cheers
Dubs
Re: Memory Usage grows on server restart
Posted: Wed May 05, 2010 5:51 pm
by rkaif
You must have loaded large amounts of data in the cube and now your TM1 Cube size have increased this may be the reason it is now consuming more memory. You are now consuming 1.34Gb which is not much (depends upon your Hardware)
Re: Memory Usage grows on server restart
Posted: Thu May 06, 2010 7:42 am
by dubs
I haven't loaded any data into the cubes- i literally just restarted the service and watch the memory usage grow...
anybody else have a suggestion as to what has caused this?
Re: Memory Usage grows on server restart
Posted: Thu May 06, 2010 7:52 am
by Kyro
The only time I've seen that is when the data changes weren't saved, so it calulates/loads the cubes or something when re-importing the TM1 transaction log (what was not committed). But you did say that you saved the server before restarting it so I'm stumped.
Re: Memory Usage grows on server restart
Posted: Thu May 06, 2010 8:37 am
by Steve Rowe
If you have changed nothing on the server then this would be a mystery.
A possible candidate would be a change in feeder behaviour.
For example if you have a consolidation on the right of a feeder. If you increase the number of elements in the consolidation then this would create more fed cells. Crucially the extra fed cells would not appear until the rules are saved or the server restarted.
If you can rule out changes to data then this implies either a rule or feeder change (or a bug...). For me a change in feeders as described above is more likely since a rule change would probably have an immediate effect.
HTH
Re: Memory Usage grows on server restart
Posted: Thu May 06, 2010 1:18 pm
by lotsaram
Steve Rowe wrote:A possible candidate would be a change in feeder behaviour.
One possible thing I can think of is that if the server previously loaded in single threaded mode and you changed to multi-threaded loading by implementing MaximumCubeLoadThreads in the tm1s.cfg file then this would cause feeders to be processed more than once (as each thread doesn't know what the others are doing). This would cause the server to load with more "memory in garbage". If you have spare memory it's harmless enough and could be worth it for the reduction in load time (... but in some instances the load time is actually faster single threaded due to greater efficiency in processing feeders! It depends on whether your model is data heavy or calculation heavy.)
This exception aside, I agree with everyone else. More memory = more data somewhere.
Re: Memory Usage grows on server restart
Posted: Thu May 06, 2010 4:25 pm
by stephen waters
Dubs,
How are you measuring the memory useage of the TM1 server? if you are you using the "Mem Useage" column in task manager you can get this behaviour. If so, look at the "VM Size" column instead.
Re: Memory Usage grows on server restart
Posted: Fri May 07, 2010 7:10 am
by Martin Erlmoser
dubs wrote:Hi All,
Can anyone tell me why my Memory Usage grows when i restart my TM1 Server.
It was 824,180K and then i saved all data and restarted the service, the memory usage is now 1414180K so it has grown by almost 600000K!! Nothing has been changed or added so i can't work out why there is such a difference.
Any Ideas?
Cheers
Dubs
how much garbage memory do you have after restarting?
Re: Memory Usage grows on server restart
Posted: Mon May 10, 2010 12:10 pm
by dubs
Hi All,
Sorry I've been away for a few days.
I think it is to do with Multi-threaded mode as Lotaram suggested, I changed the setting in the cfg file to 0 and now it only uses 670,732K
Background:
Basically it is feeders im messing about with, im using sysinternals Process Explorer to monitor mem usage and looking at the 'Working Set' column. I definitely have not been adding data so the 'data' must come from the changes in feeders (even though to make a change to a feeder you have to save the rule file and that should prompt the extra fed cells to consume more memory).
What I've been doing is starting with a blank rules file and adding my rules and feeders in groups and logging how much memory that group used. I've managed to isolate a group that consumed too much memory this way. What was happening was that after adding all rules and feeders back in i'd have a memory usage of say 824,180K. I'd then do a saveDataAll and restart the service, it was when it was restarted the mem usage grew so rapidly.
@ Martin Erlmoser
I don't know how to check fro Garbage Memory, could you tell me? this would be useful because i could work out what the actual memory usage was when using multi-threaded mode on start up.
Thanks for everyones comments- it's definitely helped me understand what was happening.
Dubs