01-28-2008 02:33 AM
I 've thought about putting the arrays into a cluster, but this isn't going to be neat, and anyway by now I can just as well write some code for creating a ini file instead, it's not going to be more work.
Any better workarounds? Actually, what I'm currently writing is just clusters in clusters - it strikes me as odd that the openG guys think such slow perfomance is ok. I consequently can't free myself of the idea that it should be possible to do this much faster.
01-28-2008 04:14 AM
Hi Rodnebb,
@Rodnebb wrote:Any better workarounds? Actually, what I'm currently writing is just clusters in clusters - it strikes me as odd that the openG guys think such slow perfomance is ok. I consequently can't free myself of the idea that it should be possible to do this much faster.
01-28-2008 04:22 AM
Rodnebb wrote:
I 've thought about putting the arrays into a cluster, but this isn't going to be neat, and anyway by now I can just as well write some code for creating a ini file instead, it's not going to be more work.
it strikes me as odd that the openG guys think such slow perfomance is ok. I consequently can't free myself of the idea that it should be possible to do this much faster.
01-28-2008 06:51 AM
TonP: I've already joined the forum - waiting for a reply 🙂
tst: Getting rid of the array shouldn't save me much time (not enough), as I'm already only running the for loop a handful of times - and if I run it once it takes me 4 secs - which is way too much any way you see it. Rewriting to get rid of the for loop can be considered when I have gotten the read/write section cluster down to the ms range. I can also reduce the amount of data written to file, but I'm not writing orders of magnitude more data than I need, so this still won't make me arrive.
I'm wondering if the recursive nature of my clusters (cluster in cluster) can be to blame, I'll try timing writing a cluster with only one level in it later. But I was guessing that there's something in the way I use the opengG vi's that caused a bug to appear. (or that these vi's are simply not intended for embedded apps????)
01-29-2008 02:31 AM
I missed the fact that you are doing this on a cFP. File I/O and dynamic memory allocations are killers in RT targets and this is definitely both (converting to variants and loading dynamic VIs are both quite demanding in terms of memory). The OpenG VIs were not designed to be fast, especially not in RT targets. In fact, even the NI VIs they use are old and rather inefficient and I would avoid using them in an RT target.
Options:
01-29-2008 04:10 AM
01-29-2008 07:10 PM
01-29-2008 07:19 PM
01-30-2008 01:49 AM
01-30-2008 05:14 AM
Rodnebb wrote:
But the point here is the ability to just write the clusters you anyway use directly down to an ini file, and then pick them right up again next time. This is only achievable by the OpenG vi's, or?
The price you pay for these advantages is speed and memory - it takes time and data copies to generate the INI format data.