Announcement

Collapse
No announcement yet.

Memory Usage Question

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Memory Usage Question

    I have a small test program that tracks 40 real-time symbols and simply displays the symbol values. The program uses three functions RequestSymbol(), OnQuoteChange() and GetBasicQuote(). Below are the memory stats from the Windows XP Task Manager. This shows the memory every 10 minutes for half hour. Notice the PF Usage when up 19MB and the VM Size increased by 15,752K. Is this a memory leak or is this normal for the Desktop API?


    Time | PF Usage | Mem Usage | VM Size
    9:53am | 400MB | 10,652K | 3,952K
    10:03am | 406MB | 15,696K | 8,880K
    10:13am | 413MB | 21,404K | 14,604K
    10:23am | 419MB | 26,454K | 19,704K

  • #2
    Here are some more memory stats covering 1 hour every 10 minutes. The PF Usage added 41 MB and VM Size added 32600 K is one hour. Is this normal when using the Desktop API? This is a very simple program doing minimal real-time data collection with 40 NASDAQ symbols.


    Time | PF Usage | Mem Usage | VM Size
    12:13pm | 385 MB | 2,460 K | 4,124 K
    12:23pm | 389 MB | 7,056 K | 7,656 K
    12:33pm | 393 MB | 10,180 K | 10,744 K
    12:53pm | 404 MB | 19,452 K | 20,048 K
    1:03pm | 410 MB | 24,140 K | 24,700 K
    1:13pm | 416 MB | 28,400 K | 28,964 K
    1:23pm | 421 MB | 33,964 K | 33,624 K
    1:33pm | 426 MB | 36,200 K | 36,724 K

    Thanks

    Comment


    • #3
      Keep in mind that you are watching 40 actively traded stocks, memory size used by the application is bound to increase. This behavior is not necessarily caused by the Desktop API. You may want to review your application again to search for any potential area of resource leaks.

      Visual Basic however maintains it's own garbage collection routine at times. You can also run your application for a day and see if memory usage goes down.

      Comment


      • #4
        To A. Chan,

        I don't believe the issue is the Desktop API, I am just trying to understand what is normal behavior for a real-time program using eSiganl. Let's make sure I understand your answer. I have a very simple C++ application to test 3 functions RequestSymbol(), OnQuoteChange() and GetBasicQuote(). In this situation you are saying I should not see a memory build up through the day. Is that correct? So memory items like PF Usage and Mem Usage and VM Size should remain close to their starting values after several hours of collecting data. Is that correct?


        Thanks
        Patrick

        Comment


        • #5
          Indeed, memory buildup is normal. The key is to see if it goes down in time. As long as it is not causing any crashes throughout the day, I wouldn't worry too much about it. You can always restart your application on a regular basis.

          Comment

          Working...
          X