Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Performance regression of GDALWarp due to PROJ>6 #3470

Closed
vincentsarago opened this issue Feb 22, 2021 · 5 comments
Closed

Performance regression of GDALWarp due to PROJ>6 #3470

vincentsarago opened this issue Feb 22, 2021 · 5 comments
Milestone

Comments

@vincentsarago
Copy link
Contributor

Expected behavior and actual behavior.

👋 Dear GDAL contributors and community. First feel free to close this if you feel this isn't the place to report/discuss this. I'll happily move this to the mailing list or maybe to the PROJ project 🤷‍♂️ .

First reported in rasterio/rasterio#2121 and linked to #1662 . Basically we are experiencing a huge performance downgrade when using GDAL>=3 with PROJ >6. We understand the changes needed for PROJ >6 and are really happy to have more precise coordinate transform 😄 . I think the main performance issue with Gdal Warp or warpedVRT is that it doesn't cache the coordinate transformation. I'm not sure such a thing is possible 🤷‍♂️ but looking at the log it seems that GDAL is calculating the same pipeline multiple times. I'm not even sure why it does it multiple time...

Use Case
I'm mostly using GDAL for project involving Dynamic Tiling from COG (non aligned with Grid) and thus we are looking for high (or relatively) performance for small parallel warping tasks that may or may not involve data caching.

Steps to reproduce the problem.

GDAL 3.2 PROJ 7.1 (centos)

File: https://rio-tiler-dev.s3.amazonaws.com/data/m_3209542_se_15_060_20181115_20190222.tif

