[Gdal-dev] [RFC] RasterIO speedup patch

Andrey Kiselev dron at ak4719.spb.edu
Sun Mar 9 05:28:51 EST 2003

Hi, Tim,

On Wed, Feb 05, 2003 at 04:31:02PM -0600, Tim Beckmann wrote:
> We've been working to incorporate GDAL into our software.  One drawback 
> we've found so far is that the performance of gdal when it needs to do 
> data type conversions is extremely slow.  Here is a patch that I've 
> generated that seems to work to improve the performance.  It works by 
> changing the GDALRasterBand::IRasterIO to attempt to convert more than a 
> single pixel for every call to GDALCopyWords.  For the testing I've done, 
> it seems to work well.  I'm not sure if I've covered all the possible 
> combinations though.  There are still cases where it falls back to calling 
> GDALCopyWords once for each pixel.

Please, look at latest improvements in GDALRasterBand::IRasterIO()
implementation. Unfortunately I have rejected your patch because it was
wrong and results in segfaults. But with my latest changes IRasterIO()
works significally faster than before (4 times faster in many cases).
Slowest part of IRasterIO() is the case when we need perform resampling
and it stays untouched, but in all cases when resampling don't needed
IRasterIO() works much better now.


Andrey V. Kiselev
Home phone:  +7 812 5274898  ICQ# 26871517

More information about the Gdal-dev mailing list