Re: [foxboro] CP40A largest segment of free memory too small
- From: "Douglas G. Lloyd" <DGLControls@xxxxxxxxxxx>
- To: <foxboro@xxxxxxxxxxxxx>
- Date: Thu, 22 Feb 2007 12:03:18 -0500
Hi List,
I know that this has been "resolved", but here are some additional
thoughts...
You need to be careful when trying the delete/undelete approach. If the
"hole" opened up by the delete was not big enough to accommodate the new
block size, you would have lost the block and all code and all parameters.
You lucked out in that there must have been enough free space contiguous
with the deleted block to combine and give you enough space for the
undelete. If you ever need to do this, make sure you have a backup copy of
the block parameters and the source code...
Checkpointing and rebooting increases the "largest segment" size. But for
optimal re-packing, the saveall/initialize/reboot/reload/checkpoint/reboot
procedure gets back even more "total free memory"...
The other memory limitation you might run into for sequence blocks is
"string pool size". As the name implies, this is the area in memory used to
store strings such as text messages and now has a default limit of 4K (was
2K pre version 4.2). If you run into this constraint there are a few
workarounds. The 4K limit is per subroutine or main body of code.
Distributing the strings amongst several subroutines is the easiest
workaround. A more subtle approach is to minimize the "string pool" by
using the exact same phrasing in message segments. Each "segment" is stored
only once and is referenced by pointer...
Here's a question for you IPS development folks: why do I have more memory
in my wristwatch, cell phone, and toaster oven than is available in a CP???
It's nice to have 5 times the horsepower in a CP270 versus a CP60, but what
gives with the itsy-bitsy memory model???
Regards,
Doug Lloyd
DGL Controls
-----Original Message-----
From: foxboro-bounce@xxxxxxxxxxxxx [mailto:foxboro-bounce@xxxxxxxxxxxxx] On
Behalf Of Moore, Kenneth, Celanese/US
Sent: Wednesday, February 21, 2007 5:30 PM
To: foxboro@xxxxxxxxxxxxx
Subject: Re: [foxboro] CP40A largest segment of free memory too small
CSPACE was 0, Changed to 15000, check pointed, same error.
Trimmed the message strings approx. 40%, same error.
Deleted and undeleted IND block, compiled, and done, without error.
SUCCESS!!!!
I think once I changed CSPACE to 15000, it didn't do anything until the
delete/undelete.
Now detailed display shows CSIZE 13487 and CSPACE 15000
Regards,
Ken Moore
Celanese Emulsions
Enoree, SC 29335
-----Original Message-----
From: foxboro-bounce@xxxxxxxxxxxxx [mailto:foxboro-bounce@xxxxxxxxxxxxx]
On Behalf Of tom.vandewater@xxxxxxxxxxxxxx
Sent: Wednesday, February 21, 2007 3:59 PM
To: foxboro@xxxxxxxxxxxxx
Subject: Re: [foxboro] CP40A largest segment of free memory too small
Ken,
I just remembered one more potential gotcha on the sequence
compiler error. I remember running into a limit on the amount of text
characters that the compiler can handle when using the SENDMSG command
in the code. If you have defined a large amount of SENDMSG character
strings in your code the compiler chokes and gives an error message that
isn't very descriptive such as the one you listed in your note. You
could shorten each of your SENDMSG strings or remove some of the
messages entirely and see if it solves your problem. It would be
appreciated if you respond to the list with whatever you find to be your
solution.
Thanks,
Tom VandeWater
-----Original Message-----
From: foxboro-bounce@xxxxxxxxxxxxx [mailto:foxboro-bounce@xxxxxxxxxxxxx]
On Behalf Of Moore, Kenneth, Celanese/US
Sent: Wednesday, February 21, 2007 1:20 PM
To: foxboro@xxxxxxxxxxxxx
Subject: [foxboro] CP40A largest segment of free memory too small
Hi List,
By kind, I'm just a novice.
I have an Independent Sequence Block, that has a tremendous amount of
HLBL, roughly 20 pages.
I need to alter the logic slightly, everything compiles okay, when I go
to save it, I get error E-35, not enough memory for block, the new logic
is approx. 1/2 page shorter than the old logic.
I don't know how the memory is handled through the ICC. The station
block shows that the largest segment is 11008 bytes, with total free
being 390648 bytes. Idle time is approx. 50%
I suspect my problem is the size largest segment. How can I "re-arrange"
the memory to have a larger segment available?
Regards,
Ken Moore
Celanese Emulsions
Enoree, SC 29335
=3D20
=3D20
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
=3D20
foxboro mailing list: http://www.freelists.org/list/foxboro
to subscribe: =3D
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3D3Djoin
to unsubscribe: =3D
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3D3Dleave
=3D20
=20
=20
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
=20
foxboro mailing list: http://www.freelists.org/list/foxboro
to subscribe: =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3Djoin
to unsubscribe: =
mailto:foxboro-request@xxxxxxxxxxxxx?subject=3Dleave
=20
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
foxboro mailing list: http://www.freelists.org/list/foxboro
to subscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
to unsubscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
_______________________________________________________________________
This mailing list is neither sponsored nor endorsed by Invensys Process
Systems (formerly The Foxboro Company). Use the info you obtain here at
your own risks. Read http://www.thecassandraproject.org/disclaimer.html
foxboro mailing list: http://www.freelists.org/list/foxboro
to subscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=join
to unsubscribe: mailto:foxboro-request@xxxxxxxxxxxxx?subject=leave
- References:
- Re: [foxboro] CP40A largest segment of free memory too small
- From: Moore, Kenneth, Celanese/US
Other related posts:
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- » Re: [foxboro] CP40A largest segment of free memory too small
- Re: [foxboro] CP40A largest segment of free memory too small
- From: Moore, Kenneth, Celanese/US