time gdalwarp -q m_3209542_se_15_060_20181115_20190222.tif out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite
real    0m0.404s
user    0m0.367s
sys     0m0.037s
PROJ_DEBUG=3 CPL_DEBUG=ON gdalwarp -q m_3209542_se_15_060_20181115_20190222.tif out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite
PROJ: pj_open_lib(proj.db): call fopen(/opt/share/proj/proj.db) - succeeded
GDAL: GDALOpen(m_3209542_se_15_060_20181115_20190222.tif, this=0x1c6e5a0) succeeds as GTiff.
GDAL: GDALOpen(out.tif, this=0x1c6a6a0) succeeds as GTiff.
GDAL: GDALClose(out.tif, this=0x1c6a6a0)
GDAL: Using GTiff driver
PROJ: pj_open_lib(proj.ini): call fopen(/opt/share/proj/proj.ini) - succeeded
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1e83c60
PROJ_TRACE: Pipeline at [0x1e424a0]:    step at [0x1e83c60] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=unitconvert, 3
PROJ_TRACE:     xy_in=rad
PROJ_TRACE:     xy_out=deg
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: xy_in unit: Radian
PROJ_TRACE: xy_out unit: Degree
PROJ_TRACE: Pipeline: Step 1 (proj=unitconvert) at 0x1e83ff0
PROJ_TRACE: Pipeline at [0x1e424a0]:    step at [0x1e83ff0] (proj=unitconvert) done
PROJ_TRACE: Pipeline: Building arg list for step no. 2
PROJ_TRACE: Pipeline: init - proj=axisswap, 2
PROJ_TRACE:     order=2,1
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 2 (proj=axisswap) at 0x1e84380
PROJ_TRACE: Pipeline at [0x1e424a0]:    step at [0x1e84380] (proj=axisswap) done
PROJ_TRACE: Pipeline: 3 steps built. Determining i/o characteristics
GDAL: Computing area of interest: -95.8161, 32.2472, -95.7465, 32.3153
PROJ: pj_open_lib(us_noaa_ethpgn.tif): call fopen(/opt/share/proj/us_noaa_ethpgn.tif) - failed
PROJ: pj_open_lib(ethpgn.gsb): call fopen(/opt/share/proj/ethpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_mihpgn.tif): call fopen(/opt/share/proj/us_noaa_mihpgn.tif) - failed
PROJ: pj_open_lib(mihpgn.gsb): call fopen(/opt/share/proj/mihpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_mnhpgn.tif): call fopen(/opt/share/proj/us_noaa_mnhpgn.tif) - failed
PROJ: pj_open_lib(mnhpgn.gsb): call fopen(/opt/share/proj/mnhpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_mohpgn.tif): call fopen(/opt/share/proj/us_noaa_mohpgn.tif) - failed
PROJ: pj_open_lib(mohpgn.gsb): call fopen(/opt/share/proj/mohpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_okhpgn.tif): call fopen(/opt/share/proj/us_noaa_okhpgn.tif) - failed
PROJ: pj_open_lib(okhpgn.gsb): call fopen(/opt/share/proj/okhpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_WI.tif): call fopen(/opt/share/proj/us_noaa_WI.tif) - failed
PROJ: pj_open_lib(WI): call fopen(/opt/share/proj/WI) - succeeded
PROJ: pj_open_lib(us_noaa_nbhpgn.tif): call fopen(/opt/share/proj/us_noaa_nbhpgn.tif) - failed
PROJ: pj_open_lib(nbhpgn.gsb): call fopen(/opt/share/proj/nbhpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_ilhpgn.tif): call fopen(/opt/share/proj/us_noaa_ilhpgn.tif) - failed
PROJ: pj_open_lib(ilhpgn.gsb): call fopen(/opt/share/proj/ilhpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_lahpgn.tif): call fopen(/opt/share/proj/us_noaa_lahpgn.tif) - failed
PROJ: pj_open_lib(lahpgn.gsb): call fopen(/opt/share/proj/lahpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_kshpgn.tif): call fopen(/opt/share/proj/us_noaa_kshpgn.tif) - failed
PROJ: pj_open_lib(kshpgn.gsb): call fopen(/opt/share/proj/kshpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_iahpgn.tif): call fopen(/opt/share/proj/us_noaa_iahpgn.tif) - failed
PROJ: pj_open_lib(iahpgn.gsb): call fopen(/opt/share/proj/iahpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_mshpgn.tif): call fopen(/opt/share/proj/us_noaa_mshpgn.tif) - failed
PROJ: pj_open_lib(mshpgn.gsb): call fopen(/opt/share/proj/mshpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_arhpgn.tif): call fopen(/opt/share/proj/us_noaa_arhpgn.tif) - failed
PROJ: pj_open_lib(arhpgn.gsb): call fopen(/opt/share/proj/arhpgn.gsb) - failed
PROJ: pj_open_lib(us_noaa_TN.tif): call fopen(/opt/share/proj/us_noaa_TN.tif) - failed
PROJ: pj_open_lib(TN): call fopen(/opt/share/proj/TN) - succeeded
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1e7d4e0
PROJ_TRACE: Pipeline at [0x1e42e50]:    step at [0x1e7d4e0] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=webmerc, 6
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 1 (proj=webmerc) at 0x1e84440
PROJ_TRACE: Pipeline at [0x1e42e50]:    step at [0x1e84440] (proj=webmerc) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 7
PROJ_TRACE:     proj=webmerc
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1c884f0
PROJ_TRACE: Pipeline at [0x1f1e440]:    step at [0x1c884f0] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=utm, 3
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 1 (proj=utm) at 0x1c96850
PROJ_TRACE: Pipeline at [0x1f1e440]:    step at [0x1c96850] (proj=utm) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1fda680
PROJ_TRACE: Pipeline at [0x1c84f60]:    step at [0x1fda680] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=webmerc, 6
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 1 (proj=webmerc) at 0x1e3b760
PROJ_TRACE: Pipeline at [0x1c84f60]:    step at [0x1e3b760] (proj=webmerc) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 7
PROJ_TRACE:     proj=webmerc
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1fdd920
PROJ_TRACE: Pipeline at [0x1fdacb0]:    step at [0x1fdd920] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=utm, 3
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 1 (proj=utm) at 0x1d88490
PROJ_TRACE: Pipeline at [0x1fdacb0]:    step at [0x1d88490] (proj=utm) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
GDAL: QuietDelete(out.tif) invoking Delete()
GDAL: GDALOpen(out.tif, this=0x1e41bd0) succeeds as GTiff.
GDAL: GDALDefaultOverviews::OverviewScan()
GDAL: GDALClose(out.tif, this=0x1e41bd0)
GDAL: GDALDriver::Create(GTiff,out.tif,1024,1024,3,Byte,0x1ff2190)
WARP: Copying metadata from first source to destination dataset
GTiff: ScanDirectories()
GTiff: Opened 5310x6160 overview.
GTiff: Opened 2655x3080 overview.
GTiff: Opened 1328x1540 overview.
GTiff: Opened 664x770 overview.
GTiff: Opened 332x385 overview.
GTiff: Opened 166x193 overview.
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1fe4350
PROJ_TRACE: Pipeline at [0x1fdd900]:    step at [0x1fe4350] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=webmerc, 6
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 1 (proj=webmerc) at 0x1e83c60
PROJ_TRACE: Pipeline at [0x1fdd900]:    step at [0x1e83c60] (proj=webmerc) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 7
PROJ_TRACE:     proj=webmerc
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1d88490
PROJ_TRACE: Pipeline at [0x1fe9f20]:    step at [0x1d88490] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=utm, 3
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 1 (proj=utm) at 0x1ff0330
PROJ_TRACE: Pipeline at [0x1fe9f20]:    step at [0x1ff0330] (proj=utm) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
WARP: Selecting overview level 2 for m_3209542_se_15_060_20181115_20190222.tif
GDAL: GDALOverviewDataset(m_3209542_se_15_060_20181115_20190222.tif, this=0x197fff0) creation.
GDALWARP: Defining SKIP_NOSOURCE=YES
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1fdd120
PROJ_TRACE: Pipeline at [0x1fe4350]:    step at [0x1fdd120] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=unitconvert, 3
PROJ_TRACE:     xy_in=rad
PROJ_TRACE:     xy_out=deg
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: xy_in unit: Radian
PROJ_TRACE: xy_out unit: Degree
PROJ_TRACE: Pipeline: Step 1 (proj=unitconvert) at 0x1e84440
PROJ_TRACE: Pipeline at [0x1fe4350]:    step at [0x1e84440] (proj=unitconvert) done
PROJ_TRACE: Pipeline: Building arg list for step no. 2
PROJ_TRACE: Pipeline: init - proj=axisswap, 2
PROJ_TRACE:     order=2,1
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 2 (proj=axisswap) at 0x1e79610
PROJ_TRACE: Pipeline at [0x1fe4350]:    step at [0x1e79610] (proj=axisswap) done
PROJ_TRACE: Pipeline: 3 steps built. Determining i/o characteristics
GDAL: Computing area of interest: -95.8161, 32.2472, -95.7465, 32.3153
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 4
PROJ_TRACE:     proj=utm
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1d88490
PROJ_TRACE: Pipeline at [0x1e7a9d0]:    step at [0x1d88490] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=webmerc, 6
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 1 (proj=webmerc) at 0x1c84f60
PROJ_TRACE: Pipeline at [0x1e7a9d0]:    step at [0x1c84f60] (proj=webmerc) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    
PROJ_TRACE: Pipeline: Building arg list for step no. 0
PROJ_TRACE: Pipeline: init - inv, 7
PROJ_TRACE:     proj=webmerc
PROJ_TRACE:     lat_0=0
PROJ_TRACE:     lon_0=0
PROJ_TRACE:     x_0=0
PROJ_TRACE:     y_0=0
PROJ_TRACE:     ellps=WGS84
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=WGS84
PROJ_TRACE: Pipeline: Step 0 (inv) at 0x1fef0f0
PROJ_TRACE: Pipeline at [0x1c96830]:    step at [0x1fef0f0] (inv) done
PROJ_TRACE: Pipeline: Building arg list for step no. 1
PROJ_TRACE: Pipeline: init - proj=utm, 3
PROJ_TRACE:     zone=15
PROJ_TRACE:     ellps=GRS80
PROJ_TRACE: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
PROJ_TRACE: pj_ellipsoid - final:    ellps=GRS80
PROJ_TRACE: Pipeline: Step 1 (proj=utm) at 0x1fdc760
PROJ_TRACE: Pipeline at [0x1c96830]:    step at [0x1fdc760] (proj=utm) done
PROJ_TRACE: Pipeline: 2 steps built. Determining i/o characteristics
GDAL: GDAL_CACHEMAX = 99 MB
GDAL: GDALWarpKernel()::GWKNearestNoMasksOrDstDensityOnlyByte() Src=0,0,1328x1540 Dst=0,0,1024x1024
GDAL: Flushing dirty blocks: 0...10...20...30...40...50...60...70...80...90...100 - done.
GDAL: GDALClose(out.tif, this=0x1e41bd0)
GDAL: GDALClose(m_3209542_se_15_060_20181115_20190222.tif, this=0x1c6e5a0)

GDAL 2.4 PROJ 5

time gdalwarp -q m_3209542_se_15_060_20181115_20190222.tif out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

