[GRASS5] 5.7: make GRASS_INT_ZLIB default?

Hi,

proposal for 5.7-CVS: make zlib compression instead of RLE the
default setting, probably modifying:

grass57/lib/gis > grep GRASS_INT_ZLIB *
opencell.c: COMPRESSION_TYPE = getenv("GRASS_INT_ZLIB") ? 2 : 1;

Are there objections?
I am, however, not sure, how to apply such change (without
breaking things).

Markus

Markus Neteler wrote:

proposal for 5.7-CVS: make zlib compression instead of RLE the
default setting, probably modifying:

grass57/lib/gis > grep GRASS_INT_ZLIB *
opencell.c: COMPRESSION_TYPE = getenv("GRASS_INT_ZLIB") ? 2 : 1;

Are there objections?

The most obvious problem is that raster maps will be unreadable on
versions of GRASS which pre-date the addition of zlib support.

Also, I don't know whether that feature has received any significant
testing.

I am, however, not sure, how to apply such change (without
breaking things).

  COMPRESSION_TYPE = getenv("GRASS_INT_NOZLIB") ? 1 : 2;

--
Glynn Clements <glynn@gclements.plus.com>

On Fri, Nov 19, 2004 at 06:02:25PM +0000, Glynn Clements wrote:

Markus Neteler wrote:

> proposal for 5.7-CVS: make zlib compression instead of RLE the
> default setting, probably modifying:
>
> grass57/lib/gis > grep GRASS_INT_ZLIB *
> opencell.c: COMPRESSION_TYPE = getenv("GRASS_INT_ZLIB") ? 2 : 1;
>
> Are there objections?

The most obvious problem is that raster maps will be unreadable on
versions of GRASS which pre-date the addition of zlib support.

Isn't it possible then to
r.compress -u
in the ZLIB-GRASS version and then read it with the older GRASS?

The change is similar to the LZW change some years ago (which went smoothly).

Also, I don't know whether that feature has received any significant
testing.

Time to do that :slight_smile:

> I am, however, not sure, how to apply such change (without
> breaking things).

  COMPRESSION_TYPE = getenv("GRASS_INT_NOZLIB") ? 1 : 2;

Will change here for me at least.

Markus

On Fri, Nov 19, 2004 at 06:02:25PM +0000, Glynn Clements wrote:

Markus Neteler wrote:

> proposal for 5.7-CVS: make zlib compression instead of RLE the
> default setting, probably modifying:
>
> grass57/lib/gis > grep GRASS_INT_ZLIB *
> opencell.c: COMPRESSION_TYPE = getenv("GRASS_INT_ZLIB") ? 2 : 1;
>
> Are there objections?

The most obvious problem is that raster maps will be unreadable on
versions of GRASS which pre-date the addition of zlib support.

Also, I don't know whether that feature has received any significant
testing.

Here some numbers:

LANDSAT-7 scene:

- compression at 50% of the standard GRASS CELL file compression
  57MB color channel -> 28 MB with ZLIB
  233MB panchromatic channel -> 127 MB with ZLIB

This is quite an advantage when dealing with lots of remote sensing
data.

- display time (over NFS network in both cases):
  beforehand: g.region rast=channel

  time d.rast color_channel_standard_compression
   real 0m8.957s
   user 0m4.850s
   sys 0m0.230s

  time d.rast color_channel_zlib_compression
   real 0m6.011s
   user 0m5.080s
   sys 0m0.170s

########
  time d.rast pan_channel_standard_compression
   real 0m11.500s
   user 0m10.690s
   sys 0m0.210s

  time d.rast pan_channel_zlib_compression
   real 0m11.421s
   user 0m10.800s
   sys 0m0.210s

Interestingly there is less difference the larger the map.

Markus

Markus Neteler wrote:

> > proposal for 5.7-CVS: make zlib compression instead of RLE the
> > default setting, probably modifying:
> >
> > grass57/lib/gis > grep GRASS_INT_ZLIB *
> > opencell.c: COMPRESSION_TYPE = getenv("GRASS_INT_ZLIB") ? 2 : 1;
> >
> > Are there objections?
>
> The most obvious problem is that raster maps will be unreadable on
> versions of GRASS which pre-date the addition of zlib support.

Isn't it possible then to
r.compress -u
in the ZLIB-GRASS version and then read it with the older GRASS?

Yes.

The change is similar to the LZW change some years ago (which went smoothly).

The main issue is that people need to be aware of the change, and to
remember it at relevant times.

[Aside: When I had to deal with Windows users on a regular basis, I
would regularly end up downloading a 1Mb+ email over a 28.8k link only
to find that it contained an MS-Word 8 document. The sender knew that
I could only read version <= 7 documents; they just didn't remember at
the right time.]

--
Glynn Clements <glynn@gclements.plus.com>