Co za CUDA!

The singular processing is dead. Long live the multiprocessing.

I can not even imagine effectiveness of exploitation of such a power by issuing little gdalwarp command. GDAL, libLAS, are we ready to squeeze out this CUDA’ny juice?

Co za CUDA! Yes, indeed!

Building GeoTIFF with CMake

I’ve just submitted ticket to GeoTIFF Trac system with patch providing CMake build configuration for GeoTIFF library and utility programs.

#17CMake build configuration for GeoTIFF

It also includes FindGeoTIFF module for CMake users that need to determine availability of libgeotiff in their projects. Tests and improvements are welcome.

Productive Saturday Climbing

Today, Pantera and I we hit the Castle Climbing Centre early in the morning. It’s nice to have wide range of routes available when the centre is nearly empty as people are recovering after Friday buzz ;-). I am (exceptionally?) weak today. Probably, it’s because the last 2 weeks I conducted endurance oriented sessions only. First, I jumped upstairs to climb a few V1-V3 boulders on the overhang featured bouldering wall. I tried the new orange V5 boulder. It’s beautiful, but I couldn’t prevent my body swinging a bit after quite dynamic move to 4th hold. I’ve put the V5 on my short list, definitely. Next, we hit number of top-rope routes. Pantera was working on technical 5 and 5+ and I was trying to mix strength and stamina problems:

  • The Slabs: 6b (blue), 2 x 6c (pink/green)
  • Tall Walls: 5 (green), 6b+ (green/orange spots)
  • The Fang: 2 x 6b (orange/lilak spots), 2 x 6c (pink s.o.s., including loss of a few layers of my finger tips skin ;-))
  • The Stack: 6c (red), 7a (yellow, made 1/3 of the route, 3 moves only)

No rock rings, no campus. Finished bouldering a couple of V0-V3 on the Panels.

While my muscles were busy pushing enormous amount of ATP molecules through their fibres and cells, my brain was busy solving design issues of how to make C++ interface of GDAL library better. It is clear that neither dataset nor raster band can have semantic of plain value objects. Both, dataset and raster band, represent real world physical resources and they are more like reference objects. In spite of that reference semantic is dominant in the world of GDAL objects, I’d really like to make them CopyConstructible and Assignable. I know it can be achieved straight away:


std::tr1::shared_ptr<GDALDataset> ds(::GDALOpen("file.tif", GA_ReadOnly), ::GDALClose);

But, I just don’t want to make yet another Gigantic Rats Nest Of Pointers. I would be happy to keep all the ugliness out of user’s sight. I think it’s feasible. Perhaps I will even Pimpl my Ride GDAL.

I’ll probably need one or more climbing sessions to finish the design of better GDAL, so I can start slinging some code around. Next climbing on Monday in Swiss Cottage with Jo, Chiara and Pantera.

Hot Dog Weather

Hot temperatures have been invading Poland this summer, clearly. So, my father invented a cooling solution for his well-beloved dog Beno.

Beno, my father's dog and cooling machinery

Certainly, Beno understands what’s the purpose of that effort very well. He also has a very well developed spatial orientation and can easily memorise where all cool places are located around the yard and in the country side. When my father is walking Beno in the fields around the town and Beno recognizes they are near his favourite pond, he tries to pull in that direction or just runs a few hundreds meters and jumps to the water. And, he doesn’t use TomTom for that purpose ;-)