real    0m0.107s
user    0m0.087s
sys     0m0.020s
PROJ_DEBUG=3 CPL_DEBUG=ON gdalwarp -q m_3209542_se_15_060_20181115_20190222.tif out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite
GDAL: GDALOpen(m_3209542_se_15_060_20181115_20190222.tif, this=0x1f45bb0) succeeds as GTiff.
GDAL: GDALOpen(out.tif, this=0x1f62780) succeeds as GTiff.
GDAL: GDALClose(out.tif, this=0x1f62780)
GDAL: Using GTiff driver
OGRCT: Source: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
OGRCT: Target: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=utm, 7
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching on in init files for [proj_def.dat:general]
get_init_string: searching for section [general] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
key=proj_def.dat:general, value: [ellps=WGS84]
get_init: got [ellps=WGS84], paralist[0,1]: [ellps=WGS84,(empty)]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=utm) at 0x1f58ba0
Pipeline at [0x1f586b0]:    step at [0x1f58ba0] (proj=utm) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=merc, 12
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
pj_open_lib(null): call fopen(/opt/share/proj/null) - succeeded
Ctable2 Null transform for whole world 3x3: LL=(-180,-90) UR=(180,90)
Pipeline: Step 1 (proj=merc) at 0x1f5a330
Pipeline at [0x1f586b0]:    step at [0x1f5a330] (proj=merc) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
OGRCT: Source: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
OGRCT: Target: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=merc, 13
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=merc) at 0x1f5f070
Pipeline at [0x1f5e910]:    step at [0x1f5f070] (proj=merc) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=utm, 6
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=utm) at 0x1f5fb90
Pipeline at [0x1f5e910]:    step at [0x1f5fb90] (proj=utm) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
OGRCT: Source: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
OGRCT: Target: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=utm, 7
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=utm) at 0x1f5ae20
Pipeline at [0x1f586b0]:    step at [0x1f5ae20] (proj=utm) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=merc, 12
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=merc) at 0x1f58ba0
Pipeline at [0x1f586b0]:    step at [0x1f58ba0] (proj=merc) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
OGRCT: Source: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
OGRCT: Target: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=merc, 13
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=merc) at 0x1f55a70
Pipeline at [0x1f55460]:    step at [0x1f55a70] (proj=merc) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=utm, 6
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=utm) at 0x1f52100
Pipeline at [0x1f55460]:    step at [0x1f52100] (proj=utm) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
pj_open_lib(null): call fopen(/opt/share/proj/null) - succeeded
GDAL: QuietDelete(out.tif) invoking Delete()
GDAL: GDALOpen(out.tif, this=0x1f5ded0) succeeds as GTiff.
GDAL: GDALDefaultOverviews::OverviewScan()
GDAL: GDALClose(out.tif, this=0x1f5ded0)
GDAL: GDALDriver::Create(GTiff,out.tif,1024,1024,3,Byte,0x1f52d80)
WARP: Copying metadata from first source to destination dataset
MDReaderPleiades: Not a Pleiades product
MDReaderPleiades: Not a Pleiades product
GTiff: ScanDirectories()
GTiff: Opened 5310x6160 overview.
GTiff: Opened 2655x3080 overview.
GTiff: Opened 1328x1540 overview.
GTiff: Opened 664x770 overview.
GTiff: Opened 332x385 overview.
GTiff: Opened 166x193 overview.
OGRCT: Source: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
OGRCT: Target: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=utm, 7
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=utm) at 0x1f59af0
Pipeline at [0x1f586b0]:    step at [0x1f59af0] (proj=utm) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=merc, 12
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=merc) at 0x1f5ae20
Pipeline at [0x1f586b0]:    step at [0x1f5ae20] (proj=merc) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
OGRCT: Source: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
OGRCT: Target: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=merc, 13
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=merc) at 0x1f8c3c0
Pipeline at [0x1f8bc60]:    step at [0x1f8c3c0] (proj=merc) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=utm, 6
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=utm) at 0x1f8cf00
Pipeline at [0x1f8bc60]:    step at [0x1f8cf00] (proj=utm) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
WARP: Selecting overview level 2 for m_3209542_se_15_060_20181115_20190222.tif
GDAL: GDALOverviewDataset(m_3209542_se_15_060_20181115_20190222.tif, this=0x1f56e60) creation.
OGRCT: Source: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
OGRCT: Target: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=utm, 7
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=utm) at 0x1f5a330
Pipeline at [0x1f586b0]:    step at [0x1f5a330] (proj=utm) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=merc, 12
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=merc) at 0x1f59af0
Pipeline at [0x1f586b0]:    step at [0x1f59af0] (proj=merc) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
OGRCT: Source: +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +wktext +no_defs
OGRCT: Target: +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  ellps=GRS80
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final:    
Pipeline: Building arg list for step no. 0
Pipeline: init - proj=merc, 13
    a=6378137
    b=6378137
    lat_ts=0.0
    lon_0=0.0
    x_0=0.0
    y_0=0
    k=1.0
    units=m
    nadgrids=@null
    wktext
    no_defs
    inv
pj_ellipsoid - final: a=6378137.000 f=1/  0.000, errno=0
pj_ellipsoid - final: a=6378137 b=6378137  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 0 (proj=merc) at 0x1f8bc60
Pipeline at [0x1f8dea0]:    step at [0x1f8bc60] (proj=merc) done
Pipeline: Building arg list for step no. 1
Pipeline: init - proj=utm, 6
    zone=15
    ellps=GRS80
    towgs84=0,0,0,0,0,0,0
    units=m
    no_defs
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=GRS80
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final: a=6378137 es=0.0066943800229007869446  
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:cart]
get_init: searching on in init files for [proj_def.dat:cart]
get_init_string: searching for section [cart] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
Pipeline: Step 1 (proj=utm) at 0x1f618a0
Pipeline at [0x1f8dea0]:    step at [0x1f618a0] (proj=utm) done
Pipeline: 2 steps built. Determining i/o characteristics
get_init: searching cache for key: [proj_def.dat:general]
get_init: searching cache for key: [proj_def.dat:hgridshift]
get_init: searching on in init files for [proj_def.dat:hgridshift]
get_init_string: searching for section [hgridshift] in init file [proj_def.dat]
pj_open_lib(proj_def.dat): call fopen(/opt/share/proj/proj_def.dat) - succeeded
pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
pj_ellipsoid - final:    ellps=WGS84
GDALWARP: Defining SKIP_NOSOURCE=YES
GDAL: GDAL_CACHEMAX = 99 MB
GDAL: GDALWarpKernel()::GWKNearestNoMasksOrDstDensityOnlyByte() Src=0,0,1328x1540 Dst=0,0,1024x1024
GDAL: GDALClose(out.tif, this=0x1f5ded0)
GDAL: GDALClose(m_3209542_se_15_060_20181115_20190222.tif, this=0x1f45bb0)

