Dear GDAL Community,

I am encountering a performance issue when using a VRT consisting of a
large number of source rasters and built-in C++ pixel function ("max"). I
would appreciate any guidance on whether some GDAL config option can
improve this, or I am doing something wrong, or this is a potential
optimization opportunity.

I have A VRT file referencing ~750 individual rasters (Byte data type, avg
size ~1000x1000 pixels, untiled, and same CRS for all source rasters). The
VRT uses the built-in “max” pixel function.

Running gdal_translate to convert the VRT to GTiff takes ~1.5 hours and
consumes ~4GB RAM.
gdal_translate -of GTiff merged.vrt OUTPUT.tif

When tripling the number of source rasters (to ~2250) by duplicating
entries in the VRT, processing time increases to ~4.5 hours, with RAM usage
rising to ~11.5GB.
gdal_translate -of GTiff merged_3x.vrt OUTPUT.tif

Extracting a small subset of the VRT via -projwin does not improve
performance (still slow, ~14GB RAM used).
gdal_translate -projwin -146955.241 797044.4497 -138766.1444 789656.0648
-of GTiff merged_3x.vrt OUTPUT.tif

*Removing the pixel function makes processing instantaneous, even with 2250
rasters.*

Performance is unaffected by --config GDAL_CACHEMAX or -co
NUM_THREADS=ALL_CPUS.

The issue persists across other datasets that I have. In fact, it gets
really worse when source rasters are relatively larger or of Float32 data
type.

Gdalinfo on one of the source rasters: https://pastebin.com/gjHDA2Wd
*Data:*
https://drive.google.com/file/d/1LGlzGGZvkPyXvKKgkPVzQGbBw55p5dRd/view?

System: Windows, 8 CPUs, 32GB RAM (GDAL 3.9.2 via OSGeo4W).

Thank you for your time and insights. Please reply if you are aware of how
performance can be improved.

Regards,

*Abdul Siddiqui, PE*

*abdul.siddi...@ertcorp.com <abdul.siddi...@ertcorp.com>*


*ERT  | *Earth Resources Technology, Inc.

14401 Sweitzer Ln. Ste 300

Laurel, MD 20707

https://www.ertcorp.com
_______________________________________________
gdal-dev mailing list
gdal-dev@lists.osgeo.org
https://lists.osgeo.org/mailman/listinfo/gdal-dev

Reply via email to