[GRASS-dev] Multi-threading and use of multiple processors

Colin Nielsen colin.nielsen at gmail.com
Thu Apr 9 16:37:18 EDT 2009


In my experience, the main drain in computation time is the IO not the
actual calculation of the btree. Is there any way to parallelize the
IO by passing rows to different cores or something like that ie. "for
(row = 0; row < nrows; row++) {"?

Or a more efficient segment library sounds good as well. Is there a
way to estimate how much more efficient would it be and would it make
use of multiple cores?

-Colin

On Wed, Apr 8, 2009 at 8:17 AM, Markus Neteler <neteler at osgeo.org> wrote:
> On Wed, Apr 8, 2009 at 3:44 AM, Colin Nielsen <colin.nielsen at gmail.com> wrote:
>> A colleague of mine would like to run a cost analysis (with either
>> r.walk or r.cost) on a very very large raster, ~ 1500 km x 800 km with
>> about 30 m resolution equals about 40 billion cells.
>
> [ see my other today's email about r.terracost now in Addons ]
>
> ...
>> Is there any plan to add multi-threading to these or other modules (I
>> think I remember something about r.mapcalc and another a while back)?
>
> Yann Chemin parallelized i.atcorr for me with openMP which required
> the addition of a few lines and a gcc >= 4.2 compiler. For hints, see
>
> http://grass.osgeo.org/wiki/OpenMP
>
> Perhaps this can be introduced at library level at some point. The
> behavior or a pixel oriented module such as i.atcorr is of course
> different from that of r.cost which has to consider more than a pixel
> in a cycle.
>
> Markus
>


More information about the grass-dev mailing list