Operating system

centos, alpine, ubuntu, MacOS

GDAL version and provenance

Rasterio wheel and/or sources

Thanks for your time and feedback 🙏

@jratike80
Copy link
Collaborator

jratike80 commented Feb 22, 2021

It seems that you have noticed that GDAL project prefers to discuss on the mailing list but you still decided to try to discuss in the bug tracker. But the GDAL community is really there, not here.

Can you find anything usable from other Proj 6 migrations, for example https://mapserver.gis.umn.edu/id/development/rfc/ms-rfc-126.html
and
http://rgdal.r-forge.r-project.org/articles/PROJ6_GDAL3.html?

@vincentsarago
Copy link
Contributor Author

vincentsarago commented Feb 22, 2021

Hi @jratike80 as mentioned in the issue template, we can still use this place to propose feature or report bug! To me this issue feels like a real issue (coordinates transformation pipeline being recalculated over and over... if I'm right 🤷‍♂️).

I'll have a look at your links 🙏. Feel free to closes if you do feel that this is not the the right place to discuss ☝️

@sgillies
Copy link
Contributor

Let's keep this open but also ask on gdal-dev too. I think there are enough PROJ developers there to help.

@jratike80
Copy link
Collaborator

Have you already tried to use the pipeline instead of -t_srs?

+proj=pipeline +step +inv +proj=utm +zone=15 +ellps=GRS80 +step +proj=webmerc +lat_0=0 +lon_0=0 +x_0=0 +y_0=0 +ellps=WGS84

@rouault
Copy link
Member

rouault commented Feb 22, 2021

Timestamps can be got with CPL_TIMESTAMP=ON:

$ time CPL_TIMESTAMP=ON CPL_DEBUG=ON PROJ_DEBUG=3 gdalwarp -q m_3209542_se_15_060_20181115_20190222.tif out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

[Mon Feb 22 18:45:09 2021].812775: CPL: Loading configuration from /home/even/.gdal/gdalrc
[Mon Feb 22 18:45:09 2021].816880: PROJ: pj_open_lib(proj.db): call fopen(/home/even/proj/install-proj-master-no-rename/share/proj/proj.db) - succeeded
[Mon Feb 22 18:45:09 2021].851510: GDAL: GDALOpen(m_3209542_se_15_060_20181115_20190222.tif, this=0x20f1550) succeeds as GTiff.
[Mon Feb 22 18:45:09 2021].851725: GDAL: GDALOpen(out.tif, this=0x20eecf0) succeeds as GTiff.
[Mon Feb 22 18:45:09 2021].851818: GDAL: GDALClose(out.tif, this=0x20eecf0)
[Mon Feb 22 18:45:09 2021].852066: GDAL: Using GTiff driver
[Mon Feb 22 18:45:09 2021].853129: GTiff: GDAL_READDIR_LIMIT_ON_OPEN reached on .
[Mon Feb 22 18:45:09 2021].871072: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:09 2021].871096: OGR_CT: Target CRS: 'GEOGCRS["NAD83",DATUM["North American Datum 1983",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",6269]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8901]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433,ID["EPSG",9122]]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433,ID["EPSG",9122]]]]'
[Mon Feb 22 18:45:09 2021].871741: PROJ: pj_open_lib(proj.ini): call fopen(/home/even/proj/install-proj-master-no-rename/share/proj/proj.ini) - succeeded
[Mon Feb 22 18:45:09 2021].874172: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].874191: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].874335: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].874345: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:09 2021].874356: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:09 2021].874382: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:09 2021].874390: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:09 2021].874398: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:09 2021].874406: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:09 2021].874448: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].874456: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].874469: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x2315e90
[Mon Feb 22 18:45:09 2021].874476: PROJ_TRACE: pipeline: Pipeline at [0x211a040]:    step at [0x2315e90] (inv) done
[Mon Feb 22 18:45:09 2021].874481: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:09 2021].874487: PROJ_TRACE: pipeline: Pipeline: init - proj=unitconvert, 3
[Mon Feb 22 18:45:09 2021].874492: PROJ_TRACE: pipeline:     xy_in=rad
[Mon Feb 22 18:45:09 2021].874517: PROJ_TRACE: pipeline:     xy_out=deg
[Mon Feb 22 18:45:09 2021].874538: PROJ_TRACE: unitconvert: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].874545: PROJ_TRACE: unitconvert: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].874568: PROJ_TRACE: unitconvert: xy_in unit: Radian
[Mon Feb 22 18:45:09 2021].874575: PROJ_TRACE: unitconvert: xy_out unit: Degree
[Mon Feb 22 18:45:09 2021].874583: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=unitconvert) at 0x23162c0
[Mon Feb 22 18:45:09 2021].874590: PROJ_TRACE: pipeline: Pipeline at [0x211a040]:    step at [0x23162c0] (proj=unitconvert) done
[Mon Feb 22 18:45:09 2021].874596: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 2
[Mon Feb 22 18:45:09 2021].874601: PROJ_TRACE: pipeline: Pipeline: init - proj=axisswap, 2
[Mon Feb 22 18:45:09 2021].874607: PROJ_TRACE: pipeline:     order=2,1
[Mon Feb 22 18:45:09 2021].874622: PROJ_TRACE: axisswap: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].874629: PROJ_TRACE: axisswap: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].874639: PROJ_TRACE: pipeline: Pipeline: Step 2 (proj=axisswap) at 0x2316840
[Mon Feb 22 18:45:09 2021].874646: PROJ_TRACE: pipeline: Pipeline at [0x211a040]:    step at [0x2316840] (proj=axisswap) done
[Mon Feb 22 18:45:09 2021].874657: PROJ_TRACE: pipeline: Pipeline: 3 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:09 2021].874760: GDAL: Computing area of interest: -95.8161, 32.2472, -95.7465, 32.3153
[Mon Feb 22 18:45:09 2021].875428: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:09 2021].875442: OGR_CT: Target CRS: 'EPSG:3857'
[Mon Feb 22 18:45:09 2021].900136: PROJ: pj_open_lib(us_noaa_ethpgn.tif): call fopen(us_noaa_ethpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].900224: PROJ: pj_open_lib(ethpgn.gsb): call fopen(ethpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].900676: PROJ: pj_open_lib(us_noaa_mihpgn.tif): call fopen(us_noaa_mihpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].900723: PROJ: pj_open_lib(mihpgn.gsb): call fopen(mihpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].901124: PROJ: pj_open_lib(us_noaa_mnhpgn.tif): call fopen(us_noaa_mnhpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].901168: PROJ: pj_open_lib(mnhpgn.gsb): call fopen(mnhpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].901649: PROJ: pj_open_lib(us_noaa_mohpgn.tif): call fopen(us_noaa_mohpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].901709: PROJ: pj_open_lib(mohpgn.gsb): call fopen(mohpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].902116: PROJ: pj_open_lib(us_noaa_okhpgn.tif): call fopen(us_noaa_okhpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].902186: PROJ: pj_open_lib(okhpgn.gsb): call fopen(okhpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].902580: PROJ: pj_open_lib(us_noaa_WI.tif): call fopen(us_noaa_WI.tif) - failed
[Mon Feb 22 18:45:09 2021].902641: PROJ: pj_open_lib(WI): call fopen(/home/even/proj/install-proj-master-no-rename/share/proj/WI) - succeeded
[Mon Feb 22 18:45:09 2021].903000: PROJ: pj_open_lib(us_noaa_nbhpgn.tif): call fopen(us_noaa_nbhpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].903059: PROJ: pj_open_lib(nbhpgn.gsb): call fopen(nbhpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].903517: PROJ: pj_open_lib(us_noaa_ilhpgn.tif): call fopen(us_noaa_ilhpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].903591: PROJ: pj_open_lib(ilhpgn.gsb): call fopen(ilhpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].903943: PROJ: pj_open_lib(us_noaa_lahpgn.tif): call fopen(us_noaa_lahpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].904003: PROJ: pj_open_lib(lahpgn.gsb): call fopen(lahpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].904367: PROJ: pj_open_lib(us_noaa_kshpgn.tif): call fopen(us_noaa_kshpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].904427: PROJ: pj_open_lib(kshpgn.gsb): call fopen(kshpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].904839: PROJ: pj_open_lib(us_noaa_iahpgn.tif): call fopen(us_noaa_iahpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].904898: PROJ: pj_open_lib(iahpgn.gsb): call fopen(iahpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].905502: PROJ: pj_open_lib(us_noaa_mshpgn.tif): call fopen(us_noaa_mshpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].905546: PROJ: pj_open_lib(mshpgn.gsb): call fopen(mshpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].905920: PROJ: pj_open_lib(us_noaa_arhpgn.tif): call fopen(us_noaa_arhpgn.tif) - failed
[Mon Feb 22 18:45:09 2021].905980: PROJ: pj_open_lib(arhpgn.gsb): call fopen(arhpgn.gsb) - failed
[Mon Feb 22 18:45:09 2021].906346: PROJ: pj_open_lib(us_noaa_TN.tif): call fopen(us_noaa_TN.tif) - failed
[Mon Feb 22 18:45:09 2021].906418: PROJ: pj_open_lib(TN): call fopen(/home/even/proj/install-proj-master-no-rename/share/proj/TN) - succeeded
[Mon Feb 22 18:45:09 2021].907816: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].907831: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].907881: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].907891: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:09 2021].907901: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:09 2021].907911: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:09 2021].907919: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:09 2021].907928: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:09 2021].907936: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:09 2021].907957: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].907966: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].908014: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x230b890
[Mon Feb 22 18:45:09 2021].908024: PROJ_TRACE: pipeline: Pipeline at [0x24c59c0]:    step at [0x230b890] (inv) done
[Mon Feb 22 18:45:09 2021].908031: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:09 2021].908039: PROJ_TRACE: pipeline: Pipeline: init - proj=webmerc, 6
[Mon Feb 22 18:45:09 2021].908046: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:09 2021].908067: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:09 2021].908075: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:09 2021].908083: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:09 2021].908090: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:09 2021].908113: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].908122: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].908136: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=webmerc) at 0x22dc6e0
[Mon Feb 22 18:45:09 2021].908146: PROJ_TRACE: pipeline: Pipeline at [0x24c59c0]:    step at [0x22dc6e0] (proj=webmerc) done
[Mon Feb 22 18:45:09 2021].908155: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:09 2021].908843: OGR_CT: Source CRS: 'EPSG:3857'
[Mon Feb 22 18:45:09 2021].908855: OGR_CT: Target CRS: 'EPSG:26915'
[Mon Feb 22 18:45:09 2021].938941: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].938969: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].939000: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].939010: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:09 2021].939021: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:09 2021].939030: PROJ_TRACE: pipeline: Pipeline: init - inv, 7
[Mon Feb 22 18:45:09 2021].939038: PROJ_TRACE: pipeline:     proj=webmerc
[Mon Feb 22 18:45:09 2021].939046: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:09 2021].939054: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:09 2021].939061: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:09 2021].939068: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:09 2021].939076: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:09 2021].939100: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].939109: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].939124: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x24da000
[Mon Feb 22 18:45:09 2021].939134: PROJ_TRACE: pipeline: Pipeline at [0x248f880]:    step at [0x24da000] (inv) done
[Mon Feb 22 18:45:09 2021].939142: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:09 2021].939150: PROJ_TRACE: pipeline: Pipeline: init - proj=utm, 3
[Mon Feb 22 18:45:09 2021].939157: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:09 2021].939164: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:09 2021].939184: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].939192: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].939206: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=utm) at 0x24c92c0
[Mon Feb 22 18:45:09 2021].939215: PROJ_TRACE: pipeline: Pipeline at [0x248f880]:    step at [0x24c92c0] (proj=utm) done
[Mon Feb 22 18:45:09 2021].939224: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:09 2021].941646: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:09 2021].941662: OGR_CT: Target CRS: 'EPSG:3857'
[Mon Feb 22 18:45:09 2021].956567: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].956591: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].956638: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].956648: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:09 2021].956658: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:09 2021].956667: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:09 2021].956676: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:09 2021].956697: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:09 2021].956706: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:09 2021].956733: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].956742: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].956757: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x2492660
[Mon Feb 22 18:45:09 2021].956768: PROJ_TRACE: pipeline: Pipeline at [0x2492b10]:    step at [0x2492660] (inv) done
[Mon Feb 22 18:45:09 2021].956775: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:09 2021].956784: PROJ_TRACE: pipeline: Pipeline: init - proj=webmerc, 6
[Mon Feb 22 18:45:09 2021].956791: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:09 2021].956799: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:09 2021].956805: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:09 2021].956812: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:09 2021].956820: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:09 2021].956843: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].956851: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].956866: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=webmerc) at 0x249cb50
[Mon Feb 22 18:45:09 2021].956875: PROJ_TRACE: pipeline: Pipeline at [0x2492b10]:    step at [0x249cb50] (proj=webmerc) done
[Mon Feb 22 18:45:09 2021].956885: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:09 2021].957399: OGR_CT: Source CRS: 'EPSG:3857'
[Mon Feb 22 18:45:09 2021].957429: OGR_CT: Target CRS: 'EPSG:26915'
[Mon Feb 22 18:45:09 2021].977334: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].977359: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].977389: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].977399: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:09 2021].977408: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:09 2021].977417: PROJ_TRACE: pipeline: Pipeline: init - inv, 7
[Mon Feb 22 18:45:09 2021].977425: PROJ_TRACE: pipeline:     proj=webmerc
[Mon Feb 22 18:45:09 2021].977434: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:09 2021].977441: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:09 2021].977449: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:09 2021].977456: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:09 2021].977463: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:09 2021].977486: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].977495: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:09 2021].977509: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x24a41e0
[Mon Feb 22 18:45:09 2021].977519: PROJ_TRACE: pipeline: Pipeline at [0x24a7610]:    step at [0x24a41e0] (inv) done
[Mon Feb 22 18:45:09 2021].977526: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:09 2021].977534: PROJ_TRACE: pipeline: Pipeline: init - proj=utm, 3
[Mon Feb 22 18:45:09 2021].977541: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:09 2021].977548: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:09 2021].977567: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:09 2021].977575: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:09 2021].977589: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=utm) at 0x249dd20
[Mon Feb 22 18:45:09 2021].977598: PROJ_TRACE: pipeline: Pipeline at [0x24a7610]:    step at [0x249dd20] (proj=utm) done
[Mon Feb 22 18:45:09 2021].977607: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:09 2021].979786: GDAL: QuietDelete(out.tif) invoking Delete()
[Mon Feb 22 18:45:09 2021].979931: GDAL: GDALOpen(out.tif, this=0x24a53f0) succeeds as GTiff.
[Mon Feb 22 18:45:09 2021].980818: GTiff: GDAL_READDIR_LIMIT_ON_OPEN reached on .
[Mon Feb 22 18:45:09 2021].980928: GDAL: GDALDefaultOverviews::OverviewScan()
[Mon Feb 22 18:45:09 2021].981179: GDAL: GDALClose(out.tif, this=0x24a53f0)
[Mon Feb 22 18:45:09 2021].981764: GDAL: GDALDriver::Create(GTiff,out.tif,1024,1024,3,Byte,0x249f7f0)
[Mon Feb 22 18:45:09 2021].981916: WARP: Copying metadata from first source to destination dataset
[Mon Feb 22 18:45:09 2021].982141: GTiff: ScanDirectories()
[Mon Feb 22 18:45:10 2021].007780: GTiff: Opened 5310x6160 overview.
[Mon Feb 22 18:45:10 2021].033074: GTiff: Opened 2655x3080 overview.
[Mon Feb 22 18:45:10 2021].057993: GTiff: Opened 1328x1540 overview.
[Mon Feb 22 18:45:10 2021].083156: GTiff: Opened 664x770 overview.
[Mon Feb 22 18:45:10 2021].109359: GTiff: Opened 332x385 overview.
[Mon Feb 22 18:45:10 2021].135049: GTiff: Opened 166x193 overview.
[Mon Feb 22 18:45:10 2021].136180: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:10 2021].136195: OGR_CT: Target CRS: 'EPSG:3857'
[Mon Feb 22 18:45:10 2021].151207: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].151233: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].151264: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].151273: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:10 2021].151283: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:10 2021].151292: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:10 2021].151300: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:10 2021].151309: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:10 2021].151316: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:10 2021].151337: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].151346: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].151361: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x248f880
[Mon Feb 22 18:45:10 2021].151370: PROJ_TRACE: pipeline: Pipeline at [0x249d770]:    step at [0x248f880] (inv) done
[Mon Feb 22 18:45:10 2021].151377: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:10 2021].151385: PROJ_TRACE: pipeline: Pipeline: init - proj=webmerc, 6
[Mon Feb 22 18:45:10 2021].151392: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:10 2021].151399: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:10 2021].151407: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:10 2021].151414: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:10 2021].151421: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:10 2021].151442: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].151451: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].151464: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=webmerc) at 0x24c92c0
[Mon Feb 22 18:45:10 2021].151474: PROJ_TRACE: pipeline: Pipeline at [0x249d770]:    step at [0x24c92c0] (proj=webmerc) done
[Mon Feb 22 18:45:10 2021].151482: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:10 2021].152006: OGR_CT: Source CRS: 'EPSG:3857'
[Mon Feb 22 18:45:10 2021].152018: OGR_CT: Target CRS: 'EPSG:26915'
[Mon Feb 22 18:45:10 2021].171373: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].171396: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].171445: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].171454: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:10 2021].171465: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:10 2021].171487: PROJ_TRACE: pipeline: Pipeline: init - inv, 7
[Mon Feb 22 18:45:10 2021].171495: PROJ_TRACE: pipeline:     proj=webmerc
[Mon Feb 22 18:45:10 2021].171504: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:10 2021].171512: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:10 2021].171520: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:10 2021].171527: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:10 2021].171535: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:10 2021].171560: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].171568: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].171583: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x2497700
[Mon Feb 22 18:45:10 2021].171593: PROJ_TRACE: pipeline: Pipeline at [0x24addf0]:    step at [0x2497700] (inv) done
[Mon Feb 22 18:45:10 2021].171600: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:10 2021].171608: PROJ_TRACE: pipeline: Pipeline: init - proj=utm, 3
[Mon Feb 22 18:45:10 2021].171615: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:10 2021].171641: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:10 2021].171660: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].171668: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].171717: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=utm) at 0x24e9080
[Mon Feb 22 18:45:10 2021].171739: PROJ_TRACE: pipeline: Pipeline at [0x24addf0]:    step at [0x24e9080] (proj=utm) done
[Mon Feb 22 18:45:10 2021].171747: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:10 2021].172704: WARP: Selecting overview level 2 for m_3209542_se_15_060_20181115_20190222.tif
[Mon Feb 22 18:45:10 2021].172778: GDAL: GDALOverviewDataset(m_3209542_se_15_060_20181115_20190222.tif, this=0x2497d40) creation.
[Mon Feb 22 18:45:10 2021].172855: GDALWARP: Defining SKIP_NOSOURCE=YES
[Mon Feb 22 18:45:10 2021].173544: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:10 2021].173557: OGR_CT: Target CRS: 'GEOGCRS["NAD83",DATUM["North American Datum 1983",ELLIPSOID["GRS 1980",6378137,298.257222101,LENGTHUNIT["metre",1]],ID["EPSG",6269]],PRIMEM["Greenwich",0,ANGLEUNIT["degree",0.0174532925199433],ID["EPSG",8901]],CS[ellipsoidal,2],AXIS["geodetic latitude (Lat)",north,ORDER[1],ANGLEUNIT["degree",0.0174532925199433,ID["EPSG",9122]]],AXIS["geodetic longitude (Lon)",east,ORDER[2],ANGLEUNIT["degree",0.0174532925199433,ID["EPSG",9122]]]]'
[Mon Feb 22 18:45:10 2021].175649: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].175664: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].175708: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].175717: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:10 2021].175727: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:10 2021].175750: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:10 2021].175758: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:10 2021].175767: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:10 2021].175773: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:10 2021].175792: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].175799: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].175811: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x249cb30
[Mon Feb 22 18:45:10 2021].175819: PROJ_TRACE: pipeline: Pipeline at [0x24d7060]:    step at [0x249cb30] (inv) done
[Mon Feb 22 18:45:10 2021].175825: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:10 2021].175831: PROJ_TRACE: pipeline: Pipeline: init - proj=unitconvert, 3
[Mon Feb 22 18:45:10 2021].175837: PROJ_TRACE: pipeline:     xy_in=rad
[Mon Feb 22 18:45:10 2021].175842: PROJ_TRACE: pipeline:     xy_out=deg
[Mon Feb 22 18:45:10 2021].175858: PROJ_TRACE: unitconvert: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].175866: PROJ_TRACE: unitconvert: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].175876: PROJ_TRACE: unitconvert: xy_in unit: Radian
[Mon Feb 22 18:45:10 2021].175885: PROJ_TRACE: unitconvert: xy_out unit: Degree
[Mon Feb 22 18:45:10 2021].175896: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=unitconvert) at 0x2463f20
[Mon Feb 22 18:45:10 2021].175905: PROJ_TRACE: pipeline: Pipeline at [0x24d7060]:    step at [0x2463f20] (proj=unitconvert) done
[Mon Feb 22 18:45:10 2021].175912: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 2
[Mon Feb 22 18:45:10 2021].175921: PROJ_TRACE: pipeline: Pipeline: init - proj=axisswap, 2
[Mon Feb 22 18:45:10 2021].175929: PROJ_TRACE: pipeline:     order=2,1
[Mon Feb 22 18:45:10 2021].175947: PROJ_TRACE: axisswap: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].175956: PROJ_TRACE: axisswap: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].175971: PROJ_TRACE: pipeline: Pipeline: Step 2 (proj=axisswap) at 0x24c92c0
[Mon Feb 22 18:45:10 2021].175980: PROJ_TRACE: pipeline: Pipeline at [0x24d7060]:    step at [0x24c92c0] (proj=axisswap) done
[Mon Feb 22 18:45:10 2021].175989: PROJ_TRACE: pipeline: Pipeline: 3 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:10 2021].176058: GDAL: Computing area of interest: -95.8161, 32.2472, -95.7465, 32.3153
[Mon Feb 22 18:45:10 2021].176673: OGR_CT: Source CRS: 'EPSG:26915'
[Mon Feb 22 18:45:10 2021].176686: OGR_CT: Target CRS: 'EPSG:3857'
[Mon Feb 22 18:45:10 2021].191899: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].191925: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].191954: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].191964: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:10 2021].191974: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:10 2021].191982: PROJ_TRACE: pipeline: Pipeline: init - inv, 4
[Mon Feb 22 18:45:10 2021].191990: PROJ_TRACE: pipeline:     proj=utm
[Mon Feb 22 18:45:10 2021].191999: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:10 2021].192007: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:10 2021].192027: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].192035: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].192050: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x22dc790
[Mon Feb 22 18:45:10 2021].192059: PROJ_TRACE: pipeline: Pipeline at [0x249cb30]:    step at [0x22dc790] (inv) done
[Mon Feb 22 18:45:10 2021].192066: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:10 2021].192074: PROJ_TRACE: pipeline: Pipeline: init - proj=webmerc, 6
[Mon Feb 22 18:45:10 2021].192081: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:10 2021].192088: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:10 2021].192095: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:10 2021].192103: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:10 2021].192110: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:10 2021].192131: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].192139: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].192152: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=webmerc) at 0x24919b0
[Mon Feb 22 18:45:10 2021].192161: PROJ_TRACE: pipeline: Pipeline at [0x249cb30]:    step at [0x24919b0] (proj=webmerc) done
[Mon Feb 22 18:45:10 2021].192169: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:10 2021].192775: OGR_CT: Source CRS: 'EPSG:3857'
[Mon Feb 22 18:45:10 2021].192804: OGR_CT: Target CRS: 'EPSG:26915'
[Mon Feb 22 18:45:10 2021].212665: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].212690: PROJ_TRACE: pipeline: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].212761: PROJ_TRACE: pipeline: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].212771: PROJ_TRACE: pipeline: pj_ellipsoid - final:    
[Mon Feb 22 18:45:10 2021].212795: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 0
[Mon Feb 22 18:45:10 2021].212805: PROJ_TRACE: pipeline: Pipeline: init - inv, 7
[Mon Feb 22 18:45:10 2021].212813: PROJ_TRACE: pipeline:     proj=webmerc
[Mon Feb 22 18:45:10 2021].212822: PROJ_TRACE: pipeline:     lat_0=0
[Mon Feb 22 18:45:10 2021].212831: PROJ_TRACE: pipeline:     lon_0=0
[Mon Feb 22 18:45:10 2021].212839: PROJ_TRACE: pipeline:     x_0=0
[Mon Feb 22 18:45:10 2021].212846: PROJ_TRACE: pipeline:     y_0=0
[Mon Feb 22 18:45:10 2021].212854: PROJ_TRACE: pipeline:     ellps=WGS84
[Mon Feb 22 18:45:10 2021].212879: PROJ_TRACE: webmerc: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].212889: PROJ_TRACE: webmerc: pj_ellipsoid - final:    ellps=WGS84
[Mon Feb 22 18:45:10 2021].212929: PROJ_TRACE: pipeline: Pipeline: Step 0 (inv) at 0x24eac50
[Mon Feb 22 18:45:10 2021].212957: PROJ_TRACE: pipeline: Pipeline at [0x24969e0]:    step at [0x24eac50] (inv) done
[Mon Feb 22 18:45:10 2021].212964: PROJ_TRACE: pipeline: Pipeline: Building arg list for step no. 1
[Mon Feb 22 18:45:10 2021].212972: PROJ_TRACE: pipeline: Pipeline: init - proj=utm, 3
[Mon Feb 22 18:45:10 2021].212979: PROJ_TRACE: pipeline:     zone=15
[Mon Feb 22 18:45:10 2021].212987: PROJ_TRACE: pipeline:     ellps=GRS80
[Mon Feb 22 18:45:10 2021].213038: PROJ_TRACE: utm: pj_ellipsoid - final: a=6378137.000 f=1/298.257, errno=0
[Mon Feb 22 18:45:10 2021].213047: PROJ_TRACE: utm: pj_ellipsoid - final:    ellps=GRS80
[Mon Feb 22 18:45:10 2021].213096: PROJ_TRACE: pipeline: Pipeline: Step 1 (proj=utm) at 0x2498350
[Mon Feb 22 18:45:10 2021].213118: PROJ_TRACE: pipeline: Pipeline at [0x24969e0]:    step at [0x2498350] (proj=utm) done
[Mon Feb 22 18:45:10 2021].213126: PROJ_TRACE: pipeline: Pipeline: 2 steps built. Determining i/o characteristics
[Mon Feb 22 18:45:10 2021].214626: GDAL: GDAL_CACHEMAX = 791 MB
[Mon Feb 22 18:45:10 2021].241273: GDAL: GDALWarpKernel()::GWKNearestNoMasksOrDstDensityOnlyByte() Src=0,0,1328x1540 Dst=0,0,1024x1024
GDAL: Flushing dirty blocks: 0...10...20...30...40...50...60...70...80...90...100 - done.
[Mon Feb 22 18:45:10 2021].296571: GDAL: GDALClose(out.tif, this=0x2493530)
[Mon Feb 22 18:45:10 2021].296720: GDAL: GDALClose(m_3209542_se_15_060_20181115_20190222.tif, this=0x20f1550)

