AC800m HI - Heap Utilization - How much memory is needed to perform a warm download?
The documentation says "As a general rule, an application should never exceed half the size of the available memory" and "The amount of spare memory must be at least 20% of available memory, and may require up to 50%.".
According the above thread, the memory used by the currently downloaded applications = "Max used Shared Heap" - "Used Shared Heap".
Is it right then to assume that as long as the following criteria is met, there will always be enough memory to perform a warm download?
A) "Non-used heap" >= "Max used Shared Heap" - "Used Shared Heap" and "Non-used heap" >= 20%
or perhaps this criteria?:
B) "Non-used heap" >= "Max used Shared Heap" - "Used Shared Heap" + "Max Used Protected Heap" and "Non-used heap" >= 20%
(I'm assuming that currently downloaded applications have constant memory usage, ie., there are no queues or arrays of varying size or anything)
Voted best answer
After discussion with concern team, I have the following information:-
Modified Memory Organization chart:
è Project = Empty Project + Application(s)
è Executing firmware is the firmware you download before you download the application.
The size of the firmware can be found here (without protocol Handlers):
è Used by firmware is the Memory Consumptions of the protocols and CEX Units:
For example: if you use Comli with CI853 for PM866, then this consumes 72+2 Kbytes and adds to ‘Used by firmware’,
And if you add two CI854B for PM866, then this consumes 247 + 33 Kbytes and adds to ‘Used by firmware’.
Heap Utilization Diag: