Hi Pietro, dear developers, i think we should stay with ctypes as this is already supported by GRASS. Also the benchmark results are looking very promising regarding efficiency to me.
Best regards Soeren 2012/6/19 Pietro <[email protected]>: > Dear all, > > I'm going on with the GSoC, and I'm using ctypes to call the Grass's > function, but I found this comment: > > http://stackoverflow.com/a/5686873 > > (from a cython developer) that it has instilled in me a doubt that > using Cython (http://cython.org/) could make pygrass more > flexible/extensible. From my point of view I prefer ctypes, because it > is already inside grass and because I need to get something running > quickly, but maybe could be more useful for Grass to implement less > code but with a tool that give more flexibility in the future... > > What do you think? > Can I go on with my GSoC project using ctypes? should i switch to Cython? > > > > I did some benchmarks to test the speed of pygrass, and it is not too > bad. Below I reported the execution time of add a number to a Raster > map, using r.mapcal module, the RasterRow class (using Rast_get_row, > and Rast_put_row functions), and using the Segmentation library > (segment_get_row and segment_put_row): > > r.mapcalc +2; 21.487251 sec/pass > RasterRow +2; 11.181928 sec/pass > RasterSeg +2; 14.730741 sec/pass > > Test an if condition: > > r.mapcalc if; 14.240596 sec/pass > RasterRow if; 14.753899 sec/pass > RasterSeg if; 19.982334 sec/pass > > Test a function: > r.mapcalc sqrt; 16.495872 sec/pass > RasterRow sqrt; 18.591585 sec/pass > RasterSeg sqrt; 22.305732 sec/pass > > > You may find the code here: > > git clone https://code.google.com/p/pygrass/ > > > and you can run the benchmark code with: > > python test/benchmark.py > > > more info on the RasterRow and RasterSegment classes are available here: > > http://pygrass.readthedocs.org/en/latest/raster.html > > > > Comments are welcome! > > Best regards, > > Pietro > _______________________________________________ > grass-dev mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/grass-dev _______________________________________________ grass-dev mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/grass-dev
