[Thread Prev][Thread Next][Index]

Re: [ferret_users] Memory error



(replying to the Ferret List -- questions about Ferret scripting are asked there)

Try it with a smaller value for set memory/size= setting, perhaps /size=50.

For information about memory use, please see this discussion:

https://ferret.pmel.noaa.gov/Ferret/documentation/users-guide/computing-environment/MEMORY-USE

Note that you would only see the error message "Unable to allocate xxx Mwords of memory" under older versions of Ferret.  If you are running an older Ferret, scroll down to the bottom of that documentation page.

On 2/4/2020 3:28 AM, abs15ms027 wrote:
Hello,

I tried set memory/size=600

But  again I got this error:

 Cached data cleared from memory
Unable to allocate 600.0 Mwords of memory.
Restoring previous memory of 25.6 Mwords.

This is the error I get while running the scipt:

fill/x=-70:100/y=0:55/pal=blue_orange/nolab/set correl
 **ERROR: request exceeds memory setting: 21 Mwords were requested.
CONTOUR/FILL/x=-70:100/y=0:55/pal=blue_orange/nolab/set correl
Command file, command group, or REPEAT execution aborted
           *** NOTE: You can use SET MEMORY/SIZE=xxx to increase memory.
           *** NOTE: The "Memory use" section of the FERRET Users Guide has further tips.


Is it somehow related to the internal memory of the device  I am using?

Thanking you in anticipation
Asiya


On Thu, 23 Jan 2020 14:21:20 -0800, Ansley C. Manke wrote:
Hi Asiya,

First I'd like to say that in the most recent versions of Ferret, SET
MEMORY does not allocate memory from the system but only sets an upper
limit on the amount it will use as needed.  This discussion is for
versions previous to v7.2.  The current documentation for SET MEMORY
is here, with the discussion at the bottom of the page for earlier
versions.


https://ferret.pmel.noaa.gov/Ferret/documentation/users-guide/computing-environment/MEMORY-USE
[1]

In Ferret v7, the SET MEMORY/SIZE= causes Ferret to ask the system to
allocate that numer of mega-words (storage locations) of memory, so
SET MEM/SIZE=1400 asks for over 11 Gb of memory.  When you tried
tried "SET MEMORY/SIZE=1400"  did you see an error message?  In v7,
it might report

 Cached data cleared from memory
Unable to allocate 1400.0 Mwords of memory.
Restoring previous memory of 25.6 Mwords.

To get an idea of the  amount of memory you might need, look at the
subset of the grid that your definitions use. The expression
SST_0001[X=120:180@AVE,Y=-16:6@AVE] needs to read data 60*22*165.
It's in megawords, so,

yes? list 60*22*165/1000
              VARIABLE : 60*22*165/1000
           217.8

So just for that expression you'd need to have the SET MEMORY/SIZE
setting larger than 218.  Ferret will store intermediate results and
re-use some of the memory, but there are a number of calculations done
to evaluate variable  "correl", so probably more memory is needed.
Try SET MEMORY/SIZE=300, or maybe 500

On 1/22/2020 11:52 PM, abs15ms027 wrote:

Hello,

I am repeatedly getting an error while using some of the data sets
in Ferret. Error is as follows:

Command file, command group, or REPEAT execution aborted
           *** NOTE: You can use SET MEMORY/SIZE=xxx to
increase memory.
           *** NOTE: The "Memory use" section of the
FERRET Users Guide has further tips.

I tried SET MEMORY/SIZE=1400 and SET MEMORY/SIZE=5e12, but still, I
am getting the same error.

My script looks as follows.

use abs_era_data.nc
set mode metafile
let


ab=(sst_0001[x=120:180@ave,y=-16:6@ave]+sst_0001[x=-150:-180@ave,y=-16:6@ave])/2
let p=ab
let q=sp_0001[g=sst_0001]

go variance
let ad=(correl)*(39/(1-(correl)^2))^0.5
let sign=if abs(ad) ge 2.02269092 then correl

fill/x=-70:100/y=0:55/pal=blue_orange/nolab correl #getting error
at this lin
contour/x=-40:90/y=12:60/ov/nolab sign
go box 8,-13,41,52
go box 69.5,75,29,35.5
go land thick

LABEL ,,-1,0,.16 "Longtitude"
LABEL ,,-1,90,.16 "Latitude"

label/nouser 4.5,6.5,0,0,0.1 "@TRcorrelation of SST over equitorial
Pacific with Surface pressure"
cancel mode metafile
sp Fprint -o slp_sst_ipwp_correl_qq.ps metafile.plt

Ferret version I am using is FERRET v7 (opt)

The data set used is ERA 5 single-level data and includes these
variables:-

 name
title
I         J K        L        M
N
 SST_0001 Sea surface temperature          1:1440
1:721 ...      1:164     ...       ...
 SP_0001  Surface pressure
1:1440    1:721 ...      1:164     ...       ...
 TP_0001  Total precipitation
1:1440    1:721 ...      1:164     ...       ...
 SST_0005 Sea surface temperature          1:1440
1:721 ...      1:164     ...       ...
 SP_0005  Surface pressure
1:1440    1:721 ...      1:164     ...       ...
 TP_0005  Total precipitation
1:1440    1:721 ...      1:164

It would be of great help if you could provide me with a solution
to this problem.

Thanking you in anticipation
Asiya


Links:
------
[1]

https://ferret.pmel.noaa.gov/Ferret/documentation/users-guide/computing-environment/MEMORY-USE


[Thread Prev][Thread Next][Index]
Contact Us
Dept of Commerce / NOAA / OAR / PMEL / Ferret

Privacy Policy | Disclaimer | Accessibility Statement