SciChart® the market leader in Fast WPF Charts, WPF 3D Charts, and now iOS Charting & Android Chart Components

0
0

Hi,
some time ago we update our application used WPF chart v 3.1 to version 4.2.2.9744. Now we realize that the application uses much more memory as before, sometimes it doubles the memory usage. The worst issue is that memory is not release aver after unloading the data series and even after closing the Tab which contains the Chart. Because we need to deploy the Application even on pc with 2 GB RAM it becomes an issue for us. Please advise what could we check to make sure memory will be released after unloading the data series and closing the tab with chart.

Version
4.2.2.9744
  • Andrew
    Hi Andreas, we will need either code to reproduce the issue, or memory profiler results. Preferably the code — then we can investigate. Can you supply it please?
  • You must to post comments
0
0

Hi Andrew, thank you for your response. It will be hard to provide the code, since it a part of a huge application what displays the data from productions plants. I will try to extract the code to a stand alone application.

  • You must to post comments
0
0

I can only provide guesses without some way of reproducing the problem or understanding how you are using SciChart.

Some information that might help me includes:

  • Are you using Line series, Scatter series, other types?
  • Are you using DirectX, software renderers?
  • How many data-points are you appending?
  • What data-point data-types are you using? e.g. Double, float, int
  • Have you run a memory profiler over the app to see if there are any leaks?
  • Have you run a memory profiler over the app to see what are the largest objects in memory?

etc.. etc..

The only thing I can think of is SciChart v4 DataSeries now include Metadata – a configurable column which accepts any custom class tagged onto a point. This adds approx 50% more memory to XyDataSeries even if you are not using Metadata.

We do have a task on our board to not create Metadata memory if you are not using the feature. If this is your problem I have a workaround for you — but you will need to diagnose the problem first, then get in contact with support second to receive the workaround!

Best regards,
Andrew

  • You must to post comments
0
0

Thank you for your help,
We are using XY line series.
A reference to DirectX assembly is added to project, but I was not able to find any active usage of it.
Each series we display, has 1000 to 20000 points and user can select up to 10000 series to display. Also up to 200000000 data points.
We are using double data type.
Metadata explains why we use more memory. We need to find the memory leak to make sure the memory is released again, when user changes his selection. We will work with memory profiler, but it can tale long time since it is a huge application.

  • Andrew
    200000000 data points at double, double + metadata on a 32-bit system = 4.0GBytes memory required. Without metadata, it is still 3.2GBytes required. That many points is just not feasible on 2 Gigs of RAM even without the metadata column. Try to find the leak. Contact support, we can give you a workaround to remove the metadata column while we are building the feature here https://abtsoftware.myjetbrains.com/youtrack/issue/SC-4006 to turn it off in v5
  • You must to post comments
Showing 3 results
Your Answer

Please first to submit.