06-04-2009 02:17 AM
Not a question per se, but perhaps something that might be useful for others to find information about (although maybe someone has a good idea on how to best get around the problem (or find faults in the tests)...).
Some time ago I ported an application originally made for PCs to run on the cFP-22xx family of controllers. One of the problems I had run into on earlier projects was the fact that working with .ini files (configuration files) is extremely slow on PACs, and this would particularly affect this new application because it's architecture was based on heavy use of such files (hundreds of separate .ini files to describe the setup of different items such as communication channels, sensors, measurements etc.) Spreading the settings into individual and readable files makes things very flexible on PCs, but as this project would prove - it's just not practical with the file performance you get on PACs:
Test Scenario: Read and write 1000 clusters containing about 20 string, numeric and boolean controls.
Alternative approaches: A - Use separate INI-files for each cluster, B - Separate binary files for each cluster, C - One binary file containing all the clusters
Results on cFP-2210 (and Windows PC results):
Write
A - 228 seconds (4,4 seconds)
B - 48,3 seconds (0,47 seconds)
C - 0,3 seconds (not tested)
Read
A - 365 seconds (7,4 seconds)
B -23,7 seconds (0,17 seconds)
C - 0,13 seconds (not tested)
From this I concluded that not only is it necessary to use binary files instead of INI-files on the controllers - but the performance in handling a large number of files is so bad that the number of files should be kept at a minimum.
08-19-2009 01:47 AM
An update:
LabVIEW 2009 has improved the speed of this quite a bit - reading e.g. took 1/5 of the time it used to in 8.6.1 when I tested it recently. That is a big boost.
For applications that only have some config files this improvement makes config files usable on PACs.