I have an EPIC-PR1. Codesys says I have 411.37KB of memory left. But if I look in my groov Manage it says I have 1.3GB Memory Available. If I look at the project the file size is 4.57MB. Memories are check while program is running. Why the difference?
Where are you seeing this memory allocation in Codesys? Did you follow this post? Codesys has a default setting for this. We have not seen anyone run out on any project to date, and we have some very large deployments.
The difference would be that the memory as a whole gets allocated to various process on the EPIC, and Codesys has its own allocation via configuration.
The first shot I get from menu View-View memory usage in Codesys. The second I get after a Clean all and Generate code. I don’t have access to the shell yet but plan on getting that.
The program is large 200 Inputs 100 outputs and 50 analog inputs. Every input has a TON. Also adding the AGA3 formula for calculating gas volume which is setup to run once a second and is in an array for 3 complete meter runs. The formula is large but it runs very fast. The longest scan time for 24 hr. is 40ms the shortest is 20ms.
I don’t think that you are anywhere near running out of space. My understanding is the memory view is the space the compiler determines that it needs and by the looks of it it does not need that much. The Codesys Professional addition has system profile and tracing for optimization purposes.
Unless you are doing something that can cause a memory leak like using __NEW without a __Delete or using pointers incorrectly. I bet your program is fine. The compiler is just not allocating that much memory space for the program because it does not need much.