Markus Neteler wrote: > >> > How easy would it be to get rid of the (Unix-specific) client-server > >> > framework so that the various r.li.* modules are just normal modules? > >> > >> The idea is to have multi-core support which works. If that > >> could be maintained (maybe switching to openMP), then > >> the advantageous speed of r.li over r.le would be maintained. > > > > The downside is that it doesn't even compile on Windows. It also > > creates a substantial hurdle for anyone needing to modify the code. > > > > Optimisations shouldn't be at the expense of portability. If it can't > > be compiled on all three of the major target platforms (generic Unix, > > MacOSX, Windows), it shouldn't be in the main repository but in > > add-ons. > > I tend to agree. > But it is supported from gcc 4.2 onwards: > http://en.wikipedia.org/wiki/OpenMP
I wasn't referring to OpenMP, but the existing client-server mechanism. AFAICT, using OpenMP is relatively painless (other than a lot of "ignoring #pragma ..." warnings), eliminating the need to structure the code around a client/server framework. But in order to implement that, the logical first step would be to simply eliminate the client/server framework to produce a more conventional module. OpenMP pragmas could be added as needed (but, IMHO, the client/server stuff needs to go regardless of whether or not anyone gets around to implementing OpenMP support). -- Glynn Clements <[email protected]> _______________________________________________ grass-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-dev
