DPlot Forum Index DPlot
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

dplotdll - array too big

Post new topic   Reply to topic    DPlot Forum Index -> Bug Reports
View previous topic :: View next topic  
Author Message

Joined: 17 Feb 2011
Posts: 4

PostPosted: Fri Aug 19, 2016 12:37 pm    Post subject: dplotdll - array too big Reply with quote


We have a VB.net app that plots in dplot (in use ~10 yrs). Lately, we have large data files (~2 Gb) that sometimes fail to plot. We don't try to plot all channels for the full recording, but even fairly reasonable selections hit Dplot limits. This is calling "DPlot_Plot" in the 64-bit dplotdll.dll w/ format "DATA_XYYY", "SCALE_LINEARX_LINEARY". In a test, w/ fixed 8,536,064 x-values, it plots 6 channels (51,216,384 y-values), but not 7 chans (59,752,448 y-values). The later shows "7 x 8536064" in status bar (correct), but doesn't move on to "Finding extents" w/ hourglass like 6 channels does. The screen is blank and "Hide Curves" lists only "0: Curve #0", which indicates it gave up. In several cases, I saw an "array error" box flash by. Plotting the 6 chans takes ~30 sec.

Hint: Try what I use on my VB side (found in a search). To enable "large arrays" in Windows 7 64-bit w/ Framework 4.5, in folder w/ dplot.exe, add file named "Dplot.exe.config" w/ xml lines below to request more RAM from Windows. You will get other xml entries if (like me) you start an "app.config" in the Visual Studio project, then manually add the <runtime> entry. If you "publish", you find it simply renames the "app.config" file to the exe name, as a flag for Windows. You don't need to "publish", indeed I don't since it buries the app files deep in each user's profile folders. I just copy the run files in Explorer from the project's "\bin" to a run folder. You will still be limited to arrays w/ 2 Gb elements (multiply indices if multi-dimensional), but Dplot is hanging long before that (my data array is fine on VB side: elements = 7 chan x 59,752,448 samples), so below may work. Actually, I can try simply adding this config file once I get on a PC w/ admin rights.

<?xml version="1.0"?> <configuration>
<runtime> <gcAllowVeryLargeObjects enabled="true" /> </runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/></startup></configuration>
Back to top
View user's profile Send private message
Site Admin

Joined: 24 Jun 2003
Posts: 2296
Location: Vicksburg, Mississippi

PostPosted: Sat Aug 20, 2016 8:55 am    Post subject: Reply with quote

Thanks for the tip on using more of the CPU. I was not aware of that.

I suspect the problem you're seeing is the file size, not the size of the arrays. I don't think DPlot will read a 2Gb+ file, but I'll have to look into this to know for sure.
David Hyde
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic    DPlot Forum Index -> Bug Reports All times are GMT - 5 Hours
Page 1 of 1

Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2001, 2005 phpBB Group