Test Setup.
To reduce as many factors as I could figure, I decided to start from scratch. I created a new veteran character and loaded him up on the "Heart of Wind" airship. There I had him delete his starter rags so he had no possessions.
I then restarted the client and recorded how much memory was consumed by simply logging in and logging out back to the character selection screen for this character.
Here the
Working Set Windows was showing allocated to the DnDClient executable (measured in KB).
Test Run Memory Allocated (KB)
01 434560
02 470116
03 477060
04 493816
05 488232
06 507420
07 524112
08 559740
09 546200
10 571972
During the test I didn't move the character/camera and simply waited for the Chat Windows to load. Once that was done I logged out.
The numbers above show two important things to me.
1. As with the previous test there is a noticeable increase in the amount of memory being consumed by the client. Since nothing really changes from one session to the other that would seem to indicate there is a leak of some sort going on.
2. Memory was deallocated during two of the test runs (05, 09). I am not sure what was relinquishing the memory (Windows or the DnD Client internally), but some memory was returned back to the operating system at this time.
All in all, the footprint for the client increased by over 130 MB from start to finish. For those folks who are running with less available memory such switching may be a significant problem and this may help explain why restarts of the client is necessary.
Again, this test was done on Windows 7 Professional (x64) with 8 GB RAM and no configured page file. All memory numbers represent actual physical memory usage (no page file).
Total System memory usage never went above 50% (i.e. At least 4 GB of RAM was available at all times during the test).
I don't think I'll have time to run any more tests tonight. If folks think of other things to try I might be able to try later this week.
Hope people find the data interesting.
Update: After doing some additional reading on Windows memory I thought I'd change the values from Committed Bytes to the recorded Values for the Working Set instead. This seems to be a more accurate picture of the memory usage on the system. ( Microsoft KB Article )