real	0m0.610s
user	0m0.560s
sys	0m0.044s

There are likely a few savings that could be potentially done by caching / re-using CRS A to CRS B transformation path computations. Should probably be done on the GDAL side (the philosophy of use of PROJ should be to minimize the number of calls to such costly operations)

rouault added a commit to rouault/gdal that referenced this issue Mar 16, 2021
Fixes a GDAL 3.2 performance regression.

Since GDAL 3.2, we expose the JPEG quality in metadata and read it at
dataset opening, and for each overview. Previously we only read it when
updating an existing dataset.
For a quality of 85, guessing it for each overview level takes
approximatively 14 ms on a Core i7-10750H @2.6 GHz, which sums up to
~ 100 ms when opening a dataset with 6 overview levels, such as in
the test case of OSGeo#3470

We fix that by precomputing the MD5Sum of the quantization tables.

Before:
```
$ time gdalwarp -q wrk/m_3209542_se_15_060_20181115_20190222.tif wrk/out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

real	0m0,282s
user	0m0,249s
sys	0m0,033s
```

After:
```
$ time gdalwarp -q wrk/m_3209542_se_15_060_20181115_20190222.tif wrk/out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

real	0m0,179s
user	0m0,143s
sys	0m0,037s
```
rouault added a commit that referenced this issue Mar 16, 2021
Fixes a GDAL 3.2 performance regression.

