[Thread Prev][Thread Next][Index]

[ferret_users] memory problems in ferret 7.20 (pyferret)



Hi,

I find a strange behaviour with pyferret 7.20

<phy-8:mschmidt>ferret
        NOAA/PMEL TMAP
        PyFerret v7.2 (optimized)
        Linux 4.4.85-22-default - 09/19/17
        19-Sep-17 23:27

the binary is build on openSuse 42.3. netcdf/hdf/szip are build separately, all other ingredients come from the system. The compiler is gcc-5, python is 2.7.13.

The following example illustrates the problem. Averaging and integrating a bigger dataset. Data are model results kept on a public THREDDS, so it should be reproducable. I leave things as they are without streamlining. Don't ask for the meaning ...

use http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/genus_run_88_5day_ocean.nc
set region/t=1-jan-2010:31-dec-2010/x=13.5:14.7/y=-23.5:-22.5

let n2_prod_anamm = P_DET_ANAM_N2 * 13.25
let n2_prod_denit = P_DET_DENIT_NH4 * 5.3/2
let n2_prod_h2s   = P_H2S_OXNO3_SUL * 0.2
let n2_prod_sul   = P_SUL_OXNO3_SO4*3/5
let n2_prod = (n2_prod_anamm + n2_prod_denit + n2_prod_h2s + n2_prod_sul)

list n2_prod[x=@din,y=@din,k=@sum,t=@sum]

yes? list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 23.5S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          1.263E+09

Now increase the region, the result should be growing significantly

set region/t=1-jan-2010:31-dec-2010/x=13.5:14.7/y=-28:-22.5 ! Note y!

list n2_prod[x=@din,y=@din,k=@sum,t=@sum]

yes? list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 28S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          8.011E+08

This is strange, since the quantity is positive everywhere. Check with stats (not shown).

Now play with the memory size:

set memory/size=30 ---> 3.244E+08

set memory/size=50 ---> 3.244E+08 ! Is this stable? No!

can memory

set memory/size=50 ---> 8.262E+08

can memory

set memory/size=300 ---> 4.973E+09

I think, this is enough to show, that something does not work correctly.

The classical ferret shows similar results. Aggregating withouth THREDDS gives 4.973E+09 for the larger region without increasing the memory size!

Now a previous ferret version:

ferret
        NOAA/PMEL TMAP
        PyFERRET v7 (opt)
        Linux 2.6.32-642.1.1.el6.x86_64 - 07/01/16
        20-Sep-17 00:02

CAN MODE LOGO
SET MEM /SIZE=25.6
 Cached data cleared from memory
SET MODE VERIFY
yes? list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 23.5S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          1.232E+09

Similar, but not the same as before! Make the region bigger now.

set region/t=1-jan-2010:31-dec-2010/x=13.5:14.7/y=-28:-22.5

list n2_prod[x=@din,y=@din,k=@sum,t=@sum]

yes? list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 28S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          4.760E+09

Not in spectrum of the previous results!

Now with another elder ferret:

ferret
        NOAA/PMEL TMAP
        FERRET v6.96
        Linux 2.6.18-406.el5 64-bit - 12/02/15
        20-Sep-17 00:09

CAN MODE LOGO
SET MEM /SIZE=25.6
 Cached data cleared from memory
SET MODE VERIFY

use "http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/genus_run_88_5day_ocean.nc";
....

list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 23.5S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          1.232E+09

!The same as with 7.0

set region/t=1-jan-2010:31-dec-2010/x=13.5:14.7/y=-28:-22.5

yes? list n2_prod[x=@din,y=@din,k=@sum,t=@sum]
             VARIABLE : (N2_PROD_ANAMM + N2_PROD_DENIT + N2_PROD_H2S + N2_PROD_SUL)
             DATA SET : MOM4 Baltic Sea 3 n.m.
             FILENAME : genus_run_88_5day_ocean.nc
             FILEPATH : http://phy-50.io-warnemuende.de:8080/thredds/dodsC/genus/
             LONGITUDE: 13.5E to 14.7E (XY integ.)
             LATITUDE : 28S to 22.5S (XY integ.)
             DEPTH (m): -0.0009867 to 5700 (ZT summed)
             TIME     : 01-JAN-2010 00:00 to 31-DEC-2010 00:00 (ZT summed) JULIAN
          4.759E+09

Again another result - with higher precision the difference does not become small.

Is it possible to reproduce this finding, or is this specific for my build? Any help is very welcome!

Greetings,

Martin







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

Privacy Policy | Disclaimer | Accessibility Statement