Since GDAL 3.2, we expose the JPEG quality in metadata and read it at
dataset opening, and for each overview. Previously we only read it when
updating an existing dataset.
For a quality of 85, guessing it for each overview level takes
approximatively 14 ms on a Core i7-10750H @2.6 GHz, which sums up to
~ 100 ms when opening a dataset with 6 overview levels, such as in
the test case of #3470

We fix that by precomputing the MD5Sum of the quantization tables.

Before:
```
$ time gdalwarp -q wrk/m_3209542_se_15_060_20181115_20190222.tif wrk/out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

real	0m0,282s
user	0m0,249s
sys	0m0,033s
```

After:
```
$ time gdalwarp -q wrk/m_3209542_se_15_060_20181115_20190222.tif wrk/out.tif -t_srs EPSG:3857 -ts 1024 1024 -overwrite

real	0m0,179s
user	0m0,143s
sys	0m0,037s
```
rouault added a commit to rouault/PROJ that referenced this issue Mar 18, 2021
createFromCRSCodesWithIntermediates() runs a rather costly self-join.
Only run it if the source and target CRS are the source/target of a
coordinate operation. This helps for the performance of
proj_create_crs_to_crs() when run on projected CRS for example that are
extremely unlikely to be the source/target of an operation (except
currently the Finish ones). For the EPSG:26915 to EPSG:3857 case of
OSGeo/gdal#3470, this helps decreasing the
time of proj_create_crs_to_crs() from 18 ms to 10 ms.
rouault added a commit to rouault/gdal that referenced this issue Mar 18, 2021
use it in GDALCreateReprojectionTransformerEx()

Together with the improvement in PROJ >= 8.0.1 of PROJ OSGeo#2582,
this helps reducing the time of the gdalwarp invokation of OSGeo#3470
from 180 ms to 135 ms (compared to 80 ms with GDAL 2.4 + PROJ 5.2)
rouault added a commit to rouault/gdal that referenced this issue Mar 18, 2021
Helps decreasing the gdalwarp time of OSGeo#3470 from 135 ms to 123 ms.
rouault added a commit to rouault/gdal that referenced this issue Mar 18, 2021
Helps decreasing the gdalwarp time of OSGeo#3470 from 123 ms to 113 ms.

And with OSGeo/PROJ#2583, we go down to 105 ms.
Compared to the 80 ms of GDAL 2.4/PROJ 5.2, and the ~ 300ms of
GDAL 3.2/PROJ 8
rouault added a commit to OSGeo/PROJ that referenced this issue Mar 18, 2021
createFromCRSCodesWithIntermediates() runs a rather costly self-join.
Only run it if the source and target CRS are the source/target of a
coordinate operation. This helps for the performance of
proj_create_crs_to_crs() when run on projected CRS for example that are
extremely unlikely to be the source/target of an operation (except
currently the Finish ones). For the EPSG:26915 to EPSG:3857 case of
OSGeo/gdal#3470, this helps decreasing the
time of proj_create_crs_to_crs() from 18 ms to 10 ms.
@rouault rouault added this to the 3.3.0 milestone Mar 22, 2021
@rouault rouault closed this as completed Mar 22, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants